Bài giảng Phân tích thiết kế hệ thống thông tin - Chương 4: Phân tích thiết kế thành phần xử lý - Phần 2: Thiết kế hệ thống

ppt 65 trang phuongnguyen 4350
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Phân tích thiết kế hệ thống thông tin - Chương 4: Phân tích thiết kế thành phần xử lý - Phần 2: Thiết kế hệ thố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_phan_tich_thiet_ke_he_thong_thong_tin_chuong_4_pha.ppt

Nội dung text: Bài giảng Phân tích thiết kế hệ thống thông tin - Chương 4: Phân tích thiết kế thành phần xử lý - Phần 2: Thiết kế hệ thống

  1. Chương 4 PHÂN TÍCH THIẾT KẾ THÀNH PHẦN XỬ LÝ __ THIẾT KẾ HỆ THỐNG
  2. Nội dung ◼ Thiết kế hệ thống ◼ Thiết kế form & report ◼ Thiết kế thử nghiệm 2
  3. Thiết kế hệ thống ◼ Phân chia hệ thống thành các hệ thống con ◼ Xây dựng mô hình thiết kế xử lý hệ thống ◼ Xây dựng cấu trúc phần mềm hệ thống 3
  4. Phân chia hệ thống thành hệ thống con ◼ Mục tiêu: Giảm thiểu sự phức tạp của một hệ thống lớn, cồng kềnh, Tạo thuận lợi cho công việc thiết kế: bởi vì phải chi tiết hoá các nội dung đặt được ở phần tích tích Dễ dàng hơn cho quá trình bảo dưỡng hệ thống sau này 4
  5. Phân chia hệ thống thành hệ thống con ◼ Tiêu chí phân chia: Tính cố kết (cohesion): Sự gằn bó về luận lý hoặc mục đích của các xử lý trong một hệ thống con. Tính cố kết càng cao thì càng tốt Tính liên kết (coupling): Sự trao đối thông tin và tác động lẫn nhau giữa các hệ thống con. Sự liên kết này càng yếu càng tốt 5
  6. Phân chia hệ thống thành hệ thống con ◼ Tiêu chí phân chia: Hệ thống con 2 Hệ thống con 1 Xử lý Xử lý Xử lý Dữ liệu Dữ liệu Xử lý Xử lý Xử lý Xử lý Hệ thống con 1 Hệ thống con 2 6
  7. Phân chia hệ thống thành hệ thống con ◼ Các yếu tố gợi ý phân chia:  Gom theo thực thể: các xử lý liên quan đến một hoặc một đối tượng thực thể ◼ Ví dụ: Khách hàng, nhà cung cấp,  Gom theo sự kiện giao tác: các xử lý đáp ứng cho một sự kiện xảy ra. ◼ Ví dụ: khách hàng đặt hàng, thanh toán, về thời gian như: cuối ngày, cuối tháng,  Gom theo vai trò thực hiện hoặc ví trí tổ chức ◼ Ví dụ: các hoạt động liên quan đến một phòng, một con người,  7
  8. Phân chia hệ thống thành hệ thống con ◼ Ví dụ: hệ thống quản lý tồn kho Phiếu xuất:2 9 Thông tin Thông tin Thống NVL xuất báo cáo hao Thủ Hệ thống 1- kê tỉ lệ Hệ thống hụt kho Lưu2 hoá hao hụt con quản lý Hệ thống đơn Hệ thống con quản lý nhập NVL Thông tin con quản lý tồn kho con(1) quản lý NVL nhập 4 Hoá đơn tồn kho NVL NVL nhập NVL Số sử dụng, Đối chiếu số tồn và cập nhật Hoá đơn NKý tồn kho số tồn, số NCC sử dụng Tồn kiểm (4) HĐ đã Hoá đơn kê thanh chưa 3 toán 7thanh BPSX (2) Xác định Xửtoán lý NVL tồn thanh Tồn kho + toán hoá tồn tối Thông Hệ thống thiểu đơn tin Yêu con quản lý xuất Hệ thống (3) vầu về xuất NVL 6 NVL NVL 5 Phiếu xuất:1 con quản lý Lập phiếu đặt mua Xác định 8 thanh toán NVL tồn Thông NVL NVL cần đặt tin Xử lý xuất dưới mức NVL tối thiểu xuất 8 NVL
  9. Phân chia hệ thống thành hệ thống con ◼ Mô tả hệ thống con: Hệ thống Hệ thống con 1 Hệ thống con 2 Hệ thống con 3 Hệ thống: ABC Dòng dữ liệu vào: Dòng dữ liệu ra: STT Hệ thống con Xử lý Kho dữ liệu 9
  10. Phân chia hệ thống thành hệ thống con ◼ Ví dụ: hệ thống quản lý tồn kho và các hệ thống con Hệ quản lý tồn kho Quản lý nhập NVL Quản lý thanh toán Quản lý tồn kho Quản lý xuất NVL Các hệ thống con 10
  11. Phân chia hệ thống thành hệ thống con Hệ thống: ABC Dòng dữ liệu vào: Dòng dữ liệu ra: STT Hệ thống con Xử lý Kho dữ liệu 1 Quản lý nhập NVL - Lưu hoá đơn -Hoá đơn - Xác định NVL tồn dưới mức tối -NKý tồn kho thiểu - Lập phiếu đặt mua NVL 2 Quản lý thanh toán - Xử lý thanh toán hoá đơn -Hoá đơn 3 Quản lý tồn kho -Xác định NVL tồn -Hoá đơn, phiếu xuất -Đối chiếu và cập nhập số tồn, số sử -NKý tồn kho dụng -Thống kê tỉ lệ hao hụt -Phiếu xuất, Nký tồn kho 4 Quản lý xuất NVL -Xử lý xuất NVL -Phiếu xuất 11
  12. Thiết kế hệ thống ◼ Phân chia hệ thống thành các hệ thống con ➢ Xây dựng mô hình thiết kế xử lý hệ thống ◼ Xây dựng cấu trúc phần mềm hệ thống 12
  13. Xây dựng mô hình thiết kế xử lý ◼ Phân chia hoạt động thủ công và tự động ◼ Xác định thừa tác viên sử dụng hệ thống ◼ Thiết kế xử lý trực tuyến – theo lô ◼ Mô hình hoá xử lý ở mức thiết kế 13
  14. Xây dựng mô hình thiết kế xử lý ◼ Phân chia giữa hoạt động thủ công - tự động Hệ thống tổ chức nghiệp HTTT vụ Môi trường HTTT tự động hoá Yêu cầu tự động hoá (phần mềm) 14
  15. Xây dựng mô hình thiết kế xử lý ◼ Phân chia giữa hoạt động thủ công - tự động Xử lý Xử lý mức quan niệm Tinh chế thành các hoạt động chi tiết Xử lý được phân chia Xử lý Xử lý Yêu cầu Xác định chức năng tự tự Thủ công Tự động động động hoá hoá 15
  16. Xây dựng mô hình thiết kế xử lý ◼ Phân chia giữa hoạt động thủ công - tự động Nguyên tắc phân chia: ◼ Các xử lý sau khi phân chia sẽ hòan tòan thủ công hoặc hòan tòan tự động ◼ Sự phân chia chấp nhận việc trùng lắp nội dung giữa tự động và thủ công Kiểm tra và Kiểm tra Lưu đơn Lưu đơn lưu đơn công nợ hàng vào hàng hàng khách hàng máy tính Tự động Tự động Thủ công 16
  17. Xây dựng mô hình thiết kế xử lý ◼ Phân chia giữa hoạt động thủ công - tự động Ví dụ: Quản lý xuất NVL Tự động Thủ công Phiếu xuất 4 Phiếu xuất Thông tin xuất NVL 3 Duyệt Lập và in phiếu xuất Quản lý BPSX phiếu xuất Phiếu xuất xuất NVL BPSX Yêu cầu NVL NVL cần xuất 1 Thông tin xuất NVL 2 Kiểm tra Yêu cầu NVL Yêu cầu NVL Phiếu xuất Kiểm tra yêu cầu tồn kho NVL NKý tồn kho Vật lý Quan niệm 17
  18. Xây dựng mô hình thiết kế xử lý ◼ Phân chia giữa hoạt động thủ công - tự động Ví dụ: Quản lý nhập NVL Tự động Thủ công Hóa đơn 1 1.1 1.2 NCC Đơn hàng Lưu hóa Tìm đơn So khớp hàng tương đơn hóa đơn ứng Hóa đơn Phiếu đặt Hóa đơn 1.3 1.4 NCC Hóa đơn Lưu hóa Lưu hóa đơn đơn gốc 5 6 5 Xác định Thông tin phiếu đặtHóa đơn gốc Phiếu đặt Lập phiếu Xác định NVL dưới 6.1 6.2 đặt NVL NVL dưới mức tối mức tối thiểu Lập và in Xác nhận thiểu phiếu đặt phiếu đặt Phiếu đặt NKý tồn kho NKý tồn kho 18 Quan niệm Vật lý
  19. Xây dựng mô hình thiết kế xử lý ◼ Phân chia giữa hoạt động thủ công - tự động Ví dụ: Quản lý tồn kho Tự động Thủ công Sử dụng 3 3 BPSX Xác định Hóa đơn Xác định Số tồn 4.1 tồn kho tồn kho Đối chiếu số NVL NVL tồn, số sử Phiếu xuất dụng Sử dụng Phiếu xuất Hóa đơn Số tồn, sử dụng Bcáo hao hụt BPSX Số tồn NKý tồn kho 9 4 4.2 Cập nhật số Lập thống Đối chiếu và 9 kê tỉ lệ hao cập nhật số tồn, số sử Lập thống hụt tồn, số sử dụng Bcáo hao hụt kê tỉ lệ hao dụng hụt NKý tồn kho 19 Quan niệm Vật lý
  20. Xây dựng mô hình thiết kế xử lý ◼ Thiết kế các vai trò User (người dùng phần mềm) Nhân viên tổ chức Hệ thống tổ chức nghiệp HTTT vụ Môi trường HTTT tự động hoá Thừa tác viên HTTT 20
  21. Xây dựng mô hình thiết kế xử lý ◼ Thiết kế các vai trò – các hệ thống eCommerce Hệ thống HTTT tự tổ chức động hóa nghiệp Môi trường vụ 21
  22. Xây dựng mô hình thiết kế xử lý ◼ Thiết kế các vai trò – người dùng hệ thống Môi trường Môi trường Môi trường 22
  23. Xây dựng mô hình thiết kế xử lý ◼ Thiết kế các vai trò – ví dụ: quản lý nhập NVL Tự động Thủ công NV nhập Thủ kho NV nhập Thủ kho 1.1 Hóa đơn 1.2 Tìm đơn So khớp hàng tương Thông tin đặt hàng tương ứng hóa đơn ứng 1.4 Đơn hàng Hóa đơn Lưu hóa Phiếu đặt đơn gốc NCC 1.3 Hóa đơn 6.2 Lưu hóa Xác nhận đơn 5 Hóa đơn gốc phiếu đặt Thông Xác định 6.3 Phiếu đặt đã tin NVL dưới Hóa đơn Gởi phiếu xác nhận phiếu mức tối thiểu đặt đặt 6.1 Lập và in phiếu đặt NKý tồn kho Phiếu đặt 23
  24. Xây dựng mô hình thiết kế xử lý ◼ Thiết kế các hình thức khác  Thiết kế phân bố vị trí tổ chức (không gian hệ thống)  Thiết kế thời gian xử lý hệ thống  Thiết kế hình thức: hình thức và phương tiện xử lý, hình thức trình bày thông tin (form, report, ), 24
  25. Xây dựng mô hình thiết kế xử lý ◼ Thiết kế xử lý theo lô – trực tuyến  Xử lý trực tuyến (on-line processing): là các xử lý thu thập và phân phối thông tin mới nhất về hệ thống thông qua một trạm làm việc trực tuyến  Xử lý trực tuyến thường được thiết kế theo các điều kiện sau: ◼ Truy cập và nắm bắt những thông tin xãy ra một cách ngẫu nhiên ◼ Định dạng và kiểu thông tin là không nhất quán (vd: truy vấn đặc biệt) ◼ Thông tin đang tiếp tục thay đổi và thông tin mới nhất là cần thiết cho xử lý hiện tại và hỗ trợ ra quyết định ◼ Người dùng ở vị trí dễ dàng truy cập tời HTTT 25
  26. Xây dựng mô hình thiết kế xử lý ◼ Thiết kế xử lý theo lô – trực tuyến  Xử lý theo lô (batch processing): được xem như việc xử lý đầu vào và đầu ra hệ thống theo một thời điểm xác định hoặc đã định trước.  Xử lý theo lô thường được thiết kế theo những điều kiện sau: ◼ Truy cập thông tin có định kỳ ◼ Định dạng và lọai thông tin là nhất quán ◼ Thông tin ổn định trong khỏang thời gian/ hoặc nhu cầu thông tin của người dùng không cần thiết phải mới nhất ◼ Người dùng không ở vị trí có thể truy cập HTTT một cách trực tuyến  Ví dụ: Tạo báo cáo doanh thu hàng tháng, cuối tháng tính lương, kiểm tra tồn kho cuối ngày, 26
  27. Xây dựng mô hình thiết kế xử lý ◼ Thiết kế xử lý theo lô – trực tuyến  Ví dụ: quản lý yêu cầu sách NKH Thủ công Tự động 1 2 Nhận và Lưu PYC PYC lưu PYC vào CSDL NKH PYC CSDL PYC PYC không hợp lệ 4 3 Thông báo Kiểm tra các PYC PYC không hợp lệ Thiết kế xử lý theo lô 27
  28. Xây dựng mô hình thiết kế xử lý ◼ Thiết kế xử lý theo lô – trực tuyến  Ví dụ: quản lý yêu cầu sách NKH Thủ công Tự động 1 3 Nhận và Kiểm tra PYC lưu PYC PYC NKH Ngân sách PYC 2 Lưu PYC PYC không hợp lệ 3 vào CSDL Thông báo các PYC không hợp CSDL PYC lệ Thiết kế xử lý trực tuyến 28
  29. Xây dựng mô hình thiết kế xử lý ◼ Mô hình hóa xử lý mức thiết kế  Mục tiêu: ◼ Biểu diễn xử lý hệ thống trong một môi trường cụ thể ◼ Làm nổi bật các yếu tố vật lý của hệ thống mới sẽ được triển khai trong mô hình như: hình thức, không gian, thời gian, tổ chức, thủ công – tự động, ◼ Biểu diễn các yêu cầu tự động hóa hệ thống  Các mô hình: có thể dùng một số mô hình sau ◼ Mô hình DFD (mức vật lý) ◼ Flowchart ◼ Mô hình xử lý tựa Merise 29
  30. Xây dựng mô hình thiết kế xử lý ◼ Mô hình hóa xử lý mức thiết kế  Flowchart (Quản lý nhập NVL) NV nhập Thủ kho Nhà CC Tìm đơn hàng Hóa đơn tương ứng Xác định NVL tồn dưới mức tối thiểu Đơn hàng Đơn hàng HĐ gốc NVL tồn NKý tồn dưới mức So khớp tối thiểu đơn Lưu hóa đơn hàng Hóa đơn (đã KT) Xác định Hóa đơn phiếu đặt Đơn hàng (đã Lập và in phiếu Đơn hàng đặt xác nhận) Gởi Đơn hàng phiếu đặt 30
  31. Xây dựng mô hình thiết kế xử lý ◼ Mô hình hóa xử lý mức thiết kế  Mô hình xử lý tựa Merise Ký hiệu Tên gọi Biến cố. Mỗi biến cố có đặc tính là nó thuộc biến cố ngoài môi trường hay biến cố trong hệ thống, có đặc tính là biến cố vào hay biến cố ra. Đối với biến cố vào được phân ra làm hai dạng: loại biến cố phát động và biến cố điều kiện Tập các biến cố Tập biến cố gồm hai loại: tập biến cố vào và tập biến cố ra Điều kiện phát động biến cố Qui tắc quản lý (QTQL) 31
  32. Xây dựng mô hình thiết kế xử lý ◼ Mô hình hóa xử lý mức thiết kế  Mô hình xử lý tựa Merise Ký hiệu Tên gọi Qui tắc quản lý có điều kiện ra ĐK1 ĐK2 Dữ liệu. Gồm có hai loại: dữ liệu vào và dữ liệu ra cho của qui tắc xử lý Phương tiện biểu diễn dữ liệu trên giấy 32
  33. Xây dựng mô hình thiết kế xử lý ◼ Mô hình hóa xử lý mức thiết kế  Mô hình xử lý tựa Merise Đối tượng Vị trí 1 Vị trí 2 Vị trí n Đối X môi tượng Y trường ngoài môi trường 33
  34. Xây dựng mô hình thiết kế xử lý ◼ Mô hình hóa xử lý mức thiết kế  Mô hình xử lý tựa Merise ◼ Bảng mô tả chức năng STT Nguồn Thủ tục Bản chất Vị trí(4) Thời gian gốc chức (3) thực hiện NTQL (1) năng(2) (5) (1): Các thủ tục chức năng được lấy từ nguồn gốc NTQL nào (2): Là thứ tự các công việc cho qui trình xử lý (3): Bản chất công việc được thực hiện là thủ công hay tự động (4): Thủ tục chức năng đó được thực hiện ở vị trí nào. (5): Bao giờ thì thực hiện công việc đó (thực hiện ngay, cuối ngày, .) 34
  35. Xây dựng mô hình thiết kế xử lý ◼ Mô hình hóa xử lý mức thiết kế  Mô hình xử lý tựa Merise – ví dụ: Nhà CC Thủ kho NV nhập Kiểm tra đơn hàng Giao NVL Đơn hàng Hóa đơn Có Không Cuối ngày HĐ không Xác định NVL tồn HĐ hợp lệ hợp lệ dưới mức tối thiểu NKý tồn Đ S Lưu hóa đơn Không có Có NVL NVL cần cần đặt đặt Lập đặt NVL Hóa đơn Xác định phiếu đặt Đơn hàng ĐH đã lập Đơn hàng Đơn hàng 35
  36. Xây dựng mô hình thiết kế xử lý ◼ Mô hình hóa xử lý mức thiết kế  Mô hình xử lý tựa Merise – ví dụ: ◼ Bảng mô tả thủ tục chức năng STT Nguồn gốc NTQL Thủ tục chức năng Bản chất VỊ trí Thời gian thực hiện 1 Kiểm tra đơn hàng Xác định đơn hàng của Tự động NVnhập Thực hiện HĐ ngay 2 Kiểm tra đơn hàng So khớp với NVL nhập Thủ công NVNhập Thực hiện ngay 3 Lưu hóa đơn Lưu hóa đơn Tự động NVNhập Thực hiện ngay 4 Xác định NVL tồn dưới Xác định NVL tồn dưới Tự động Thủ kho Cuối ngày mức tối thiểu mức tối thiểu 5 Lập đặt mua NVL Lập đặt mua NVL Tự động NVNhập Cuối ngày 6 Lập đặt mua NVL In phiếu đặt Tự động NVNhập Cuối ngày 7 Xác định phiếu đặt Xác định phiếu đặt Thủ công Thủ kho 36
  37. Thiết kế chức năng phần mềm hệ thống ◼ Xác định các chức năng phần mềm ◼ Kiến trúc phần mềm 3 lớp (three-layers) ◼ Thiết kế biểu đồ cấu trúc phần mềm ◼ Thiết kế thuật giải 37
  38. Thiết kế chức năng phần mềm hệ thống ◼ Xác định các chức năng phần mềm  Từ các xử lý tự động hóa: các xử lý được quyết định là tự động hóa trong sơ đồ vật lý sẽ là ứng viên của chức năng phần mềm ◼ 1 xử lý → 1 chức năng phần mềm ◼ 1 xử lý → n chức năng phần mềm ◼ N xử lý → 1 chức năng phần mềm  Ví dụ: Quản lý nhập NVL Tự động Thủ công Tìm đơn hàng 1.1 1.2 Đơn hàng Tìm đơn So khớp hàng tương hóa đơn Lưu hóa đơn ứng Hóa đơn Hóa đơn 1.3 1.4 NCC Lưu hóa Lưu hóa Lập và in phiếu đơn đơn gốc 5 đặt Xác định Thông tin phiếu đặHóat đơn gốc Phiếu đặt NVL dưới 6.1 6.2 mức tối thiểu Lập và in Xác nhận Xác định NVL phiếu đặt phiếu đặt Phiếu đặt tồn dưới mức tt 38 NKý tồn kho
  39. Thiết kế chức năng phần mềm hệ thống ◼ Xác định các chức năng phần mềm  Từ các xử lý tự động hóa – ví dụ: Quản lý tồn kho Tự động Thủ công 3 Hóa đơn Xác định Số tồn 4.1 Xác định tồn tồn kho Đối chiếu số kho NVL NVL tồn, số sử dụng Sử dụng Phiếu xuất Cập nhật số Số tồn, sử dụng BPSX tồn số sử dụng NKý tồn kho 4.2 Cập nhật số 9 Lập thống kê tỉ tồn, số sử lệ hao hụt Lập thống dụng Bcáo hao hụt kê tỉ lệ hao hụt 39
  40. Thiết kế chức năng phần mềm hệ thống ◼ Xác định các chức năng phần mềm  Từ các xử lý tự động hóa – ví dụ: Quản lý xuất NVL Tự động Thủ công Phiếu xuất 4 Phiếu xuất 3 Duyệt Lập và in phiếu xuất phiếu xuất Phiếu xuất BPSX Lập và in phiếu NVL cần xuất 1 xuất 2 Kiểm tra Yêu cầu NVL Yêu cầu NVL Kiểm tra yêu cầu Kiểm tra tồn tồn kho NVL kho NKý tồn kho 40
  41. Thiết kế chức năng phần mềm hệ thống ◼ Xác định các chức năng phần mềm  Từ các xử lý tự động hóa – ví dụ: Hệ quản lý tồn kho NVL Tìm đơn hàng Xác định tồn Lập và in phiếu kho NVL xuất Lưu hóa đơn Cập nhật số Kiểm tra tồn Lập và in phiếu tồn số sử dụng kho đặt Lập thống kê tỉ Xác định NVL lệ hao hụt tồn dưới mức tt 41
  42. Thiết kế chức năng phần mềm hệ thống ◼ Xác định các chức năng phần mềm  Các chức năng quản trị danh mục số liệu ◼ Ví dụ: Nhà cung cấp Nguyên vật liệu  Các chức năng hệ thống ◼ An toàn  Quản lý người dùng ▪ Đăng nhập ▪ Đăng xuất ▪ Quản trị người dùng – nhóm người dùng ▪  Backup/ restore CSDL  Mã hóa ◼ Thông số hệ thống:  Ví dụ: các thông số thư mục, ngày hệ thống, biến hệ thống, 42
  43. Thiết kế chức năng phần mềm hệ thống ◼ Xác định các chức năng phần mềm  Các chức năng khai thác dữ liệu bổ sung ◼ Tìm kiếm ◼ Thống kê, báo cáo,  Các tiện ích ◼ Máy tính, lịch, forum ◼ Game ◼  Hướng dẫn sử dụng 43
  44. Thiết kế chức năng phần mềm hệ thống ◼ Xây dựng cấu trúc chức năng phần mềm Tìm đơn hàng HT quản trị tồn kho Nhập NVL Nhập hóa đơn Nghiệp vụ Lập & in phiếu đặt NVL NVL tồn dưới mức tối thiểu Lập và in phiếu Xuất NVL xuất Xác định tồn Quản lý tồn kho NVL Cập nhật số tồn, số sử dụng Danh mục Nguyên vật liệu Nhà cung cấp Đăng nhập Hệ thống Đăng xuất Quản trị người dùng 44
  45. Thiết kế chức năng phần mềm hệ thống ◼ Xây dựng cấu trúc chức năng phần mềm HT quản trị tồn kho Đăng nhập Hệ thống Đăng xuất Quản trị người dùng Backup Restore Báo cáo – Báo cáo tỉ lệ thống kê hao hụt NVL Báo cáo nhập NVL Báo cáo xuất NVL Hướng dẫn sử dụng 45
  46. Thiết kế chức năng phần mềm hệ thống ◼ Giới thiệu về kiến trúc phần mềm  Kiến trúc client-server CSDL Workstation Client Server ◼ Client: giao diện và chương trình xử lý được viết trực tiếp trong giao diện ◼ Server: quản trị cơ sở dữ liệu  Hạn chế: Cơ sở dữ liệu phụ thuộc rất lớn vào giao diện→ khó cải tiến, bảo trì và tái sử dụng 46
  47. Thiết kế chức năng phần mềm hệ thống ◼ Giới thiệu về kiến trúc phần mềm  Kiến trúc client-server: một số mô hình client-server CSDL CSDL message Xử lý Xử lý message Giao diện Giao diện 47
  48. Thiết kế chức năng phần mềm hệ thống ◼ Giới thiệu về kiến trúc phần mềm Trả lời tương tác người dùng:chuyển  Kiến trúc 3 tầng (threedịch-layers): những hành động của người dùng tới mộtThực tình hiện huống các xử giao lý phù tác hợp xử lý liên quan Hiểnđến thịnghiệp các đốivụ màtượng không tác quannghiệp tâm: trình đến bày một hình ảnh tốt nhất các đối tượng User interface layer hiển thị chúng nhưUser thế interface nào? Và CSDL tácđược nghiệp lấy tớiở đâu? người dùnglayer trong một giao diện Business layer Business layer Chuyển dịch yêu cầu: chuyển dịch tất cả Data layer các yêu cầu liên quanData đến layer dữ liệu từ tầng tác nghiệp đến một phương thức truy cập dữ liệu thích hợp (dạngMiddleware SQL, truy xuất CSDL file, ) Chuyển dịch kết Systemquả software 48
  49. Thiết kế chức năng phần mềm hệ thống ◼ Giới thiệu về kiến trúc phần mềm  Kiến trúc 3 tầng (three- layers): ◼ Sự phân tầng tạo ra sự độc lập→ dể tiến hóa, nâng cấp, cải tíến, . Tạo ra một module trung gian sẽ làm cho các tầng độc lập lẫn nhau tốt hơn 49
  50. Thiết kế chức năng phần mềm hệ thống ◼ Phân chia thành các module  Module: là một đơn vị của hệ thống được xác định bởi chức năng của nó, tất cả các lệnh trong module đều nhằm thực hiện chức năng đó.  Module có thể là một đoạn chương trình, một thủ tục, hàm, một method,  Module có thể là một form, menu, . 50
  51. Thiết kế chức năng phần mềm hệ thống ◼ Biểu đồ cấu trúc (structured chart)  Module Module gọi Module B A C Module thi Module hành A: giá trị tham số truyền: dữ liệu, cờ hiệu, mẫu tin B: giá trị kết quả nhận Module nhúng C: Cờ hiệu 51
  52. Thiết kế chức năng phần mềm hệ thống ◼ Biểu đồ cấu trúc (structured chart) Module A B B C C Module Module Module Thứ tụ thực hiện 52
  53. Thiết kế chức năng phần mềm hệ thống ◼ Biểu diễn cấu trúc chức năng phần mềm dùng biểu đồ cấu trúc Module điều phối: gọi phối hợp các thực thi của các module khác Module Module Module Module Module Module Module thực thi: thực thi một đọan mã chương trình 53
  54. Thiết kế chức năng phần mềm hệ thống ◼ Biểu diễn cấu trúc chức năng phần mềm dùng biểu đồ cấu trúc Main UserID UserID UserID Hiển thị form Menu của user Menu hệ thống f_DangNhap Lập và in hóa Lập và in phiếu NVL tồn dưới Lập và in phiếu Cập nhật số sử Tồn kho NVL đơn đặt NVL mức tối thiểu xuất dụng Báo cáo – thống Hương dẫn sử Danh mục Hệ thống kê dụng 54
  55. Thiết kế chức năng phần mềm hệ thống ◼ Thiết kế chức năng phần mềm (theo kiến trúc 3 tầng) Lập và in hóa Giao diện đơn HoaDon Kqua Kqua Hiển thị Kqua Nhập HĐơn Thông báo In HĐơn f_HoaDon HoaDon HoaDon Nghiệp vụ Lưu HĐơn XóaHĐ Kqua Kqua Kqua Mẫu tin HoaDon Mẫu tin CTHĐ HoaDon Xóa_HĐ và Truy cập CSDL Them_HĐ Them_CTHĐ CTHĐ CSDL T_Hóa đơn T_CTHĐ 55
  56. Thiết kế chức năng phần mềm hệ thống ◼ Thiết kế chức năng phần mềm (theo kiến trúc 3 tầng) Giao diện In HĐơn Dliệu hóa đơn in Lọai kết xuất HoaDon Lọai kết xuất Số HĐ Chọn HĐơn Chọn kết xuất In hóa đơn Dliệu hóa đơn in Xác định DL in Nghiệp vụ HĐ Dliệu hóa đơn in Số HĐ Truy cập CSDL Đọc_Dliệu_HĐ CSDL 56
  57. Thiết kế chức năng phần mềm hệ thống ◼ Thiết kế chức năng phần mềm (theo kiến trúc 3 tầng) Giao diện NVL tồn dưới Tồn kho NVL mức tối thiểu DL tồn kho NVL tồn dưới Ngày mức tới thiểu Ngày DL tồn Ngày Hiển thị NVL tồn Chọn ngày kho Hiển thị tồn kho dưới mức t thiểu Ngày NVL tồn dưới mức tới thiểu Nghiệp vụ Tính tồn kho Xác định NVL tồn dưới mức tthiểu DL tồn Ngày DL tồn kho kho Mức tối thiểu Ngày Tồn_kho Xđịnh_mức_tối_ Truy cập CSDL thiểu CSDL 57
  58. Thiết kế chức năng phần mềm hệ thống ◼ Các mục tiêu trong thiết kế hệ thống  Hệ thống nên được tổ chức thành một cấu trúc phân cấp thành các module  Mỗi module nên điều khiển các chức năng của một số lượng hợp lý các module mức dưới  Mỗi module nên độc lập với những cái khác trên ý nghĩa là không can thiệp vào họat động những module khác, do đó, số lượng thông tin trao đổi giữa các module nên giữ ở mức tối thiểu  Mỗi module nên có một kích thước vừa phải  Mỗi module chỉ nên đảm nhận một chức năng 58
  59. Thiết kế chức năng phần mềm hệ thống ◼ Với các mục tiêu trên có các hướng dẫn tưởng ứng sau  Sự phân chia: phân chia hệ thống thành những phần nhỏ hơn  Điều khiển module: mỗi module không nên điều khiển nhiều hơn 7 module  Coupling: giảm tối đa sự phụ thuộc của các module vào module khác→ giảm lượng truyền thông giữa các module  Kích thước module: mỗi module nên giới hạn từ 50 đến 100 dòng lệnh  Cohesion: các lệnh trong một module nên gắn liền cùng một chức năng  Tái sử dụng: các module ở mức thấp nên được sử dụng bởi nhiều module ở mức trên 59
  60. Thiết kế chức năng phần mềm hệ thống ◼ Năm loại coupling  Data coupling: các module trao đổi với nhau thông qua cờ dữ liệu đơn hoặc cờ hiệu thông tin Lập gởi tiền Dữ liệu trao đổi Số tiền giữa các module Số Tkhỏan Số Tkhỏan Số dư Tình trạng Số tiền Cập nhật số dư Thêm phiếu gởi Tkhỏan  Stamp coupling: dữ liệu trao đổi giữa các module là một cấu trúc hoặc tòan bộ mẫu tin Xác định NVL tồn dưới mức t thiểu Cấu trúc Ngày Dữ liệu tồn kho Mức tồn tối thiểu Xác định mức tối Tính_tồn_kho thiểu 60
  61. Thiết kế chức năng phần mềm hệ thống ◼ Năm loại coupling  Control coupling: module này chuyển thông tin điều khiển đến module khác ◼ Thông tin điều khiển: cờ hiệu thông báo cho module nhận hành động nào nên thực hiện Kiểm tra công nợ Thông tin điều khách hàng khiển Công nợ Tên khách hàng Công nợ Ghi “công nợ không quá 30 ngày” Tính công nợ Hiển thị công nợ khách hàng  Common coupling: hai module cùng tham khảo đến một dữ liệu tòan cục  Content coupling: module có thể tham khảo đến nội dung của một module khác 61
  62. Thiết kế chức năng phần mềm hệ thống ◼ Xếp loại coupling Tên coupling Xếp hạng phụ thuộc Data coupling Rất thấp Stamp coupling Thấp Control coupling Trung bình Common coupling Cao Content coupling Rất cao 62
  63. Thiết kế chức năng phần mềm hệ thống ◼ Bảy loại cohesion  Cohesion về chức năng: các lệnh trong một module gắn liền tới một chức năng hoặc một nhiệm vụ  Cohesion tuần tự: tuần tự đầu ra của lệnh này chính là đầu vào của lệnh khác trong một module Đầu vào Lệnh 1 Lệnh 3 Đầu ra Lệnh 2 Lệnh 4 Module 63
  64. Thiết kế chức năng phần mềm hệ thống ◼ Bảy loại cohesion  Cohesion trao đổi: các lệnh trong module liên quan với nhau thông qua việc sử dụng cùng dữ liệu vào hoặc liên quan đến cùng dữ liệu ra Đầu vào Lệnh 1 Đầu ra Lệnh 2 Lệnh 3 Module 64
  65. Thiết kế chức năng phần mềm hệ thống ◼ Bảy loại cohesion  Cohesion thủ tục: các lệnh trong module liên kết với nhau thông quan dòng điều khiển  Các lệnh trong module liên quan với nhau thông qua việc thực hiện cùng thời điểm hoặc gần thời điểm với nhau  Cohesion luận lý: bao gồm tập các lệnh nhưng được xác định từ bên ngòai module→ chồng lắp các phần chức năng → khó bảo trì  Cohesion ngẫu nhiên: tất cả các lệnh không liên quan đến những cái khác 65