3.2.1. Phân rã có thứ bậc
Mô hình phân rã có thứ bậc nhằm phân chia các chức năng cha thành các chức năng con nhỏ hơn. Điều này đảm bảo rằng việc thực hiện các công việc ở mức dưới được phân rã không ảnh hưởng đến việc thực hiện công việc ở mức trên. Cách phân rã các chức năng con phụ thuộc vào tính chất và quy mô của dự án. Tuy nhiên, theo kinh nghiệm, chức năng con thấp nhất nên được mô tả trong không quá nửa trang, và chỉ nên có một nhiệm vụ hoặc một nhóm nhiệm vụ nhỏ mà từng cá nhân có thể thực hiện.
Ví dụ: Sơ đồ phân rã chức năng tuyển dụng nhân viên của một công ty
Ảnh 3 – 7. Sơ đồ phân rã chức năng
Cách sắp xếp
Trong hệ thống lớn, không nên có quá 6 mức, trong hệ thống nhỏ không nên có quá 3 mức. Các công việc trên cùng một mức nên được sắp xếp theo hàng ngang để đảm bảo sự cân đối. Các chức năng con của cùng một chức năng cha nên có kích thước, độ phức tạp và tầm quan trọng gần như nhau.
3.2.2. Xác định chức năng của hệ thống
Xác định chức năng nghiệp vụ của hệ thống nhằm xác định các lĩnh vực, các chức năng mà hệ thống cần đạt được và tăng cường cách tiếp cận logic với các chức năng của hệ thống. Một cách để mô tả các chức nghiệp vụ là Sơ đồ phân rã chức năng (BFD).
a. Xác định các chức năng chi tiết
Nhận người vào làm
Đăng thông báo tuyển người
Nhận và xem xét hồ sơ
Tiến hành phỏng vấn hoặc thi
Bỏ các trường hợp không thỏa mãn
Giao việc cho người làm mới
Tuyển nhân viên
Mục đích: tuyển người vào làm việc.
Trách nhiệm: Phòng tổ chức và phòng điều hành nhân sự. Trong đó, chức năng “Đăng thông báo tuyển người” là một chức năng ở mức thấp nhất vì công việc này chỉ do 1 người làm, họ thực hiện việc in thông báo tuyển dụng và gửi cho nơi quảng cáo.
o Bước 1: Trong bảng khảo sát chi tiết hệ thống hiện tại, trong phần qui trình xử lý, gạch chân tất cả các động từ kèm theo ngữ cảnh của công việc của hệ thống.
o Bước 2: Trong danh sách các chức năng được chọn ở bước 1, tìm và loại bỏ các chức năng trùng lặp.
o Bước 3: Trong danh sách các chức năng được chọn ở bước 2, nhóm lại các chức năng đơn giản do một người thực hiện.
o Bước 4: Trong danh sách các chức năng được chọn ở bước 3, loại bỏ các chức năng không có ý nghĩa với hệ thống.
o Bước 5: Chỉnh sửa lại tên các chức năng được chọn ở bước 4 cho phù hợp.
b. Phương pháp
o Sử dụng phương pháp từ trên xuống để tìm kiếm các chức năng chi tiết.
o Sử dụng phương pháp từ dưới lên để nhóm các chức năng chi tiết thành các chức năng cao hơn.
o Tiến hành cho đến khi đạt được chức năng của toàn bộ hệ thống. Cụ thể, thực hiện các công việc sau:
c. Ví dụ: Bài toán quản lý hệ thống Cung ứng vật tư:
o Sau khi thực hiện 5 bước trên, ta thu được các chức năng sau:
1. Lưu trữ bảng dự trù
2. Chọn nhà cung cấp
3. Lập đơn hàng
4. Cập nhật kết quả thực hiện đơn hàng
5. Cập nhật thông tin đặt hàng cho bảng dự trù
6. Ghi nhận hàng về
7. Lập danh sách nhận hàng trong tuần
8. Lập danh sách đặt hàng trong tuần
9. Lập danh sách địa chỉ phát hàng
10. Lập phiếu phát hàng
11. Tiếp nhận hóa đơn
12. Kiểm tra chi tiết hóa đơn
o Gom nhóm các chức năng chi tiết thành các chức năng lớn của hệ thống:
Để gom nhóm chính xác, cần chú ý đến cơ cấu tổ chức của công ty có 3 bộ phận: Đặt hàng, Nhận và phát hàng, Đối chiếu và kiểm tra. Như vậy, các chức năng ở mức chi tiết của hệ thống gom thành 3 nhóm chức năng như trên. Đưa từng chức năng chi tiết đã xác định ở bước trước vào nhóm tương ứng theo cơ cấu của công ty.
Cụ thể như sau:
(1): Lưu trữ bảng dự trù (2): Chọn nhà cung cấp (3): Lập đơn hàng
(4): Cập nhật kết quả thực hiện đơn hàng (5): Cập nhật thông tin đặt hàng cho bảng dự trù (8): Lập danh sách đặt hàng trong tuần
Đặt hàng H Ệ T H Ố N G C U N G Ứ N G V Ậ T T Ư:
(9): Lập danh sách địa chỉ phát hàng (11): Tiếp nhận hóa đơn
(12): Kiểm tra chi tiết hóa đơn
Đối chiếu và kiểm tra
(6): Ghi nhận hàng về
(7): Lập danh sách nhận hàng trong tuần (10): Lập phiếu phát hàng
Nhận và phát hàng
Hệ thống cung ứng vật tế
Đặt hàng Đối chiếu và kiểm tra Nhận và phát hàng
Lưu trữ bản dự trù Chọn nhà cung cấp Lập đơn hàng Cập nhật kết quả thực hiện đơn hàng
Cập nhật thông tin đặt hàng cho bảng dự trù Lập danh sách đặt hàng trong tuần Lập danh sách địa chỉ phát hàng Tiếp nhận hóa đơn
Kiểm tra chi tiết hóa đơn
Ghi nhận hàng về
Lập danh sách nhận hàng trong tuần
Ảnh 3 – 8.Sơ đồ phân cấp chức năng của hệ thống
BÀI 3. TẠO MỘT SƠ ĐỒ LUỒNG DỮ LIỆU 3.1. TỔNG QUAN VỀ SƠ ĐỒ LUỒNG DỮ LIỆU
3.1.1. Định nghĩa
Sơ đồ luồng dữ liệu (DFD – Data Flow Diagram) là một công cụ mô tả mối quan hệ thông tin giữa các công việc.
Ví dụ: Sơ đồ luồng dữ liệu hoạt động bán hàng
3.1.2. Các thành phần của sơ đồ
a. Tiến trình (Chức năng)
Tiến trình là một hoạt động liên quan đến việc biến đổi hoặc tác động lên thông tin như tổ chức lại thông tin, bổ sung thông tin hoặc tạo ra thông tin mới. Nếu trong một chức năng không có thông tin mới được tạo ra thì đó không phải là chức năng trong DFD. Tên gọi: Động từ + bổ ngữ. Lưu ý: Tên chức năng phải trùng với tên chức năng trong mô hình phân rã chức năng.
Biểu diễn: hình chữ nhật góc tròn hoặc hình tròn
Khách hàng Duyệt đơn Bán hàng Đơn đặt hàng Hàng tồn kho Hóa đơn Thanh toán Hàng + hóa đơn STT Tên tiến trình Tên tiến trình
Ví dụ.
b. Luồng dữ liệu
Luồng dữ liệu là luồng thông tin vào hoặc ra khỏi chức năng. Tên gọi: Danh từ + tính từ. Biểu diễn bằng mũi tên trên đó ghi thông tin di chuyển.
Biểu diễn:
Ví dụ.
Lưu ý: Các luồng dữ liệu chỉ phản ánh thông tin logic, không phải tài liệu vật lý. Các luồng thông tin khác nhau nên có tên gọi khác nhau. Ví dụ: Luồng dữ liệu biểu hiện việc trả tiền có tên là “thanh toán” chứ không phải “tiền” hay “sec”.
c. Kho dữ liệu
Kho dữ liệu là nơi lưu trữ thông tin cần được quản lý để một hoặc nhiều chức năng sử dụng. Dưới dạng vật lý, dữ liệu trong kho có thể là các tệp tài liệu trong văn phòng hoặc các tệp trên đĩa cứng. Tên gọi: danh từ + tính từ. Chỉ nội dung của dữ liệu trong kho.
Biểu diễn: cặp đường thẳng song song chứa thông tin cần lưu giữ.
Ví dụ.
Quan hệ giữa kho dữ liệu, chức năng và luồng dữ liệu.
Xử lý yêu cầu Nhận đơn hàng Tổ chức thi Ghi nhận đơn hàng Đơn hàng Hóa đơn hợp lệ Tên luồng dữ liệu
Tên kho dữ liệu
Hóa đơn Đơn hàng
Cập nhật Ra
Chú ý: Thông thường, tên luồng thông tin vào hoặc ra của kho trùng với tên kho, vì vậy không cần ghi tên luồng. Nhưng khi ghi hoặc lấy thông tin chỉ từ một phần của kho, thì cần đặt tên cho luồng.
Không có trường hợp
d. Tác nhân ngoài
Tác nhân ngoài là một người hoặc một nhóm người không thuộc hệ thống nhưng có liên kết trực tiếp với hệ thống. Sự hiện diện của các yếu tố này trên sơ đồ chỉ ra giới hạn của hệ thống, định rõ mối quan hệ của hệ thống với thế giới bên ngoài. Tên gọi: Danh từ.
Biểu diễn bằng hình chữ nhật
Ví dụ.
Không có các trường hợp sau.
Ghi nhận đơn hàng Đơn hàng
Hóa đơn hợp lệ
Khách hàng Nhà cung cấp
e. Tác nhân trong
Tác nhân trong là một chức năng hoặc một hệ thống con của hệ thống được xem xét, nhưng được trình bày ở một trang khác trong mô hình. Mọi sơ đồ luồng dữ liệu có thể bao gồm nhiều trang, thông tin truyền giữa các quá trình trên các trang khác nhau được chỉ ra bằng ký hiệu này. Tên gọi: Động từ + bổ ngữ.
Biểu diễn:
3.2. KỸ THUẬT PHÂN MỨC
Kỹ thuật phân mức, còn được gọi là “Phân tích từ trên xuống”, tiến hành phân tích chức năng của hệ thống bằng cách chia nhỏ từ mô tả tổng quan thành các mô tả chi tiết thông qua các mức khác nhau. Quá trình chuyển từ một mức sang mức tiếp theo thực chất là việc phân rã mỗi chức năng ở mức cao thành một số các chức năng con ở mức thấp hơn. Đây là quá trình triển khai theo một cây phân cấp.
Các mức được số thứ tự, mức cao nhất (mức khung cảnh) được đánh số 0, sau đó là mức đỉnh 1, các mức dưới đỉnh 2, 3,… Tương ứng với các mức trong sơ đồ phân rã chức năng. 1 2 1.1 1.2 1.3 2.1 2.2 1.3.1 1.3.2 1.3.3 Mức 0 Mức 1 Mức 2 Kế toán Kế toán
3.3. TẠO MỘT SƠ ĐỒ LUỒNG DỮ LIỆU3.3.1. Khái quát
Trong thực tế, việc tạo một mô hình DFD cho hệ thống thực dưới dạng vật lý không có lợi:
o Mất nhiều thời gian và tốn nhiều nguồn tài nguyên phát triển dự án một cách không cần thiết. Việc này thực chất là việc sao chép công việc của kỹ thuật viên điều tra và sao chép các hoạt động đang được thực hiện hiện tại.
o Khi tạo ra mô hình, cần tạo ra các simbolic để đại diện cho nó, xử lý nó như mô hình logic, kết quả là hệ thống mới chỉ đơn giản là việc tin học hóa hệ thống cũ và có rất nhiều lỗi. Điều mà ta thực tế muốn là mô hình DFD logic.
Mô hình logic loại bỏ các ràng buộc, các yếu tố vật lý, và chỉ quan tâm đến các chức năng cần cho hệ thống và các thông tin cần để thực hiện các chức năng đó.
Các yếu tố vật lý cần được loại bỏ:
a. Các yếu tố vật lý xuất hiện một cách rõ ràng trong ngôn ngữ hoặc hình vẽ của biểu đồ, chẳng hạn như:
– Các phương tiện, phương thức được sử dụng trong các chức năng như tự động, thủ công, bàn phím, màn hình, bàn phím,…