Bài giảng Công nghệ Phần mềm - Chương 2: Xác định và phân tích yêu cầu - Trần Anh Dũng

ppt 58 trang huongle 1990
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Công nghệ Phần mềm - Chương 2: Xác định và phân tích yêu cầu - Trần Anh Dũng", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pptbai_giang_cong_nghe_phan_mem_chuong_2_xac_dinh_va_phan_tich.ppt

Nội dung text: Bài giảng Công nghệ Phần mềm - Chương 2: Xác định và phân tích yêu cầu - Trần Anh Dũng

  1. Chương 2: Xác định và phân tích yêu cầu GVLT: Trần Anh Dũng 1
  2. Nội dung ❖ Giai đoạn khảo sát hiện trạng  Hiện trạng tổ chức  Hiện trạng nghiệp vụ  Hiện trạng Tin học (phần cứng, phần mềm, con người) ❖ Xác định và thu thập yêu cầu:  Phân loại yêu cầu: ▪ Yêu cầu chức năng ▪ Yêu cầu phi chức năng 2
  3. Nội dung ❖ Xác định và thu thập yêu cầu(tt):  Kỹ thuật thu thập yêu cầu: ▪ Phỏng vấn ▪ Bảng câu hỏi ▪ Phân tích( nghiên cứu) các tài liệu ▪ Quan sát thực tế ▪ Phân tích thiết kế nhóm (JAD - Joint Application Design) ❖ Phân tích yêu cầu (Mô hình hóa yêu cầu) 3
  4. Khảo sát hiện trạng ❖ Hiện trạng tổ chức  Đối nội: ➔ Cơ cấu tổ chức nội bộ ▪ Bản thân tổ chức là một hệ thống, có cơ cấu tổ chức ▪ Sơ đồ cơ cấu tổ chức nội bộ ➔ Cách nhìn tổng thể về 1 tổ chức  Đối ngoại: ▪ Tổ chức Môi trường của tổ chức 4
  5. Khảo sát hiện trạng ❖ Hiện trạng nghiệp vụ  Hiểu được quy trình nghiệp vụ: mục tiêu quan trọng nhất của khảo sát hiện trạng  Có bao nhiêu nghiệp vụ, bao nhiêu quy trình? ▪ Dưới góc nhìn của người làm quản lý, không phải của chuyên viên Tin học  Nghiệp vụ được thực hiện như thế nào? ▪ Các công đoạn, bộ phận liên quan  Tần suất? Thời điểm thực hiện 5
  6. Khảo sát hiện trạng ❖ Hiện trạng nghiệp vụ (tt)  Khối lượng tác vụ/quyết định?  Đánh giá nghiệp vụ hiện tại ▪ Cần có những nhận xét của những người chuyên môn trong guồng máy công tác hiện tại  Có vấn đề/khó khăn gì hiện tại hay không? Nguyên nhân? ▪ Vấn đề/khó khăn độc lập với công nghệ, chỉ liên quan đến chuyên môn nghiệp vụ thì cần giải quyết ngay 6
  7. Khảo sát hiện trạng ❖ Hiện trạng Tin học  Phần cứng: ▪ Các thiết bị hiện tại, ▪ Số lượng, ▪ Cấu hình, ▪ Vị trí (vật lý), ▪ Tình hình kết nối mạng, ▪ Loại kết nối 7
  8. Khảo sát hiện trạng ❖ Hiện trạng Tin học (tt)  Phần mềm: ▪ Hệ điều hành ▪ Hệ quản trị CSDL ▪ Các phần mềm tiện ích khác ▪  Con người: ▪ Trình độ chuyên môn Tin học 8
  9. Xác định và thu thập yêu cầu ❖ Phân loại yêu cầu (1):  Yêu cầu chức năng: Mô tả hệ thống sẽ làm gì? ▪ Lưu trữ ▪ Tra cứu ▪ Tính toán ▪ Kết xuất ▪ 9
  10. Xác định và thu thập yêu cầu ❖ Phân loại yêu cầu (2):  Yêu cầu phi chức năng: Không đề cập trực tiếp tới các chức năng cụ thể của hệ thống ▪ Yêu cầu bảo mật ▪ Mã hóa dữ liệu ▪ Sao lưu định kỳ ▪ Phục hồi khi có sự cố, ▪ 10
  11. Xác định và thu thập yêu cầu ❖ Kỹ thuật thu thập yêu cầu:  Phân tích (nghiên cứu) các tài liệu  Phỏng vấn  Bảng câu hỏi  Quan sát thực tế  Phân tích thiết kế nhóm (JAD)  11
  12. Kỹ thuật thu thập yêu cầu (1) ❖ Phân tích (nghiên cứu) tài liệu  Các tài liệu (có thể tìm hiểu những văn bản chung)  Những quy định nội bộ  Các báo cáo liên quan  Những quy định về quy trình nghiệp vụ ▪ Rất khó có đầy đủ văn bản quy định về quy trình nghiệp vụ  Phân tích luồng công việc  Mô hình hoá các luồng công việc 12
  13. Kỹ thuật thu thập yêu cầu (2) ❖ Phỏng vấn  Chuẩn bị phỏng vấn.  Thực hiện phỏng vấn.  Theo dõi sau phỏng vấn. 13
  14. Kỹ thuật phỏng vấn (1) ❖ Chuẩn bị phỏng vấn  Đọc trước các tài liệu liên quan  Xác định mục tiêu của cuộc phỏng vấn.  Chọn người phỏng vấn (chiến lược chọn mẫu)  Phỏng vấn cá nhân/nhóm  Phỏng vấn có tự do/có định hướng  Thiết kế các câu hỏi, hệ thống hoá các câu hỏi: ▪ Câu hỏi đóng ▪ Câu hỏi mở ▪ Câu hỏi chung chung 14
  15. Kỹ thuật phỏng vấn (2) ❖ Thực hiện phỏng vấn  Luôn bám sát những gì đã chuẩn bị để làm chủ cuộc phỏng vấn  Không biến cuộc phỏng vấn thành cuộc hỏi cung, phải tạo không khí thoải mái, có thái độ phù hợp (biết lắng nghe)  Biết cách ngắt và tóm tắt lại các nội dung quan trọng để kiểm nghiệm lại  Quan sát biểu hiện của người được phỏng vấn. 15
  16. Kỹ thuật phỏng vấn (3) ❖ Sau khi phỏng vấn  Lập báo cáo phỏng vấn sau khi kết thúc cuộc phỏng vấn. Thường theo mẫu: 16
  17. Kỹ thuật thu thập yêu cầu (3) ❖ Bảng câu hỏi  Chọn mẫu những người sẽ trả lời bảng câu hỏi.  Thông tin trả lời trên bảng câu hỏi cần bảo mật?  Thiết kế bảng câu hỏi. ▪ Câu hỏi trình bày rõ ràng ▪ Hình thức bảng câu hỏi phải dễ dàng để xử lý tự động  Tổng hợp và phân tích các câu trả lời  Thông báo kết quả phân tích cho những người tham gia trả lời. 17
  18. Bảng câu hỏi ❖ Phần thiết kế bảng câu hỏi rất quan trọng, cần lưu ý các nguyên tắc sau:  Bắt đầu bằng câu hỏi quan trọng.  Gom nhóm những câu hỏi có cùng chủ đề một cách logic.  Không nên trình bày quá nhiều trong một trang.  Tránh viết tắt, tránh dùng những cụm từ/ câu hỏi không rõ nghĩa.  Thường không yêu cầu người trả lời ghi họ tên. 18
  19. Kỹ thuật thu thập yêu cầu (4) ❖ Quan sát  Thường được tiến hành sau khi đã phỏng vấn hoặc dùng bảng câu hỏi  Việc quan sát trực tiếp những người thực hiện công việc đó giúp ta có thể kiểm tra lại, đồng thời nắm được những tình huống, những chi tiết đặc biệt mà người quản lý có thể không nhớ hoặc không nắm hết.  Có thể quan sát định kỳ nhiều lần, có thể thay đổi về thời điểm quan sát. Các lần quan sát phải có mục đích rõ ràng. 19
  20. Kỹ thuật thu thập yêu cầu (5) ❖ Joint Application Design - JAD  Do IBM đề nghị  Làm việc tập thể, từ 8-12 người ▪ Bao gồm chuyên viên hệ thống. ▪ Những người sử dụng tương lai sẽ tham gia nhiều nhất vào hệ thống. ▪ Những người có quyền yêu cầu và quyết định về chức năng của hệ thống 20
  21. Kỹ thuật thu thập yêu cầu ❖ Một số tiêu chí để chọn kỹ thuật phù hợp 21
  22. Mô hình hóa yêu cầu ❖ Tại sao phải mô hình hóa yêu cầu? ❖ Mô hình hóa yêu cầu:  Mô hình hóa là một trong các cách thức mô tả trực quan một vấn đề dưới dạng các sơ đồ  Mô hình hóa sử dụng hệ thống các ký hiệu tương ứng với các thành phần của vấn đề cần mô tả ❖ Mô hình hóa phần mềm (Hệ thống dựa trên phần mềm):  Mô tả trực quan các thành phần của phần mềm dưới dạng các sơ đồ 22
  23. Mô hình hóa yêu cầu ❖ Có hai mức mô hình hóa:  Mức quan niệm (giai đoạn phân tích): Mô tả phát thảo các thành phần của phần mềm.  Mức logic (giai đoạn thiết kế): Mô tả chi tiết các thành phần của phần mềm ❖ Các loại mô hình:  Mô hình chức năng: Mô tả thành phần xử lý  Mô hình dữ liệu: Mô tả thành phần dữ liệu  Mô hình đối tượng: Mô tả đồng thời dữ liệu và xử lý 23
  24. Sơ đồ luồng dữ liệu ❖ Mô hình hóa hướng chức năng với sơ đồ luồng dữ liệu – DFD (Data Flow Diagram)  Mục tiêu: Mô tả mức quan niệm (phát thảo) các thành phần của phần mềm với sự chú trọng trên thành phần xử lý 24
  25. Sơ đồ luồng dữ liệu ❖ Các ký hiệu Tác nhân/thiết bị (Người sử dụng, thiết bị phát sinh hay tiếp nhận dữ liệu) Khối xử lý Luồng dữ liệu (thông tin) Bộ nhớ phụ (Hồ sơ, Sổ sách, tập tin, csdl ) 25
  26. Sơ đồ tổng quát Ý nghĩa từng dòng dữ liệu Dữ liệu D1: . Dữ liệu xuất D2: . nhập D3: . Người dùng D4: . D5: . D1 D2 D6: . D5 Thiết bị nhập Xử lý Thiết bị xuất D6 Dữ liệu Dữ liệu đọc D3 D4 ghi Thuật toán xử lý: -Bước 1: -Bước 2: -Bước 3: - 26
  27. Ví dụ 1 ❖ Xét chức năng tính đạo hàm của một đơn thức 1. Phân tích Sơ đồ luồng dữ liệu Người dùng ❖ D1: Đơn thức cần tính đạo hàm P D1 D2 ❖ D2: Đơn thức kết quả Q Xử lý tính ❖ Thuật toán xử lý đạo hàm  Nhập và kiểm tra D1 (a≠0)  Tính và xuất D2 27
  28. Ví dụ 1 2. Thiết kế ➢ Mô tả chi tiết cách thức giao diện (0) Khởi động giá trị ban đầu Kiểm tra P hợp lệ và (1) nhập giá trị cho P Tính Q Xuất Q 28
  29. Ví dụ 1 2. Thiết kế ➢ Mô tả chi tiết kiểu dữ liệu: Sử dụng kiểu cấu trúc DON_THUC với hai thành phần:  Hệ số có kiểu số thực  Số mũ có kiểu số nguyên (không âm) ➢ Mô tả chi tiết các hàm xử lý  Hàm xử lý biến cố 1  Hàm kiểm tra hệ số, Hàm kiểm tra số mũ  Hàm nhập đơn thức  Hàm tính đạo hàm, Hàm xuất đơn thức 29
  30. Ví dụ 1 3. Lập trình ‘Khai báo kiểu cấu trúc (VB6) ‘Khai báo kiểu cấu trúc (VB.NET) Private Type DON_THUC Structure DON_THUC Dim he_so As Single Heso as Single Dim so_mu As Integer Somu as Integer End Structure End type ‘Khai báo biến Dim P as DON_THUC Dim Q as DON_THUC 30
  31. Ví dụ 1 3. Lập trình ‘Hàm xử lý biến cố tính đạo hàm trên màn hình Private sub cmdDaoham_Click() if Kiem_Tra_He_So() and Kiem_Tra_So_Mu() then Nhap() DaoHam() Xuat() End if End sub 31
  32. Ví dụ 2 ❖ Xét chức năng giải bất phương trình bậc nhất có dạng ax + b ≥ 0, với a ≠ 0 ❖ Hãy phân tích, thiết kế và lập trình 32
  33. Ví dụ 2 ❖ Sơ đồ luồng dữ liệu ❖ D1: Các hệ a, b của bất phương trình Người dùng ❖ D2: Nghiệm của bất phương trình thuộc một trong hai dạng sau: D1 D2  Dạng 1: (-∞, x0], Dạng 2: [x0, +∞) Giải bất ❖ Xử lý: phương trình  Nhập và kiểm tra D1 (a ≠ 0)  Tính D2 theo qui tắc: ▪ a>0: nghiệm thuộc dạng 2 ▪ a<0: nghiệm thuộc dạng 1 ▪ Với x0 = -b/a  Xuất D2 33
  34. Ví dụ 3 ❖ Xét chức năng giải phương trình bậc hai: ax² + bx + c = 0, với a ≠ 0 ❖ Hãy phân tích, thiết kế và lập trình 34
  35. Ví dụ 3 ❖ Sơ đồ luồng dữ liệu Người dùng ❖ D1: Các hệ a, b, c của tam thức bậc 2  P(x) = ax² + bx + c D1 D2 ❖ D2: Nghiệm của phương trình P(x) = 0 Giải phương thuộc một trong ba loại sau: Trình bậc 2  Vô nghiệm  Nghiệm kép x1 = x2  Hai nghiệm phân biệt x1 và x2 35
  36. − b − 2a Ví dụ 3 Người dùng ❖ Xử lý:  Nhập và kiểm tra D1 (a ≠ 0) D1 D2  Tính D2 theo các bước: Giải phương ▪ Δ = b² - 4ac Trình bậc 2 ▪ Nếu Δ 0 : nghiệm loại 3, với x1 = − b + x2 = 2a  Xuất D2 36
  37. Ví dụ 4 ❖ Xét phần mềm quản lý thư viện, hãy lập sơ đồ luồng dữ liệu cho yêu cầu Lập thẻ độc giả 37
  38. Ví dụ 4 Người dùng, Thủ thư D1 D6 D2 Lập thẻ D5 Máy in Thiết bị nhập độc giả D3 D4 38
  39. Ví dụ 4 ❖ Giải thích:  D1: Thông tin về thẻ độc giả: Họ tên, Loại độc giả, Ngày sinh, Địa chỉ, E-Mail, Ngày Lập Thẻ.  D2: Không có  D3: Danh sách các loại độc giả, Tuổi tối thiểu, Tuổi tối đa, Thời hạn sử dụng.  D4: D1  D5: D4  D6: Danh mục loại độc giả 39
  40. Ví dụ 4 ❖ Thuật toán:  Bước 01: Kết nối dữ liệu  Bước 02: Đọc D3 từ bộ nhớ phụ  Bước 03: Nhận D1 từ người dùng  Bước 04: Kiểm tra “Loại độc giả” có thuộc “danh sách các loại độc giả” hay không?  Bước 05: Tính tuổi độc giả.  Bước 06: Kiểm tra qui định “Tuổi tối thiểu”  Bước 07: Kiểm tra qui định “Tuổi tối đa” 40
  41. Ví dụ 4 ❖ Thuật toán:  Bước 08: Nếu không thỏa tất cả các qui định trên thì tới bước 12  Bước 09: Tính ngày hết hạn của thẻ.  Bước 10: Lưu D4 xuống bộ nhớ phụ  Bước 11: Xuất D5 ra máy in  Bước 12: Đóng kết nối cơ sở dữ liệu  Bước 13: Kết thúc. 41
  42. Sơ đồ tổng quát cho Yêu cầu lưu trữ ❖ D1: Thông tin cần lưu trữ (dựa vào biểu mẫu liên quan) Người dùng ❖ D5: Thông tin cần lưu trữ (chỉ có trong một số yêu cầu đặc biệt) D1 D2 ❖ D3:  Các danh mục để chọn lựa D5 Thiết bị nhập Xử lý LT Thiết bị xuất  Dữ liệu cần thiết cho việc kiểm tra tính D6 hợp lệ (dựa vào quy định) ❖ D2: D3 D4  Các danh mục để chọn lựa  Kết quả thành công/thất bại ❖ D4: Dữ liệu được lưu trữ (dựa vào biểu mẫu).  Ghi chú: Thông thường D4 = D1 (+ D5) (+ ID tự phát sinh) ❖ D6: Dữ liệu kết xuất (chỉ có trong một số yêu cầu đặc biệt) 42
  43. Sơ đồ tổng quát cho Yêu cầu lưu trữ ❖ Xử lý lưu trữ Người dùng  Đọc D3 để lấy các tham số, quy định và danh mục D1 D2  Hiển thị D2 (các danh mục) D5 Thiết bị nhập Xử lý LT Thiết bị xuất  Nhận thông tin D1, D5 (nếu D6 cần)  Kiểm tra các thông tin D1, D5 D3 D4 có thỏa quy định liên quan hay không (dựa vào D3 nếu cần thiết)  Nếu thỏa quy định, ghi D4, thông báo kết quả D2 (nếu cần) và xuất D6 (nếu cần thiết) 43
  44. Sơ đồ tổng quát cho Yêu cầu lưu trữ ❖ Ghi chú: Người dùng  D1 không nhất thiết chứa toàn bộ thông tin trong biểu mẫu D1 D2 liên quan D5 Thiết bị nhập Xử lý LT Thiết bị xuất  Tùy theo quy định có thể có D6 hay không có D5  D4 hoặc D6 không nhất thiết D3 D4 phải trùng với D1 hoặc D5  D2 không nhất thiết phải trùng với D3 44
  45. Sơ đồ tổng quát cho Yêu cầu tra cứu ❖ D1: Thông tin về đối tượng muốn tìm kiếm (dựa vào biểu mẫu liên quan đến đối tượng cần tìm kiếm) ❖ D5: Thông tin về đối tượng muốn tìm kiếm (chỉ Người dùng có trong một số yêu cầu đặc biệt) ❖ D3: D1 D2  Các danh mục để chọn lựa D5  Dữ liệu về đối tượng khi tìm thấy (dựa vào Thiết bị nhập Xử lý TC Thiết bị xuất biểu mẫu liên quan đến đối tượng cần tìm D6 kiếm) ❖ D2: D3 D4  Các danh mục để chọn lựa  Dữ liệu về đối tượng khi tìm thấy (dựa vào biểu mẫu liên quan đến đối tượng cần tìm kiếm) ❖ D6: Dữ liệu kết xuất (thông thường là cần thiết) ❖ D4: Dữ liệu cần lưu trữ lại  Thông thường không cần thiết  Cần thiết khi nào??? 45
  46. Sơ đồ tổng quát cho Yêu cầu tra cứu ❖ Xử lý tra cứu  Đọc để lấy các danh mục (D3) Người dùng  Hiển thị D2 (các danh mục) D1 D2  Nhận thông tin về tiêu chí tìm D5 Thiết bị nhập Xử lý TC Thiết bị xuất kiếm D1, D5 (nếu cần) D6  Tìm kiếm theo các tiêu chí D1, D3 D4 D5, nhận được danh sách các đối tượng tìm được (D3)  Hiển thị thông tin kết quả (D2) và kết xuất D6 (nếu cần) 46
  47. Sơ đồ tổng quát cho Yêu cầu tra cứu ❖ Ghi chú:  Có rất nhiều mức độ khác nhau từ rất đơn giản đến rất phức tạp để xác định Người dùng D1 D1 D2  D1 chứa nhiều thông tin thì việc tìm kiếm sẽ dễ dàng cho người dùng và ngược lại D5 Thiết bị nhập Xử lý TC Thiết bị xuất sẽ khó khăn cho phần thiết kế và cài đặt D6 chức năng này  D3 thông thường là danh sách các đối D3 D4 tượng tìm thấy cùng với thông tin liên quan.  D3 cũng có rất nhiều mức độ khác nhau để xác định các thông tin của đối tượng tìm thấy  D2 và D6 thường trùng với D3 (nhưng không nhất thiết) 47
  48. Sơ đồ tổng quát cho Yêu cầu tính toán ❖ D1: Thông tin về đối tượng cần thực hiện việc xử lý tính toán (dựa vào các biểu mẫu liên quan) ❖ D5: Thông tin về đối tượng cần thực hiện việc xử lý tính toán (chỉ có trong một số yêu cầu đặc Người dùng biệt) D1 D2 ❖ D3:  Dữ liệu cần thiết cho việc xử lý tính toán D5 Thiết bị nhập Xử lý TT Thiết bị xuất (dựa vào biểu mẫu và quy định liên quan) D6  Các tham số tính toán ❖ D4: Kết quả của xử lý tính toán D3 D4 ❖ D2: Kết quả của xử lý tính toán (thường gồm cả D3 và D4) ❖ D6: Dữ liệu kết xuất (thường gồm cả D3 và D4) 48
  49. Sơ đồ tổng quát cho Yêu cầu tính toán ❖ Xử lý tính toán  Nhận thông tin D1, D5 (nếu cần) Người dùng  Đọc D3 để lấy các dữ liệu cần D1 D2 thiết cho việc tính toán (kể cả các tham số) D5 Thiết bị nhập Xử lý TT Thiết bị xuất  Sử dụng D1, D3, D5 và quy D6 định liên quan để tính kết quả D4 D3 D4  Ghi kết quả D4  Hiển thị thông tin kết quả D2 và kết xuất D6 49
  50. Sơ đồ tổng quát cho Yêu cầu tính toán ❖ Ghi chú:  D1 thường có chứa yếu tố thời gian Người dùng thực hiện xử lý tính toán  Có nhiều mức độ khác nhau xác D1 D2 định D1 trong xử lý tính toán (để D5 tăng tính tiện dụng) Thiết bị nhập Xử lý TT Thiết bị xuất D6  D1 có thể rỗng (tính toán cho mọi đối tượng trong tất cả cột mốc thời D3 D4 gian liên quan)  D4 có thể có hay không có => Khi nào cần D4?  Thông thường D2 và D6 bao gồm D3 và D4 50
  51. Sơ đồ tổng quát cho Yêu cầu báo biểu ❖ D1: Thông tin về báo biểu muốn thực hiện (dựa vào biểu mẫu liên quan) ❖ D5: Thông tin về báo biểu muốn thực Người dùng hiện (chỉ có trong một số yêu cầu đặc biệt) D1 D2 ❖ D3: Dữ liệu cần thiết cho việc thực hiện D5 báo biểu (dựa vào biểu mẫu và quy Thiết bị nhập Xử lý BB Thiết bị xuất D6 định liên quan) ❖ D4: Thông tin có trong báo biểu liên D3 D4 quan (cần thiết phải lưu lại) nhưng chưa được xử lý và ghi nhận lại (yêu cầu xử lý tính toán) ❖ D2: Thông tin về báo biểu được lập (biểu mẫu liên quan) ❖ D6: Dữ liệu kết xuất (thường giống D2) 51
  52. Sơ đồ tổng quát cho Yêu cầu báo biểu ❖ Xử lý báo biểu  Nhận thông tin D1, D5 (nếu Người dùng cần) D1 D2  Đọc D3 để lấy các dữ liệu D5 cần thiết cho việc lập báo Thiết bị nhập Xử lý BB Thiết bị xuất D6 biểu  Nếu có D4 thì tính toán theo D3 D4 quy định và Ghi kết quả D4  Hiển thị thông tin báo biểu D2 và kết xuất D6 52
  53. Sơ đồ tổng quát cho Yêu cầu báo biểu ❖ Ghi chú:  D1 thường có chứa yếu tố thời gian của báo biểu Người dùng  Có nhiều mức độ khác D1 D2 nhau xác định D1 trong xử D5 Thiết bị nhập Xử lý BB Thiết bị xuất lý tính toán (để tăng tính D6 tiện dụng) D3 D4  D4 có thể có hay không có => Khi nào cần D4?  Thông thường D2 và D6 bao gồm D3 và D4 53
  54. Bài tập 1. Xét phần mềm quản lý học sinh với nghiệp vụ tiếp nhận hồ sơ học sinh Hãy lập sơ đồ luồng dữ liệu 54
  55. Bài tập 2. Xét phần mềm quản lý bán hàng với nghiệp vụ lập phiếu thu tiền của khách hàng Hãy lập sơ đồ luồng dữ liệu 55
  56. Bài tập 3. Xét phần mềm quản lý các đại lý với nghiệp vụ tiếp nhận hồ sơ đại lý Hãy lập sơ đồ luồng dữ liệu 56
  57. Bài tập 4. Xét phần mềm quản lý giải vô địch bóng đá quốc gia Hãy lập sơ đồ luồng dữ liệu 57