Kinh Doanh - Tiếp Thị - Báo cáo khoa học, luận văn tiến sĩ, luận văn thạc sĩ, nghiên cứu - Điện - Điện tử - Viễn thông Trang 43 Giáo trình: Phân tích thiết kế hệ thống Giảng viên: Lê Đắc Nhường G Chương 5 Mô hình hóa chức năng hệ thống 5.1. Mô hình hóa hệ thống 5.1.1. Các bước mô hình hóa hệ thống Trong chương 3, chúng ta đã biết về các hoạt động phân tích hệ thống, những hoạt động đó là nhằm mục đích vẽ các mô hình hệ thống. Các mô hình hệ thống đóng vai trò quan trọ ng trong phát triển hệ thống. Dù là người sử dụng hay người phân tích hệ thống thì bạn đều phả i giải quyết những vấn đề phi cấu trúc. Và một cách để cấu trúc vấn đề là vẽ các mô hình. Mô hình là một biểu diễn hình tượng của thực tế. Các mô hình có thể được xây dự ng cho các hệ thống hiện có để giúp chúng ta hiểu kỹ hơn về những hệ thống đó. Hoặc cũng có thể xây dựng mô hình cho các hệ thống được đề xuất nhằm tài liệu hóa các yêu cầu nghiệp vụ hoặc thiết kế kỹ thuật. Mô hình hóa chức năng (Process Modeling) với biểu đồ luồng dữ liệu ( Data Flow Diagram - DFD) cho biết hệ thống làm gì? Mô hình hóa chức năng là kỹ thuật dùng để tổ chức và tài liệu hóa cấu trúc và luồng dữ liệu xuyên qua các quá trình của một hệ thố ng vàhoặc các chức năng được thực hiện bởi các quá trình hệ thống. Mô hình hóa dữ liệu (Data Modeling) với biểu đồ quan hệ thực thể (Entity Relationship Diagram - ERD) cho biết hệ thống có những dữ liệu nào? Mô hình hóa dữ liệu là kỹ thuật dùng để tổ chức và mô hình hóa dữ liệu của một hệ thống nhằm xác định các yêu cầu nghiệ p vụ cho một cơ sở dữ liệu. Mô hình hóa dữ liệu còn được gọi là mô hình hóa cơ sở dữ liệu. Mô hình hóa đối tượng (Object Modeling) với ngôn ngữ mô hình hợp nhất ( Unified Modeling Language - UML) cho biết cái gì và tại sao? (lôgíc của hệ thống) 5.1.2. Mục đích của mô hình hóa hệ thống Để hiểu rõ hơn về hệ thống: các cơ hội để đơn giản hóa và tối ưu hóa các qui trình được thực hiện bên trong hệ thống (Tái cấu trúc quy trình) Để liên kết các hành vi và cấu trúc của hệ thống (các yêu cầu nghiệp vụ về : thông tindữ liệu và chức năngquy trình) Để trực quan hóa và điều khiển kiến trúc hệ thống (thiết kế) Để kiểm soát những rủi ro trong quá trình phát triển một cách dễ dàng và hệ thống 5.1.3. Các thao tác mô hình hóa chức năng Lập kế hoạch chiến lược hệ thống: Mô hình quá trình nghiệp vụ của tổ chức mô tả các chức năng nghiệp vụ quan trọng của tổ chức. Tái cấu trúc quy trình nghiệp vụ Mô hình chức năng “As is” làm đơn giản việc phân tích các điểm yếu của hệ thố ng hiện tại. Trang 44 Giáo trình: Phân tích thiết kế hệ thống Giảng viên: Lê Đắc Nhường G Mô hình chức năng “To be” làm đơn giản việc cải thiện hệ thống cũ bằng cách đưa ra các tính năng mới trong hệ thống mới được đề xuất. Phân tích hệ thống Mô hình hóa hệ thống hiện có bao gồm những thiếu sót của nó (DFD lôgíc) Mô hình hóa các yêu cầu lôgíc (các quá trình và luồng dữ liệu cần có dù hệ thống được xây dựng thế nào – DFD lôgíc) của hệ thống được đề xuất. Mô hình hóa các giải pháp kỹ thuật đề cử (DFD vật lý) Mô hình hóa giải pháp được chọn (DFD vật lý) 5.1.4. Khái niệm hệ thống Một hệ thống tồn tại bằng việc lấy đầu vào từ môi trường, biến đổi (xử lý) đầ u vào này và tạo ra một đầu ra. Một hệ thống có thể được phân rã thành nhiều hệ thống con. Một hệ thống con có đầu vào và đầu ra của riêng nó. Đầu ra của một hệ thống con có thể trở thành đầ u vào của những hệ thống con khác. Hình 5-1 Hệ thống và các hệ thống con Hệ thống và quá trình: Một hệ thống là một quá trình. Nó thể hiện một chức năng nghiệp vụ. Một quá trình là công việc được thực hiện trên hoặc đáp ứng cho các điều kiệ n hoặc luồng dữ liệu vào Một quá trình (chức năng) có thể được phân rã thành các quá trình con (các chức năng con, các thao tác). 5.2. Mô hình lôgíc 5.2.1. Phân biệt mô hình lôgíc và mô hình vật lý Mô hình lôgíc cho biết hệ thống là gì và làm gì. Nó độc lập với việc cài đặt kỹ thuậ t. Nó minh họa bản chất của hệ thống. Mô hình lôgíc còn có thể được gọi là mô hình bản chấ t, mô hình khái niệmmô hình nghiệp vụ. Mô hình vật lý không chỉ thể hiện hệ thống là gì và làm gì mà còn thể hiện cách thức hệ thống được cài đặt một cách vật lý và kỹ thuật. Nó phản ánh các lựa chọn công nghệ . Mô hình vật lý còn có thể được gọi là mô hình cài đặt hay mô hình kỹ thuật. Đầu vào Đầu ra Hệ thống A B C D E Trang 45 Giáo trình: Phân tích thiết kế hệ thống Giảng viên: Lê Đắc Nhường G 5.2.2. Sự cần thiết của mô hình lôgíc Các nhà phân tích hệ thống đã nhận thấy giá trị của việc tách riêng việc nghiên cứ u nghiệp vụ với việc nghiên cứu kỹ thuật. Đó là lý do tại sao họ sử dụng các mô hình hệ thống lôgíc để minh họa các yêu cầu nghiệp vụ và các mô hình hệ thống vật lý để minh họ a các thiết kế kỹ thuật. Các hoạt động của người phân tích hệ thống tập trung chủ yế u vào các mô hình hệ thống lôgíc vì những lý do sau: Các mô hình lôgíc loại bỏ tư tưởng thiên lệch do ảnh hưởng bởi cách thức cài đặt hệ thống đã có hoặc ý kiến chủ quan của một người nào đó về cách cài đặt cho hệ thống. Do đó, chúng khuyến khích tính sáng tạo. Các mô hình lôgíc làm giảm khả năng bỏ sót các yêu cầu nghiệp vụ trong trường hợp con người bị chi phối quá nhiều vì các kết quả mang tính kỹ thuật. Nhờ việc tách biệt những gì hệ thống phải làm với cách thức hệ thống thực hiện mà chúng ta có thể phân tích tốt hơn các yêu cầu nhằm đảm bảo tính hoàn thiện, chính xác và nhấ t quán. Các mô hình lôgíc cho phép truyền đạt với người dùng cuối dưới dạng ngôn ngữ phi kỹ thuật hoặc ít kỹ thuật hơn. 5.3. Biểu đồ phân rã chức năng BFD 5.3.1. Khái niệm BFD Một trong những cách thể hiện của mô hình nghiệp vụ là biểu đồ phân rã chức năng. Nó cho ta thất được các chức năng nghiệp vụ của tổ chức được phân chia thành các chức năng nhỏ hơn theo một thứ bậc xác định. Chức năng nghiệp vụ được hiểu là tập hợp các công việ c mà tổ chức cần thực hiện trong hoạt động của nó. Khái niệm chức năng chỉ là khái niệ m logic tức là chỉ nói đến tên của công việc cần làm và mối quan hệ phân mức (mức gộp và chi tiế t) giữa chúng mà không chỉ ra công việc được làm như thế nào? Bằng cách nào? Ở đâu? Khi nào? Ai thực hiện? BFD là sơ đồ phân rã có thứ bậc các chức năng của hệ thống từ tổng thể đến chi tiết. Mỗ i chức năng có thể có một hoặc nhiều chức năng con, tất cả được thể hiện trong sơ đồ. Chức năng hay công việc được xem xét ở các mức độ từ tổng thể đến chi tiết và đượ c sắp theo thứ tự sau: Một lĩnh vực hoạt động (Area of Activities) Một hoạt động (Activity). Một nhiệm vụ (Task) Một hành động (Action): thường do một người làm Sự phân chia trên đây chỉ mang tính tương đối, tùy thuộc vào phạm vi nghiên cứu và từng trường hợp cụ thể mà phân chia chức năng thành các mức gộp và mức chi tiết khác nhau. Hai ký pháp sử dụng trong mô hình là: a) Chức năng b) Liên kết Tên chức năng Trang 46 Giáo trình: Phân tích thiết kế hệ thống Giảng viên: Lê Đắc Nhường G Hình chữ nhật có tên chức năng ở bên trong dùng để mô tả một chức năng. Các đường thẳng gấp khúc hình cây dùng để nối các chức năng ở mức trên và các chức năng ở mức dưới trực tiếp phân rã từ chức năng đó. Ý nghĩa của BFD: Giới hạn phạm vi của hệ thống cần phải phân tích. Tiếp cận hệ thống về mặt logic nhằm làm rõ các chức năng mà hệ thống thực hiện để phục vụ cho các bước phân tích tiếp theo. Phân biệt các chức năng và nhiệm vụ của từng bộ phận trong hệ thống, từ đó lọ c bỏ những chức năng trùng lặp, dư thừa. Là một cơ sở để cấu trúc hệ thống chương trình khi triển khai. Tuy nhiên, BFD không có tính động, nó chỉ cho thấy các chức năng mà không thể hiệ n trình tự xử lý của các chức năng đó cũng như là sự trao đổi thông tin giữa các chức năng. Do đó, BFD thường được sử dụng làm mô hình chức năng trong bước đầu phân tích. 5.3.2. Phương pháp xây dựng BFD 5.3.2.1. Nguyên tắc phân mức các chức năng BFD được xây dựng theo mô hình phân mức, mỗi một chức năng có thể gồm một hoặ c nhiều chức năng con thỏa mãn 2 tính chất sau: Tính thực chất: Mỗi chức năng được phân rã phải là một bộ phận thực sự tham gia thực hiện chức năng đã phân rã ra nó. Tính đầy đủ: Việc thực hiện tất cả các chức năng ở mức dưới trực tiếp phải đả m bảo thực hiện được chức năng ở mức trên đã phân rã ra nó. Quá trình phân rã được tiến hành theo từng mức đến khi nào nhận được một biểu đồ vớ i các chức năng ở mức cuối (mức lá) mà ta hoàn toàn nắm được nội dung để thực hiệ n nó (có thể thực hiện độc lập dễ dàng). 5.3.2.2 Bố trí sắp xếp sơ đồ phân rã chức năng Chú ý là với một sơ đồ, không nên có quá 6 mức, thông thường thì 3 mức là phù hợp vớ i các hệ thống trung bình. Với mỗi chức năng không nên có quá 6 chức năng con vì như vậy sẽ làm sơ đồ trở nên phức tạp và khó kiểm soát. Nếu gặp trường hợp có quá nhiều chức năng con thì có thể giả i quyết bằng cách tạo thêm mức trung gian để nhóm các chức năng con lại. Cần đảm bảo tính cân bằng của sơ đồ, nghĩa là các chức năng thuộc cùng một mứ c nên có sự tương đương nhau về kích thước và độ phức tạp. 5.3.2.3. Xác định các chức năng Ở mức cao nhất của nghiệp vụ, chức năng chính có thể là một trong các loại sau: lĩnh vực sản xuất sản phẩm, cung cấp dịch vụ (bán hàng, bảo dưỡng), quản lý tài nguyên (tài sả n, nguồn nhân lực, con người…). Khi đã xác định được loại mà nó thuộc vào thì sẽ đặt tên cho chức năng cao nhấ t này. Tiếp theo, để xác định các chức năng con thì từ chức năng chính, ta đặt nó trong chu kỳ sống Trang 47 Giáo trình: Phân tích thiết kế hệ thống Giảng viên: Lê Đắc Nhường G gồm các giai đoạn: xác định nhu cầu, mua bán; bảo hành, bảo dưỡng, thanh lý hoặc chuyển nhượng… Mỗi giai đoạn có thể có một hoặc nhiều chức năng con. Ví dụ, với ch ức năng Bán hàng thì ở giai đoạn xác định nhu cầu có thể có chức năng con là Quản lý thông tin khách hàng, ở giai đoạn mua bán thì có thể là Cập nhật đơn hàng… Người phân tích phải xác định được mức nào là thấp nhất, khi đó sẽ dừng việ c phân tích chức năng. Để nhận biết một chức năng mức thấp nhất bằng cách xét xem có phải chức năng đó chỉ có một nhiệm vụ hoặc một nhóm các nhiệm vụ nhỏ. Khi xây dựng BFD cần đảm bảo tính đơn giản, rõ ràng và chính xác của sơ đồ. Với các hệ thống lớn, có thể trình bày BFD trên nhiều trang, trang 1 là BFD mức cao nhất (mức 0), tiế p theo ứng với mỗi chức năng sẽ được phân tích ở các trang sau tới chức năng mức thấp nhấ t thì dừng. 5.3.2.4 Đặt tên chức năng Mỗi chức năng phải có một tên duy nhất, không trùng lặp với chức năng khác; tên phả i thể hiện khái quát các chức năng con của nó, phản ánh thực tế nghiệp vụ mà nó thực hiện. Tên của chức năng phải là một mệnh đề động từ gồm: Một động từ + Bổ ngữ. Ví dụ chức năng “Lập đơn hàng”, “Bảo trì kho”. Trong đó động từ thể hiện hoạt động, bổ ngữ thường liên quan đến các thực thể dữ liệu trong phạm vi nghiên cứu. Tên chức năng cầ n phản ánh được nội dung công việc thực tế mà tổ chức thực hiện và người sử dụ ng quen dùng. Tuân thủ những nguyên tắc trên sẽ giúp cho việc xây dựng các mô hình dữ liệu tiếp theo được rõ ràng. Ví dụ sau mô tả lĩnh vực hoạt động của một tổ chức: Nhiệm vụ đặt ra: Nhận đơn hàng củ a khách và tổ chức gửi hàng cho khách. Bộ phân chịu trách nhiệm: Bộ phân bán hàng và quả n lý kho (là một lĩnh vực nghiệp vụ được khảo sát trong tổ chức) Sau quá trình phân rã các chức năng ta có được một mô hình chuẩn như sau: Hình 5-2 Minh họa cấu trúc sơ đồ phân mức chức năng. 5.3.2.5 Mô tả chi tiết chức năng lá Đối với mỗi chức năng lá (mức thấp nhất) trong biểu đồ phân rã chức năng cần mô tả ...
Trang 1Giáo trình: Phân tích thiết kế hệ thống Giảng viên: Lê Đắc Nhường
G
Chương 5
Mô hình hóa chức năng hệ thống
5.1 Mô hình hóa hệ thống
5.1.1 Các bước mô hình hóa hệ thống
Trong chương 3, chúng ta đã biết về các hoạt động phân tích hệ thống, những hoạt động
đó là nhằm mục đích vẽ các mô hình hệ thống Các mô hình hệ thống đóng vai trò quan trọng trong phát triển hệ thống Dù là người sử dụng hay người phân tích hệ thống thì bạn đều phải giải quyết những vấn đề phi cấu trúc Và một cách để cấu trúc vấn đề là vẽ các mô hình
Mô hình là một biểu diễn hình tượng của thực tế Các mô hình có thể được xây dựng cho các hệ thống hiện có để giúp chúng ta hiểu kỹ hơn về những hệ thống đó Hoặc cũng có thể xây dựng mô hình cho các hệ thống được đề xuất nhằm tài liệu hóa các yêu cầu nghiệp vụ hoặc thiết kế kỹ thuật
Mô hình hóa chức năng (Process Modeling) với biểu đồ luồng dữ liệu (Data Flow
Diagram - DFD) cho biết hệ thống làm gì? Mô hình hóa chức năng là kỹ thuật dùng để tổ chức và tài liệu hóa cấu trúc và luồng dữ liệu xuyên qua các quá trình của một hệ thống và/hoặc các chức năng được thực hiện bởi các quá trình hệ thống
Mô hình hóa dữ liệu (Data Modeling) với biểu đồ quan hệ thực thể (Entity Relationship
Diagram - ERD) cho biết hệ thống có những dữ liệu nào? Mô hình hóa dữ liệu là kỹ thuật dùng để tổ chức và mô hình hóa dữ liệu của một hệ thống nhằm xác định các yêu cầu nghiệp
vụ cho một cơ sở dữ liệu Mô hình hóa dữ liệu còn được gọi là mô hình hóa cơ sở dữ liệu
Mô hình hóa đối tượng (Object Modeling) với ngôn ngữ mô hình hợp nhất (Unified
Modeling Language - UML) cho biết cái gì và tại sao? (lôgíc của hệ thống)
5.1.2 Mục đích của mô hình hóa hệ thống
Để hiểu rõ hơn về hệ thống: các cơ hội để đơn giản hóa và tối ưu hóa các qui trình được thực hiện bên trong hệ thống (Tái cấu trúc quy trình)
Để liên kết các hành vi và cấu trúc của hệ thống (các yêu cầu nghiệp vụ về: thông tin/dữ liệu và chức năng/quy trình)
Để trực quan hóa và điều khiển kiến trúc hệ thống (thiết kế)
Để kiểm soát những rủi ro trong quá trình phát triển một cách dễ dàng và hệ thống
5.1.3 Các thao tác mô hình hóa chức năng
Lập kế hoạch chiến lược hệ thống: Mô hình quá trình nghiệp vụ của tổ chức mô tả các
chức năng nghiệp vụ quan trọng của tổ chức
Tái cấu trúc quy trình nghiệp vụ
Mô hình chức năng “As is” làm đơn giản việc phân tích các điểm yếu của hệ thống hiện tại
Trang 2Giáo trình: Phân tích thiết kế hệ thống Giảng viên: Lê Đắc Nhường
G
Mô hình chức năng “To be” làm đơn giản việc cải thiện hệ thống cũ bằng cách đưa
ra các tính năng mới trong hệ thống mới được đề xuất
Phân tích hệ thống
Mô hình hóa hệ thống hiện có bao gồm những thiếu sót của nó (DFD lôgíc)
Mô hình hóa các yêu cầu lôgíc (các quá trình và luồng dữ liệu cần có dù hệ thống được xây dựng thế nào – DFD lôgíc) của hệ thống được đề xuất
Mô hình hóa các giải pháp kỹ thuật đề cử (DFD vật lý)
Mô hình hóa giải pháp được chọn (DFD vật lý)
5.1.4 Khái niệm hệ thống
Một hệ thống tồn tại bằng việc lấy đầu vào từ môi trường, biến đổi (xử lý) đầu vào này và tạo ra một đầu ra Một hệ thống có thể được phân rã thành nhiều hệ thống con Một hệ thống con có đầu vào và đầu ra của riêng nó Đầu ra của một hệ thống con có thể trở thành đầu vào của những hệ thống con khác
Hình 5-1 Hệ thống và các hệ thống con
Hệ thống và quá trình:
Một hệ thống là một quá trình Nó thể hiện một chức năng nghiệp vụ
Một quá trình là công việc được thực hiện trên hoặc đáp ứng cho các điều kiện hoặc luồng dữ liệu vào
Một quá trình (chức năng) có thể được phân rã thành các quá trình con (các chức năng con, các thao tác)
5.2 Mô hình lôgíc
5.2.1 Phân biệt mô hình lôgíc và mô hình vật lý
Mô hình lôgíc cho biết hệ thống là gì và làm gì Nó độc lập với việc cài đặt kỹ thuật Nó minh họa bản chất của hệ thống Mô hình lôgíc còn có thể được gọi là mô hình bản chất, mô hình khái niệmmô hình nghiệp vụ
Mô hình vật lý không chỉ thể hiện hệ thống là gì và làm gì mà còn thể hiện cách thức hệ
thống được cài đặt một cách vật lý và kỹ thuật Nó phản ánh các lựa chọn công nghệ Mô hình vật lý còn có thể được gọi là mô hình cài đặt hay mô hình kỹ thuật
Hệ thống
C
D
E
Trang 3Giáo trình: Phân tích thiết kế hệ thống Giảng viên: Lê Đắc Nhường
G 5.2.2 Sự cần thiết của mô hình lôgíc
Các nhà phân tích hệ thống đã nhận thấy giá trị của việc tách riêng việc nghiên cứu nghiệp vụ với việc nghiên cứu kỹ thuật Đó là lý do tại sao họ sử dụng các mô hình hệ thống lôgíc để minh họa các yêu cầu nghiệp vụ và các mô hình hệ thống vật lý để minh họa các thiết kế kỹ thuật Các hoạt động của người phân tích hệ thống tập trung chủ yếu vào các mô hình hệ thống lôgíc vì những lý do sau:
Các mô hình lôgíc loại bỏ tư tưởng thiên lệch do ảnh hưởng bởi cách thức cài đặt hệ thống đã có hoặc ý kiến chủ quan của một người nào đó về cách cài đặt cho hệ thống Do đó, chúng khuyến khích tính sáng tạo
Các mô hình lôgíc làm giảm khả năng bỏ sót các yêu cầu nghiệp vụ trong trường hợp con người bị chi phối quá nhiều vì các kết quả mang tính kỹ thuật Nhờ việc tách biệt những gì hệ thống phải làm với cách thức hệ thống thực hiện mà chúng ta có thể phân tích tốt hơn các yêu cầu nhằm đảm bảo tính hoàn thiện, chính xác và nhất quán Các mô hình lôgíc cho phép truyền đạt với người dùng cuối dưới dạng ngôn ngữ phi kỹ thuật hoặc ít kỹ thuật hơn
5.3 Biểu đồ phân rã chức năng BFD
5.3.1 Khái niệm BFD
Một trong những cách thể hiện của mô hình nghiệp vụ là biểu đồ phân rã chức năng Nó cho ta thất được các chức năng nghiệp vụ của tổ chức được phân chia thành các chức năng nhỏ hơn theo một thứ bậc xác định Chức năng nghiệp vụ được hiểu là tập hợp các công việc
mà tổ chức cần thực hiện trong hoạt động của nó Khái niệm chức năng chỉ là khái niệm logic tức là chỉ nói đến tên của công việc cần làm và mối quan hệ phân mức (mức gộp và chi tiết) giữa chúng mà không chỉ ra công việc được làm như thế nào? Bằng cách nào? Ở đâu? Khi nào? Ai thực hiện?
BFD là sơ đồ phân rã có thứ bậc các chức năng của hệ thống từ tổng thể đến chi tiết Mỗi chức năng có thể có một hoặc nhiều chức năng con, tất cả được thể hiện trong sơ đồ
Chức năng hay công việc được xem xét ở các mức độ từ tổng thể đến chi tiết và được sắp theo thứ tự sau:
Một lĩnh vực hoạt động (Area of Activities)
Một hoạt động (Activity) Một nhiệm vụ (Task)
Một hành động (Action): thường do một người làm
Sự phân chia trên đây chỉ mang tính tương đối, tùy thuộc vào phạm vi nghiên cứu và từng trường hợp cụ thể mà phân chia chức năng thành các mức gộp và mức chi tiết khác nhau Hai ký pháp sử dụng trong mô hình là:
Tên chức năng
Trang 4Giáo trình: Phân tích thiết kế hệ thống Giảng viên: Lê Đắc Nhường
G
Hình chữ nhật có tên chức năng ở bên trong dùng để mô tả một chức năng
Các đường thẳng gấp khúc hình cây dùng để nối các chức năng ở mức trên và các chức năng ở mức dưới trực tiếp phân rã từ chức năng đó
Ý nghĩa của BFD:
Giới hạn phạm vi của hệ thống cần phải phân tích
Tiếp cận hệ thống về mặt logic nhằm làm rõ các chức năng mà hệ thống thực hiện
để phục vụ cho các bước phân tích tiếp theo
Phân biệt các chức năng và nhiệm vụ của từng bộ phận trong hệ thống, từ đó lọc
bỏ những chức năng trùng lặp, dư thừa
Là một cơ sở để cấu trúc hệ thống chương trình khi triển khai
Tuy nhiên, BFD không có tính động, nó chỉ cho thấy các chức năng mà không thể hiện trình tự xử lý của các chức năng đó cũng như là sự trao đổi thông tin giữa các chức năng Do
đó, BFD thường được sử dụng làm mô hình chức năng trong bước đầu phân tích
5.3.2 Phương pháp xây dựng BFD
5.3.2.1 Nguyên tắc phân mức các chức năng
BFD được xây dựng theo mô hình phân mức, mỗi một chức năng có thể gồm một hoặc nhiều chức năng con thỏa mãn 2 tính chất sau:
Tính th ực chất: Mỗi chức năng được phân rã phải là một bộ phận thực sự tham
gia thực hiện chức năng đã phân rã ra nó
Tính đầy đủ: Việc thực hiện tất cả các chức năng ở mức dưới trực tiếp phải đảm
bảo thực hiện được chức năng ở mức trên đã phân rã ra nó
Quá trình phân rã được tiến hành theo từng mức đến khi nào nhận được một biểu đồ với các chức năng ở mức cuối (mức lá) mà ta hoàn toàn nắm được nội dung để thực hiện nó (có thể thực hiện độc lập dễ dàng)
5.3.2.2 Bố trí sắp xếp sơ đồ phân rã chức năng
Chú ý là với một sơ đồ, không nên có quá 6 mức, thông thường thì 3 mức là phù hợp với các hệ thống trung bình
Với mỗi chức năng không nên có quá 6 chức năng con vì như vậy sẽ làm sơ đồ trở nên phức tạp và khó kiểm soát Nếu gặp trường hợp có quá nhiều chức năng con thì có thể giải quyết bằng cách tạo thêm mức trung gian để nhóm các chức năng con lại
Cần đảm bảo tính cân bằng của sơ đồ, nghĩa là các chức năng thuộc cùng một mức nên
có sự tương đương nhau về kích thước và độ phức tạp
5.3.2.3 Xác định các chức năng
Ở mức cao nhất của nghiệp vụ, chức năng chính có thể là một trong các loại sau: lĩnh vực sản xuất sản phẩm, cung cấp dịch vụ (bán hàng, bảo dưỡng), quản lý tài nguyên (tài sản, nguồn nhân lực, con người…)
Khi đã xác định được loại mà nó thuộc vào thì sẽ đặt tên cho chức năng cao nhất này Tiếp theo, để xác định các chức năng con thì từ chức năng chính, ta đặt nó trong chu kỳ sống
Trang 5Giáo trình: Phân tích thiết kế hệ thống Giảng viên: Lê Đắc Nhường
G
gồm các giai đoạn: xác định nhu cầu, mua bán; bảo hành, bảo dưỡng, thanh lý hoặc chuyển nhượng…
Mỗi giai đoạn có thể có một hoặc nhiều chức năng con Ví dụ, với chức năng Bán hàng thì
ở giai đoạn xác định nhu cầu có thể có chức năng con là Quản lý thông tin khách hàng, ở giai đoạn mua bán thì có thể là Cập nhật đơn hàng…
Người phân tích phải xác định được mức nào là thấp nhất, khi đó sẽ dừng việc phân tích chức năng Để nhận biết một chức năng mức thấp nhất bằng cách xét xem có phải chức năng đó chỉ có một nhiệm vụ hoặc một nhóm các nhiệm vụ nhỏ
Khi xây dựng BFD cần đảm bảo tính đơn giản, rõ ràng và chính xác của sơ đồ Với các hệ thống lớn, có thể trình bày BFD trên nhiều trang, trang 1 là BFD mức cao nhất (mức 0), tiếp theo ứng với mỗi chức năng sẽ được phân tích ở các trang sau tới chức năng mức thấp nhất thì dừng
5.3.2.4 Đặt tên chức năng
Mỗi chức năng phải có một tên duy nhất, không trùng lặp với chức năng khác; tên phải thể hiện khái quát các chức năng con của nó, phản ánh thực tế nghiệp vụ mà nó thực hiện Tên của chức năng phải là một mệnh đề động từ gồm: Một động từ + Bổ ngữ Ví dụ chức năng “Lập đơn hàng”, “Bảo trì kho” Trong đó động từ thể hiện hoạt động, bổ ngữ thường liên quan đến các thực thể dữ liệu trong phạm vi nghiên cứu Tên chức năng cần phản ánh được nội dung công việc thực tế mà tổ chức thực hiện và người sử dụng quen dùng Tuân thủ những nguyên tắc trên sẽ giúp cho việc xây dựng các mô hình dữ liệu tiếp theo được rõ ràng
Ví dụ sau mô tả lĩnh vực hoạt động của một tổ chức: Nhiệm vụ đặt ra: Nhận đơn hàng của khách và tổ chức gửi hàng cho khách Bộ phân chịu trách nhiệm: Bộ phân bán hàng và quản
lý kho (là một lĩnh vực nghiệp vụ được khảo sát trong tổ chức)
Sau quá trình phân rã các chức năng ta có được một mô hình chuẩn như sau:
Hình 5-2 Minh họa cấu trúc sơ đồ phân mức chức năng
5.3.2.5 Mô tả chi tiết chức năng lá
Đối với mỗi chức năng lá (mức thấp nhất) trong biểu đồ phân rã chức năng cần mô tả trình tự và cách thức tiến hàng nó bằng lời và có thể sử dụng biểu đồ hay một hình thức nào khác Thông tin mô tả thường bao gồm các nội dung sau:
Kinh doanh bán hàng
Tiếp nhận đơn hàng Giải quyết khách hàng Xử lý đơn hàng Gom và gửi hàng
Ghi nhận đơn hàng
Kiểm tra đơn hàng
Kiểm tra khách hàng
Nhận thông tin KH Thỏa thuận mua hàng
Ký kết hợp đồng
Đối chiếu đơn – kho Thỏa thuận bán hàng Lập phiếu giao hàng
Gom hàng theo phiếu
Thỏa thuận nhận hàngiểm tra đơn hàng
Tổ chức giao hàngiểm tra khách hàng
Gốc
Lá
Trang 6Giáo trình: Phân tích thiết kế hệ thống Giảng viên: Lê Đắc Nhường
G
Tên chức năng Các sự kiện kích hoạt (Khi nào? Cái gì dẫn đến? Điều kiện gì?)
Qui trình thực hiện như thế nào?
Yêu cầu giao diện cần thể hiện ra sau (nếu có)?
Dữ liệu vào (các hồ sơ sử dụng ban đầu)
Công thức tính toán (các thuật toán) sử dụng nếu có
Dữ liệu ra: các báo cáo hay thống kê cần đưa ra
Qui tắc nghiệp vụ cần tuân thủ…
Ví dụ: mô tả chức năng lá “kiểm tra khách hàng” trong biểu đồ hình 5.2 như sau: “Người
ta mở sổ khách hàng để xem có khách hàng nào như trong đơn hàng không (tên gọi, địa chỉ…) Nếu không có, đó là khách hàng mới Ngược lại là khách hàng cũ thì cần tìm tên khác hàng trong sổ ghi nợ, và xem khách hàng đó có nợ không và nếu nợ thì nợ bao nhiêu, có quá
số nợ cho phép không và thời gian nợ có quá thời hạn trong hợp đồng không?”
5.3.3 Các dạng biểu diễn của biểu đồ phân rã chức năng
Biểu đồ phân rã chức năng nghiệp vụ có thể được biểu diễn dưới hai dang: dạng chuẩn
và dạng công ty Tùy thuộc vào phạm vi của hệ thống mà chúng ta sẽ lựa chọn cách thức biểu diễn nào?
5.3.3.1 Biểu đồ dạng chuẩn
Biểu đồ dạng chuẩn được sử dụng để mô tả các chức năng cho một miền khảo sát (hay một hệ thống nhỏ) Biểu đồ dạng chuẩn là biểu đồ hình cây Ở mức cao nhất chỉ gồm một chức năng gọi là “chức năng gốc” hay “Chức năng đỉnh” (ví dụ trong hình 5.2) Những chức
năng ở mức dưới cùng (mức thấp nhất) gọi là “Chức năng lá” Ví dụ:
Hình 5.3 Biểu đồ phân rã chức năng của hệ thống quản lý trông gửi xe
5.3.3.2 Biểu đồ dạng công ty
Biểu đồ dạng công ty được sử dụng để mô tả tổng thể toàn bộ chức năng của một tổ chức có qui mô lớn Ở dạng công ty, mô hình thường gồm ít nhất hai biểu đồ trở lên Một
“Biểu đồ gộp” mô tả toàn bộ công ty với các chức năng thuộc mức gộp (từ hai đến ba mức)
Các biểu đồ còn lại là các “Biểu đồ chi tiết” dạng chuẩn để chi tiết mỗi chức năng lá của biểu
đồ gộp Nó tương ứng cới các chức năng mà mỗi bộ phân của tổ chức được thực hiện, tức là một miền (phạm vi, module) được khảo sát và nghiên cứu
Trang 7Giáo trình: Phân tích thiết kế hệ thống Giảng viên: Lê Đắc Nhường
G
Khi bắt đầu khảo sát, ta có một chức năng nghiệp vụ bao trùm toàn bộ tổ chức (có thể là mục tiêu chiến lược) và chức năng gộp do các bộ phân của tổ chức thực hiện Khi mô tả những chức năng này ta được một biểu đồ mức gộp
Hình 5.4 là biểu đồ dạng công ty mức gộp dạng bảng Khi tổ chức có nhiều bộ phận người ta sử dụng cách biểu diễn ở dạng bảng này Trong cách biểu diễn này, mỗi chức năng được mô tả trên một dòng, và hai chức năng ở hai mức khách nhàu được sắp ở những cột khác nhau phân biệt với vị trí lề bên trái của nó được sắp thụt vào Với cách biểu diễn này, ta
có thể biểu diễn được số các chức năng ở mỗi cấp không hạn chế
Ví dụ biểu đồ dạng công ty Hình 5.4 Biểu đồ phân rã chức năng dạng công ty
1 Bộ phận kế hoạch
1.1 Lập kế hoạch chiến lược 1.2 Lập kế hoạch hàng năm 1.3 Lập kế hoạch tác nghiệp (quý, tháng) 1.4 Xét cấp phát vật tư, phụ tùng
2 Bộ phận kế hoạch
2.1 Lập kế hoạch ngân sách 2.2 Quản lý thu chi
2.3 Quản lý thanh tuyết toán 2.4 Hạch toàn giá thành 2.5 Tổng hợp báo cáo
3 Bộ phận lao động tiền lương
3.1 Quản lý nhân sự 3.2 Đào tạo, kèm cặp 3.3 Bố trí cán bộ, nâng bậc, xếp lương
4 Bộ phận quản lý cơ điện
4.1 Lập kế hoạch trang bị, sửa chữa 4.2 Theo dõi tình trạng cơ điện 4.3 Cung cấp giải pháp kỹ thuật 4.4 Tổ chức sửa chữa và thay thế
5 Bộ phận quản lý công nghệ
5.1 Định danh sản phẩm và chỉ tiêu chất lượng 5.2 Xây dựng và quản lý qui trình công nghệ 5.3 Nghiên cứu thử nghiệm công nghệ
6 Bộ phận quản lý chất lượng
6.1 Kiểm tra thực hiện qui trình 6.2 Kiểm tra chất lượng sản phẩm 6.3 An toàn lao động và vệ sinh công nghiệp
7 Bộ phận tiếp thị
7.1 Thu thập thông tin thị trường 7.2 Phân tích và đề xuất chính sách 7.3 Xây dựng chiến lược sản phẩm 7.4 Tổ chức quảng cáo
8 Bộ phận tiêu thụ
8.1 Tổ chức ký kết hợp dồng 8.2 Tổ chức cung ứng sản phẩm
Trang 8Giáo trình: Phân tích thiết kế hệ thống Giảng viên: Lê Đắc Nhường
G
8.3 Quản lý kho thành phần
9 Bộ phận nguyên liệu
9.1 Tổ chức vùng nguyên liệu 9.2 Ký kết hợp đồng mua nhiên liệu 9.3 Quản lý kho nguyên liệu
10 Bộ phận hành chính
10.1 Văn thư, tiếp tân 10.2 Quản lý các dịch vụ nội bộ 10.3 Công tác đoàn thể
11 Bộ phận bảo vệ an ninh
11.1 Tổ chức lực lượng, biện pháp an ninh 11.2 Tổ chức huấn luyện và diễn tập 11.3 Tổ chức phòng, chữa cháy Trên thực tế, ta sẽ không chi tiết hóa ngay tất cả các chức năng ở mức thấp nhất của biểu
đồ Lý do vì thứ nhất đó là việc làm rất tốn kém, thứ hai: thật sự không cần thiết phải xây dựng hệ thống thông tin cho mọi bộ phận chức năng của tổ chức Để chọn những bộ phận tiếp tục kế hoạchảo sát và chi tiết hóa mô hình người ta thường phải nghiên cứu phạm vi miền nghiệp vụ của tổ chức liên quan đến hệ thống cần xây dựng
5.3.4 Một cách xác định mô hình phân rã
Đối với một lĩnh vực hay một phạm vi nghiên cứu không lớn, đôi khi người ta có thể biết ngay đươcj mọi công việc chi tiết Trong trường hợp này, việc xây dựng mô hình có thể đi
theo hướng ngược lại từ dưới lên (Bottom - Up) Bằng cách nhóm dần các chức năng nghiệp
vụ chi tiết từ dưới lên trên theo từng nhóm một cách thích hợp và gán cho nó những cái tên tương ứng, ta có thể có được biểu đồ phân rã chức năng nghiệp vụ phân cấp của hệ thống Sau đâu trình bày ví dụ về xây dựng biểu đồ phân rã chức năng của hệ thống trông gửi
xe theo phương pháp trình bày:
Chức năng chi tiết Nhóm lần 1 Nhóm lần 2
1 Nhận dạng loại xe vào gửi
Nhận xe vào bãi
Trông gửi
xe ở bãi
2 Kiểm tra chỗ trống trong bãi
3 Ghi vé cho khách
4 Vào sổ gửi xe, cho xe vào bãi
5 Kiểm tra lấy vé xe
Trả xe cho khách
6 Đối chiếu với xe
7 Thanh toán tiền, cho xe ra
8 Ghi sổ xe ra
9 Kiểm tra xe sự cố trong sổ gửi xe
Giải quyết
sự cố
10 Kiểm tra sự cố khách yêu cầu
11 Lập biên bản sự cố
12 Giải quyết bồi thường Hình 5.5 Quá trình xây dựng biểu đồ phân rã chức năng bằng cách nhóm các chức năng
5.4 Xác định phạm vi hệ thống
Khi phân tích một hệ thống thông tin, ta thường sử dụng nhiều ma trận khác nhau phục vụ việc xác định các yếu tố cần thiết khi xây dựng hệ thống Hai ma trận được sử dụng trong
Trang 9Giáo trình: Phân tích thiết kế hệ thống Giảng viên: Lê Đắc Nhường
G
việc xác định phạm vi hệ thống là: Ma trận yếu tố quyết định thành công và chức năng và Ma
trận thực thể - chức năng
5.4.1 Ma trận yếu tố quyết định thành công và chức năng
Trong khi lập kế hoạch chiến lược phân tích hệ thống thông tin, sau khi đã xác định được mục tiêu hay các vấn đề mà tổ chức gặp phải, ta cần phải xác định các yếu tố quyết định đến thành công của hệ thống Đó là các yếu tố có liên hệ với các hoạt động nghiệp vụ bên trong
và bên ngoài có thể đo được và có ảnh hưởng lớn đến việc tổ chức có thể đạt được mục tiêu của nó hay không Mức độ đạt được của các yếu tố quyết định thành công phụ thuộc vào việc thực hiện các nhiệm vụ chức năng của tổ chức có liên quan đến nó Vì vậy, hệ thống cần xây dựng hỗ trợ các nhiệm vụ, chức năng này Ma trận yếu tố quyết định thành công – chức năng được xây dựng nhằm xác định các nhiệm vụ chức năng có tầm quan trọng này
Trong một tổ chức, các yếu tố quyết định sự thành công có thể gồm từ 3 đến 6 yếu tố Chẳng hạn, trong một công ty máy tính nhỏ, các yếu tố quyết định sự thành công có thể là:
sự đổi mới sản phẩm, sản phẩm chất lượng cao và kiểm soát chặt chẽ được giá thành Còn đối với một bệnh viện, các yếu tố đó là: sự chăm sóc bênh nhân chu đáo, kiểm soát được chi phí và thuê được những bác sỹ có kinh nghiệm
Ma trận yếu tố quyết định thành công – chức năng có các dòng là các chức năng gộp (hay
bộ phận chức năng), các cột là các yếu tố quyết định sự thành công Ở mỗi ô tương giao giữa một chức năng và một yếu tố thành công người ta để trống hoặc đánh dấu bằng chữ E (Essential: quan trọng) hay chữ D (Desiable: không quan trọng) tùy thuộc vào chức năng đó tác động quyết định hay chỉ ở mức nào đó đv yếu tố quyết định thành công cột
Sau khi đã xét tất cả các ô và đánh dấu được các ô tương ứng của ma trận, người ta chọn ra tất cả các dòng chức năng chứa ô có chữ E đưa vào các lĩnh vực của tổ chức cần được xem xét để phát triển hệ thống Ví dụ về ma trận yếu tố quyết định thành công – chức năng:
Các yếu tố quyết định thành công Các chức năng số lượng, đảm bảo Nguyên liệu đủ về
về chất lượng
Giữ vững và mở rộng thị trường tiêu thụ 10%
Kiểm soát chi phí, giá bán không tăng
4 Bộ phận quản lý cơ điện
5 Bộ phận quản lý công nghệ D
6 Bộ phận quản lý chất lượng D
10 Bộ phận Hành chính
11 Bộ phận bảo vệ an nình
Hình 5.6 Ma trận yếu tố quyết định thành công – chức năng
5.4.2 Ma trận thực thể - chức năng
Khi khảo sát, ta thu được các thực thể dữ liệu của tổ chức Tiếp đến, ta cần phải xem xét những dữ liệu nào là thực sự cần thiết cho các chức năng của phạm vi đang nghiên cứu và
Trang 10Giáo trình: Phân tích thiết kế hệ thống Giảng viên: Lê Đắc Nhường
G
các chức năng nào có tác động lên các dữ liệu đó Sự tác động và cách thức tác động lên dữ liệu được mô hình hóa trong ma trận thực thể - chức năng
Ma trận thực thể-chức năng gồm các dòng và các cột:
Mỗi cột tương ứng với một thực thể Các thực thể là các hồ sơ và các tài liệu thu thập được trong quá trình khảo sát
Mỗi dòng ứng với một chức năng Các chức năng này tường là chức năng ở mức tương đối chi tiết nhưng không phải là mức lá Vì nếu sử dụng mức là thì số chức năng lá quá nhiều Mặt khác, nếu sử dụng các chức năng quá gộp thì khó nhận thấy được tác động của chức năng đối với các thực thể, tức là khó xác định được các ô tương ứng trong bảng cần phải đánh dấu
Ở mỗi ô là giao giữa một chức năng và một thực thể ta đánh dấu bằng một chữ R,
U, hay C với ý nghĩa:
R (Read): nếu chức năng dòng đọc dữ liệu thực thể cột
C (Creat): nếu chức năng dòng tạo mới dữ liệu trong thực thể cột
U (Update): nếu chức năng dòng thực hiện việc cập nhật (thêm, sửa, xóa)
dữ liệu trong thực thể cột
Ví dụ ma trận thực thể - chức năng
Các thực thể
A Hồ sơ sinh viên
B Danh sách lớp
C Thẻ sinh viên
D Khung CTĐT
E Danh sách thi hết học phần
F Bảng điểm học tập
G Bảng điểm rèn luyện
H Danh sách bộ môn
I Danh sách học phần
J Hồ sơ giáo viên
K Báo cáo
1 Quản lý hồ sơ sinh viên U C C
Hình 5.7 Ma trận thực thể - chức năng hệ thống quản lý đào tạo Trường ĐH Hải Phòng Thông qua ma trận thực thể - chức năng cho phép phát hiện những thực thể cô lập hay chức năng cô lập: