Thống kê, báo cáo

Một phần của tài liệu Bài giảng công nghệ phần mềm (Trang 50 - 53)

d. Độ phức tạp: Độ phức tạp của các thuật toán dùng để thực hiện thành phần đó nh− thế nào?

1.3. Thống kê, báo cáo

2. Hình chữ nhật: Biểu diễn kho dữ liệu, dữ liệu đ−ợc nói rõ qua tên (nhãn - label) của hình đó.

3. Các hình tròn hay hình bầu dục: Biểu diễn tác nhân (giao tác) tác động với hệ

thống, cung cấp thông tin vào hoặc thu nhận thông tin ra.

Kho dữ liệu Ví dụ: Danh sách khách hàng

Tên tác nhân Ví dụ: Khách hàng

4. Mũi tên: Chỉ h−ớng dòng dữ liệu.

5. Các khuyên tròn: Dùng để nối các dòng dữ liệu.

6. Các lời chú thích đính kèm với các ký pháp trên: Giải thích cho ký pháp đó.

Một số tài liệu khác thì lại dùng bộ ký pháp sau:

Tác nhân D1

Kho dữ liệu S1 Chức năng

Mô tả chức năng

Luồng dữ liệu Nhãn (tên gọi tắt)

Ví dụ sau đây minh hoạ một sơ đồ luồng dữ liệu của chức năng “Bán hàng” trong hệ thống “Kinh doanh bán hàng”.

Mô tả hoạt động trong thực tế ta thấy: Khi một khách hàng b−ớc vào cửa hàng, thì họ có thể muốn mua hàng hoặc chỉ xem hàng hoá (tuy nhiên việc xem và lựa chọn hàng hoá là tất yếu phải có). Sau khi đã lựa chọn xong hàng, khách hàng sẽ tiến hành

thoả thuận thanh toán với nhân viên bán hàng (trả tiền sau, thanh toán trực tiếp bằng

tiền mặt, chuyển khoản, …). Tiếp theo, nhân viên bán hàng lập hoá đơn và giao hàng cho khách hàng, cập nhật thông tin về hàng hoá.

Phân tích chi tiết hơn, ta thấy rằng: Hệ thống mà chúng ta xây dựng có thể hỗ trợ đ−ợc việc “xem hàng hoá” bằng cách cung cấp các thông tin về hàng hóa nh−: Tên hàng hoá, đơn giá bán, nơi sản xuất, … điều này có đ−ợc bằng cách l−u thông tin về hàng hoá trong kho dữ liệu “Hàng hoá”. Thông tin về các mặt hàng đ−ợc kiết xuất bằng cách "đọc" (read) từ kho dữ liệu ra.

Với chức năng “thoả thuận thanh toán” thì phần lớn là do con ng−ời thực hiện. Hệ thống chỉ có thể hỗ trợ ở mức độ sau: Đối với khách hàng quen, thì thông tin về khách hàng đã đ−ợc l−u trong kho dữ liệu “khách hàng” với các thông tin: họ tên khách hàng,

địa chỉ, điện thoại, số tài khoản, … và có thể đ−a ra lời nhắc nhở về ng−ời khách này: nếu trả tiền sau thì tài khoản mà ng−ời khách này có đủ khả năng thanh toán không. Còn với khách hàng mới thì chỉ có thể cập nhật thông tin về khách hàng vào trong kho dữ liệu “khách hàng”.

Với chức năng “lập hoá đơn” thì hệ thống hoàn toàn có thể hỗ trợ việc in ra một hoá đơn và cập nhật thông tin về số l−ợng hàng hoá trong kho do đã bán đi một l−ờng hàng hoá theo sự lựa chọn của khách hàng.

Với chức năng “Giao hàng cho khách” thì hầu nh− hệ thống thông tin không hỗ trợ gì nhiều. Chủ yếu vẫn do con ng−ời thực hiện.

Sơ đồ luồng dữ liệu có thể vẽ theo dạng sau:

S1 Khách hàng

Chú thích về luồng dữ liệu:

Đi từ S1 đến S2: Thông tin về hàng hoá: tên hàng, số l−ợng…

Đi từ S2 đến S3: Thông tin về khách hàng và hàng hoá: tên khách hàng, địa chỉ,

tài khoản, tên hàng, số l−ợng, đơn giá bán…

Đi từ S3 đến S4: Thông tin về khách hàng và hàng hoá: tên khách hàng, địa chỉ,

tài khoản, tên hàng, số l−ợng, đơn giá bán…

Đi từ D1 đến S1: Thông tin về hàng hoá: tên hàng, số l−ợng, đơn giá bán, nơi sản xuất…

Đi từ D1 đến D3: Thông tin về hàng hoá: tên hàng, số l−ợng bán, đơn giá bán

Đi từ D2 đến S2: Thông tin về khách hàng: tên khách hàng, địa chỉ, tài khoản...

Đi từ D2 đến S3: Thông tin về khách hàng: tên khách hàng, địa chỉ, tài khoản…

Xem và lựa chọn hàng hoá

S2

Thoả thuận thanh toán Nhân viên S3 Lập hoá đơn S4 Giao hàng cho khách D1 Hàng hoá D2 Khách hàng D3 Hoá đơn

Đi từ S3 đến D3: Thông tin về khách hàng và hàng hoá: tên khách hàng, địa chỉ,

tài khoản, tên hàng, số l−ợng, đơn giá bán…

Đi từ S3 đến D1: Thông tin về hàng hoá: tên hàng, số l−ợng còn lại …

Nhận xét: Với sơ đồ luồng dữ liệu, ta có thể thấy đ−ợc công việc tuần tự đ−ợc thực hiện; luồng dữ liệu luân chuyển giữa các chức năng và các kho dữ liệu; thông tin chi tiết về các tr−ờng dữ liệu mà ta cần l−u trữ; các trạng thái cập nhật dữ liệu: Tạo mới (creat), đọc (read), cập nhật (update), ... Từ đó mà ta có thể tiến hành các b−ớc tiếp theo là thiết kế dữ liệu và thiết kế module ch−ơng trình.

Tạo ra Mô hình luồng dữ liệu (Data Follow Diagram - DFD)

Biểu đồ luồng dữ liệu làm cho ng−ời kĩ s− phần mềm phát triển đ−ợc các mô hình về miền thông tin và miền chức năng cùng lúc. Khi DFD đ−ợc làm mịn thành những mức chi tiết lớn hơn, thì ng−ời phân tích thực hiện việc phân tách chức năng không t−ờng minh về hệ thống, do đó hoàn thành nguyên tắc phân tích vận hành tứh t− cho chức năng. Đồng thời, việc làm mịn DFD còn gây ra việc làm mịn t−ơng ứng cho dữ liệu khi nó chuyển qua các tiến trình cụ thể hoá ứng dụng.

Vài h−ớng dẫn đơn giản có thể giúp đ−ợc rất nhiều trong khi dẫn ra biểu đồ luồng dữ liệu: (1) biểu đồ luồng dữ liệu mức 0 nên mô tả cho phần mềm/ hệ thống nh− một bong bóng; (2) các cái vào và ra chủ yếu nên đ−ợc ghi chép cẩn thận; (3) việc làm mịn nên bắt đầu bằng việc cô lập các tiến trình, các sự vật dữ liệu và kho ứng cử viên đ−ợc biểu diễn ở mức tiếp; (4) tất cả các mũi tên và bong bóng nên đ−ợc đánh nhãn bằng các tên có nghĩa; (5) tính liên tục của luồng thông tin phải đ−ợc duy trì từ mức nọ sang mức kia, và (6) một lúc nên làm mịn cho một bong bóng. Có một khuynh h−ớng tự nhiên là ahy làm rối rắm biểu đồ luồng dữ liệu. Điều này xuất hiện khi ng−ời phân tích cố gắng bầy tỏ quá nhiều chi tiết quá sớm hay biểu diễn các khía cạnh thủ tục của phần mềm thay vì luồng thông tin.

Một phần của tài liệu Bài giảng công nghệ phần mềm (Trang 50 - 53)

Tải bản đầy đủ (PDF)

(91 trang)