Chương 5: Mô hình hóa chức năng hệ thống
lượt xem 95
download
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.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Chương 5: Mô hình hóa chức năng hệ thống
- 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 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 43
- 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. Đầu vào Đầu ra Hệ thống A B D C E 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. 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 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 a) Chức năng b) Liên kết 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 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 46
- 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: Kinh doanh bán hàng Gốc 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 Nhận thông tin KH Đối chiếu đơn – kho Gom hàng theo phiếu Kiểm tra đơn hàng Thỏa thuận mua hàng Thỏa thuận bán hàng Thỏa thuận nhận hàngiểm tra đơn hàng Kiểm tra khách hàng Ký kết hợp đồng Lập phiếu giao hàng Tổ chức giao hàngiểm tra khách hàng Lá 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: 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 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 48
- Giá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 49
- Giá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 2. Kiểm tra chỗ trống trong bãi Nhận xe 3. Ghi vé cho khách vào bãi 4. Vào sổ gửi xe, cho xe vào bãi 5. Kiểm tra lấy vé xe 6. Đối chiếu với xe Trả xe Trông gửi 7. Thanh toán tiền, cho xe ra cho khách xe ở bãi 8. Ghi sổ xe ra 9. Kiểm tra xe sự cố trong sổ gửi xe 10. Kiểm tra sự cố khách yêu cầu Giải quyết 11. Lập biên bản sự cố 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 50
- Giá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 Nguyên liệu đủ về Giữ vững và mở Kiểm soát chi Các chức năng số lượng, đảm bảo rộng thị trường phí, giá bán về chất lượng tiêu thụ 10% không tăng 1. Bộ phận kế hoạch E D 2. Bộ phận tài chính D E 3. Bộ phận lao động tiền lương D D 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 7. Bộ phận tiếp thị E 8. Bộ phận tiêu thụ E 9. Bộ phận nguyên liệu E 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 51
- Giá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. Các chức năng A B C D E F G H I J K 1. Quản lý hồ sơ sinh viên U C C 2. Quản lý điểm học tập của SV R C U R 3. Quản lý điểm rèn luyện của SV R C 4. Quản lý chương trình đào tạo U U U 5. Quản lý hồ sơ giáo viên U 6. Thống kê báo cáo R R R R R R R R 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: Trang 52
- Giáo trình: Phân tích thiết kế hệ thống Giảng viên: Lê Đắc Nhường G Nếu một dòng ứng với 1 chức năng không chứa một ô nào được đánh dấu thì chức năng đó hoặc là không phải một tiến trình (do không tác động lên dữ liệu), hoặc đánh dấu xót, hoặc khảo sát sót thực thể dữ liệu. Nếu một cột nào không chứa một ô được đánh dấu thì hoặc là khảo sát thiếu chức năng, hoặc đánh dấu sót, hoặc thực thể là không cần thu thập và có thể bỏ đi. Những phát hiện đó cho phép ta xem xét, bổ sung những khiếm khuyết trong khảo sát, loại bỏ những chức năng hay thông tin thừa ứng với các dòng hay cột cô lập của miền khảo sát. Trong một số trường hợp có thể ta phải phân rã chức năng nhở hơn để tìm ra mối quan hệ của chức năng và thực thể. Ma trận cuối cùng cho ta biết mối quan hệ giữa các chức năng được xét và các hồ sơ dữ liệu còn được giữ lại: mỗi chức năng có tác động lên những hồ sơ nào, theo cách thức nào (R, U, C). Ma trận thực thể - chức năng sau khi đã bỏ đi các dòng và các cột khong được đánh dấu sẽ dược sử dụng như một dạng mô tả trong mô hình nghiệp vụ. Nó là đầu vào để xây dựng các luồng dữ liệu trong biểu đồ luồng dữ liệu. 5.5. Biểu đồ luồng dữ liệu (DFD) 5.5.1. Mô hình hóa chức năng với biểu đồ luồng dữ liệu Trong phần này, ta tập trung vào việc mô hình hóa chức năng lôgíc trong giai đoạn phân tích hệ thống. Như trên đã nói, mô hình hóa chức năng là một kỹ thuật để tổ chức và tài liệu hóa cấu trúc và luồng dữ liệu cũng như lôgíc, đường lối và các thủ tục được thực hiện bởi các quá trình của một hệ thống. Một trong các mô hình chức năng phân tích hệ thống chính là sơ đồ luồng dữ liệu. Một biểu đồ luồng dữ liệu (Data Flow Diagram – DFD) là một công cụ đồ họa để mô tả luồng dữ liệu luân chuyển trong một hệ thống và những hoạt động xử lý được thực hiện bởi hệ thống đó. Sơ đồ luồng dữ liệu còn có các tên gọi khác là biểu đồ bọt, biểu đồ biến đổi và mô hình chức năng. Tại sao sử dụng DFD? Vì sự mô tả bằng ngôn ngữ hướng tới sự giải thích, nó có thể bỏ sót những thông tin quan trọng. Sự mô tả đồ họa minh họa được luồng dữ liệu trong một tổ chức thông qua DFD. Biểu đồ luồng dữ liệu đã rất phổ biến hơn 20 năm nay nhưng lợi ích của DFD đã được đổi mới nhờ vào tính ứng dụng của nó trong việc tái cấu trúc quy trình nghiệp vụ (Business Process Redesign – BPR). Khi mà tổ chức nhận thấy rằng hầu hết các hệ thống xử lý dữ liệu đã trở nên lỗi thời, không hiệu quả và rườm rà về thủ tục thì đó là lúc có thể thu lợi ích mới nhờ vào việc tổ chức lại các quy trình nghiệp vụ. Điều này được tiến hành trước tiên bằng việc mô hình hóa các quy trình nghiệp vụ nhằm mục đích phân tích, thiết kế lại và/hoặc cải thiện chúng. Tiếp theo, công nghệ thông tin có thể được áp dụng một cách sáng tạo cho các quy trình nghiệp vụ đã được cải thiện nhằm tối đa hóa giá trị thu về cho tổ chức. 5.5.2. Vai trò của biểu đồ luồng dữ liệu DFD tài liệu hóa một thao tác/hoạt động/chức năng nghiệp vụ của một hệ thống thành một quá trình. DFD mô tả cách thức dữ liệu được xử lý trong và tại biên giới của hệ thống. DFD thể hiện chi tiết sự phụ thuộc lẫn nhau giữa các quá trình của hệ thống, các sự dịch chuyển dữ liệu hoặc thông tin giữa các quá trình. DFD lôgíc: mô tả luồng thông tin của một hệ thống Trang 53
- Giáo trình: Phân tích thiết kế hệ thống Giảng viên: Lê Đắc Nhường G DFD vật lý: mô tả cách thức một hệ thống thông tin được cài đặt vật lý (ai làm, bằng cách nào, bằng công cụ nào). Mô tả cách thức một hệ thống thông tin được cài đặt vật lý (ai làm, bằng cách nào, bằng công cụ nào) 5.5.3 Các phần tử của biểu đồ luồng dữ liệu 5.5.3.1. Các bộ ký hiệu biểu đồ luồng dữ liệu Có hai loại ký hiệu chuẩn được dùng để biểu diễn biểu đồ luồng dữ liệu là của Gane/Sarson và Demarco/Yourdon. Trong đó, bộ ký hiệu Gane & Sarson được sử dụng phổ biến hơn. Cả hai đều sử dụng bốn ký hiệu để biểu diễn cùng một sự vật là: luồng dữ liệu, kho dữ liệu, tiền trình và tác nhân. Bộ ký hiệu của Gane và Sarson (1979) n n Tên tiến Tên tiến trình Luồng dữ liệu trình Người/ phương tiện thực hiện Tác nhân D Tên kho dữ Tên kho dữ D liệu liệu Bộ ký hiệu của Demarco và Yourdon (1979) Tên tiến trình Luồng dữ liệu Tác nhân Tên kho dữ liệu Hình 5.8 Các bộ ký hiệu DFD Trong giáo trình này đa số ví dụ đều sử dụng bộ ký hiệu của Gane và Sarson. 5.5.3.2. Tác nhân (Actor) Tác nhân của một phạm vi hệ thống được nghiên cứu có thể là một người, một nhóm người, một bộ phận, một tổ chức hay một hệ thống khác nằm ngoài phạm vi của hệ thống đang nghiên cứu và có tương tác với nó về mặt thông tin (nhận hay gửi dữ liệu). Có thể nhận biết tác nhân là nơi xuất phát (nguồn) hay nơi đến (đích) của dữ liệu từ phạm vi hệ thống được xem xét. Lưu ý: Một tác nhân là một nguồn cung cấp hoặc nhận thông tin dữ liệu của hệ thống Một tác nhân không phải là một phần của hệ thống, nó thể hiện mối quan hệ giữa hệ thống với môi trường bên ngoài. Tên của tác nhân ngoài phải là một danh từ như “khách hàng”, “Nhà cung cấp”.. Biểu diễn bằng hình chữ nhật, bên trong có ghi tên tác nhân. Trang 54
- Giáo trình: Phân tích thiết kế hệ thống Giảng viên: Lê Đắc Nhường G Các tác nhân ngoài xác định “biên giới” hay phạm vi của hệ thống đang được mô hình hóa. Khi phạm vi thay đổi, các tác nhân ngoài có thể trở thành các quá trình và ngược lại. 5.5.3.3. Kho dữ liệu (Data Store) Kho dữ liệu là các dữ liệu được lưu giữ tại một vị trí. Một kho dữ liệu có thể biểu diễn các dữ liệu được lưu trữ ở nhiều vị trí không gian khác nhau (như các thư mục, các máy tính khác nhau…). Lưu ý: Một kho dữ liệu là một kho lưu trữ dữ liệu, nó chứa thông tin. Kho chứa vật lý là phi vật chất, nó có thể là một tủ hồ sơ, sách hoặc file máy tính. Tên của kho dữ liệu phải là một mệnh đề danh từ, nó nói lên nội dung thông tin. Ví dụ: “Hóa đơn bán hàng”, “Đơn hàng”. Kho dữ liệu được biểu diễn bởi hình chữ nhật khuyết một cạnh (bên phải hoặc bên trái). Sát cạnh trái (phải) của hình chữ nhật có một ô dùng để ghi số hiệu kho dữ liệu, bên trong hình chữ nhật ghi tên kho dữ liệu. Một kho dữ liệu là “dữ liệu tĩnh” khác với luồng dữ liệu là “dữ liệu chuyển động”. Một kho dữ liệu cần biểu diễn cho “những thứ” mà tổ chức muốn lưu trữ dữ liệu, “những thứ” thường là: Con người: như khách hàng, phòng, nhân viên, thầy giáo, sinh viên… Các địa điểm: như nơi sinh, tòa nhà, phòng, chi nhánh… Các đối tượng: như sách, máy móc, sản phẩm, nguyên liệu thô, bản quyền phần mềm, gói phần mềm, công cụ, phương tiện vận tải… Các sự kiện (dữ liệu được thu thập về chúng): như việc bán hàng, giải thưởng, lớp học, chuyến bay, hóa đơn, đơn hàng, đăng ký, đặt chỗ… Các khái niệm (dữ liệu về chúng rất quan trọng): như việc giảm giá, tài khoản, khóa học, chất lượng… Có thể xác định các kho dữ liệu với các yếu tố Tài nguyên – Sự kiện – Tác nhân – Địa điểm. Các kho dữ liệu được mô tả trong một DFD chứa tất cả các thể hiện của các thực thể dữ liệu (được mô tả trong một biểu đồ quan hệ quan hệ ERD). 5.5.3.4. Luồng dữ liệu (Data flow) Luồng dữ liệu là các dữ liệu di chuyển từ một vị trí này đến một vị trí khác trong hệ thống trên một vật mang nào đó. Một luồng dữ liệu biểu diễn một sự di chuyển của dữ liệu (thông tin) giữa các quá trình hoặc kho dữ liệu. Một luồng dữ liệu không biểu diễn một tài liệu hay một vật thể vật lý: nó biểu diễn sự trao đổi thông tin trong tài liệu hoặc về vật thể. Tên của luồng dữ liệu phải là một mệnh đề danh từ và không trùng lặp với các luồng dữ liệu khác. Tên phải thể hiện logic của thông tin chứ không phải dạng vật lý của nó và phải bắt đầu bằng danh từ. Trang 55
- Giáo trình: Phân tích thiết kế hệ thống Giảng viên: Lê Đắc Nhường G Luồng dữ liệu ký hiệu bằng mũi tên có chiều chỉ hướng dữ liệu di chuyển và tên của dữ liệu được ghi trên đó. Một luồng dữ liệu biểu diễn một đầu vào dữ liệu tới một quá trình hoặc đầu ra dữ liệu từ một quá trình. Một luồng dữ liệu cũng có thể được dùng để biểu diễn việc tạo, đọc, xóa hoặc cập nhật dữ liệu trong một file hoặc cơ sở dữ liệu (được gọi là kho dữ liệu). Một luồng dữ liệu ghép (gói) là một luồng dữ liệu chứa các luồng dữ liệu khác. Trong biểu đồ luồng dữ liệu vật lý, luồng dữ liệu là các dữ liệu được lưu trên vật mang vật lý, vì thế tên luồng dữ liệu được chọn là tên của chính vật mang như: đơn hàng, giấy báo giá, hợp đồng cung ứng, hóa đơn bán hàng… 5.5.3.5 Tiến trình (Process) Tiến trình là một hay một số cong việc hoặc hành động có tác động lên các dữ liệu làm cho chúng di chuyển, thay đổi, được lưu trữ hay phân phối. Một tiếntrình là một hoạt động được thực hiện trên luồng dữ liệu vào để tạo một luồng dữ liệu ra. Là chức năng được thực hiện bởi hệ thống để đáp ứng lại các luồng dữ liệu hoặc điều kiện vào. Tên của tiến trình phải là một mệnh đề động từ gồm động từ và bổ ngữ. Ví dụ: “tính lương”, “lập đơn hàng”… Tiến trình biểu diễn bằng hình chữ nhật góc tròn và một đường gạch ngang phía trên hình chữ nhật chi thành 2 phần: phần trên ghi số hiệu của tiến trình, phần dưới ghi tên tiến trình. Một quá trình phải có ít nhất một luồng dữ liệu vào và ít nhất một luồng dữ liệu ra. Các loại tiến trình lôgíc: Chức năng: một tập các hoạt động tiếp diễn liên quan tới một nghiệp vụ; ví dụ như việc bán hàng Sự kiện (hay giao dịch, hoạt động): một công việc phải được hoàn thành toàn bộ (hoặc như một phần của một chức năng); ví dụ như việc thu tiền thanh toán (là một công đoạn trong việc bán hàng) Tiến trình cơ bản (hay thao tác): một hoạt động hoặc thao tác chi tiết, rời rạc được yêu cầu để đáp lại một sự kiện. Thông thường, một số thao tác như vậy phải được hoàn thành để đáp ứng một sự kiện; ví dụ như ghi tiền thành toán Cách tách các tiến trình Mỗi hệ thống có thể được chia thành nhiều tiến trình khác nhau với các cách khác nhau. Các tiến trình có thể được tách nếu có một luồng thông tin đi giữa chúng. Điều kiện để tách: nếu các tiến trình này không thực hiện đồng thới hoặc không cùng một nơi hoặc không do một người thực hiện. Khi đó, ta kiểm tra quá trình tách bằng cách cuối luồng dữ liệu ta đặt câu hỏi: Tiến trình tiếp theo có thể thực hiện ở thời gian khác được không? Trang 56
- Giáo trình: Phân tích thiết kế hệ thống Giảng viên: Lê Đắc Nhường G Tiến trình tiếp theo có thể thực hiện ở nơi khác được không? Tiến trình tiếp theo có thể được thực hiện bởi người khác được không? Nếu một trong ba câu hỏi trên là có thì ta tách chúng bằng cách đặt một tệp dữ liệu ở giữa. Hình 5.5 Ví dụ cách tách các tiến trình 5.5.4 Một số qui tắc vẽ biểu đồ luồng dữ liệu Để đảm bảo biểu đồ luồng dữ liệu đúng cần tuân theo các qui tắc sau khi vẽ: Các “cái vào” của một tiến trình cần khác với “cái ra” của nó. Nguyên tắc này nhấn mạnh rằng các dữ liệu qua một tiến trình phải có thay đổi. Ngược lại, tiến trình là không cần thiết vì nó không tác động gì đến luồng dữ liệu đi qua. Các đối tượng trong một biểu đồ luồng dữ liệu phải có tên duy nhất: mỗi tiến trình phải có tên duy nhất. Tuy nhiên, một số tác nhân ngoài và kho dữ liệu có thể được vẽ lặp lại (nhằm giảm sự rắc rối trong biểu đồ). Các luồng dữ liệu đi vào một tiến trình phải đủ để tạo thành một luồng dữ liệu đi ra. Tiến trình: Không một tiến trình nào chỉ có cái ra mà không có cái vào. Đối tượng chỉ có cài ra thì chỉ có thể là tác nhân (nguồn). Không một tiến trình nào chỉ có cái vào mà không có cái ra. Đối tượng chỉ có cái vào chỉ có thể là tác nhân (đích). Kho dữ liệu Không có luồng dữ liệu từ một kho đến một kho dữ liệu khác Dữ liệu không thể di chuyển trực tiếp từ một tác nhân đến một kho dữ liệu và ngược lại. Trang 57
- Giáo trình: Phân tích thiết kế hệ thống Giảng viên: Lê Đắc Nhường G Tác nhân: Dữ liệu không thể di chuyển trực tiếp từ một tác nhân đến một khác nhân Luồng dữ liệu Một luồng dữ liệu không thể quay lại nơi mà nó vừa đi khỏi Một luồng dữ liệu đi vào một kho có nghĩa là kho dữ liệu được cập nhật. Một luồng dữ liệu đi ra khỏi một kho có nghĩa là dữ liệu được đọc. 5.5.5 Phân rã biểu đồ luồng dữ liệu 5.5.5.1 Định nghĩa Quá trình phân nhỏ mỗi tiến trình của một biểu đồ luồng dữ liệu thành một biểu đồ luồng dữ liệu mới (nếu có thể) gọi là phân rã biểu đồ luồng dữ liệu đã cho. Ví dụ: Hệ thống quản lý trông gửi sẽ có các tiến trình được đánh số là 1.0: Nhận xe, 2.0: Trả xe; 3.0 Giải quyết sự cố; 4.0 Báo cáo. Tuy nhiên ở mức này luồng dữ liệu trong hệ thống chưa được rõ, nên ta tiếp tục phân rã các tiến trình đó. Giả sử phân rã tiến trình 1.0: Nhận xe thành 4 tiến trình con, thì 4 tiến trình con sẽ được đánh số lần lượt là: tiến trình 1.1, tiến trình 1.2, tiến trình 1.3, tiến trình 1.4. Hình 5.6 Ví dụ: Biểu đồ luồng dữ liệu hệ thống trông xe mức 0 Nếu biểu đồ luồng dữ liệu chứa tiến trình 1.0 là mức 0 thì luồng dữ liệu phân rã tiến trình 1.0 gọi là mức 1… , Hình 5.7: Biểu đồ luồng dữ liệu mức 1 khi phân rã tiến trình 1.0 “Nhận xe” Trang 58
- 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 5.8a: Biểu đồ luồng dữ liệu mức 1 khi phân rã tiến trình 2.0 “Trả xe” 0 mức 0 (mức ngữ cảnh) 3 Biểu đồ phân rã mức đỉnh 1 2 1 2.3 3.1 2.1 3.2 2.2 Biểu đồ phân rã mức 1 ( dưới đỉnh) 2.1 2.2.2 Biểu đồ phân rã mức 2 2.2.1 2.2.3 Hình 5.8b Các mức trong quá trình phân rã biểu đồ luồng dữ liệu Trang 59
- Giáo trình: Phân tích thiết kế hệ thống Giảng viên: Lê Đắc Nhường G 5.5.5.2 Đảm bảo sự cân bằng giữa hai mức kề nhau Khi phân rã một tiến trình của một biểu đồ luồng dữ liệu thành một biểu đồ ở mức sau thì mọi luồng dữ liệu vào và ra, các tác nhân ngoài và kho dữ liệu liên quan với đó phải được bảo toàn (giữ nguyên) trong biểu đồ ở mức sau. Chẳng hạn, mọi cái vào và cái ra của tiến trình 1.0 “Nhận xe” hình 5.6 đều có mặt trong biểu đồ luồng dữ liệu hình 5.7 là mức tiếp theo của phân rã tiến trình 1.0. Một luồng dữ liệu trên một biểu đồ mức n bao gồm một số luồng con có thể tách ra thành các luồng dữ liệu thành phần trong biểu đồ mức n +1 sao cho mỗi tiến trình nhận luồng dữ liệu thành phần được phân rã là một cái vào của nó. Nguyên tắc áp dụng được minh họa như sau: Đơn hàng và phiếu a) Luồng dữ X.0 thanh toán liệu phức hợp X.1 X.2 Đơn hàng Phiếu thanh toán b) Luồng dữ liệu thành phần Hình 5.9 Phân rã luồng dữ liệu phức hợp Một luồng dữ liệu phức hợp có thể chia nhỏ thành các luồng dữ liệu thành phần ở mức sau sao cho vẫn giữa nguyên số lượng các luồng dữ liệu đã có trong luồng dữ liệu phức hợp. Cho phép vẽ lặp lại một kho dữ liệu hay một tác nhân ở một vài vị trí. Tại mức thấp nhất của biểu đồ luồng dữ liệu có thể thêm các luồng dữ liệu mới để biểu diễn những dữ liệu điều khiển được bổ sung: đó là các thông báo lỗi hay một điều khẳng định nào đó. Luồng dữ liệu bổ sung được biểu diễn bằng mũi tên nét đứt. Ví dụ hình 5.10 sau: 5.5.5.3 Biểu đồ luồng dữ liệu sơ cấp Quá trình phân rã luồng dữ liệu sẽ dừng lại khi đạt đến biểu đồ mức thấp nhất – gọi là biểu đồ luồng dữ liệu sơ cấp. Những qui tắc sau đây là những gợi ý để dừng quá trình phân rã biểu đồ luồng dữ liệu: Trang 60
- Giáo trình: Phân tích thiết kế hệ thống Giảng viên: Lê Đắc Nhường G Khi một tiến trình là một quyết định hay một tính toán đơn giản, một thao tác dữ liệu như đọc, cập nhật, tạo, ghi, xóa. Khi người dùng hệ thống nhận ra hiểu được mọi công việc hoặc nhà phân tích đã lập được tài liệu chi tiết để thực hiện các nhiệm vụ phát triển hệ thống một cách tuần tự. Khi mỗi luồng dữ liệu không cần chia nhỏ hơn để chỉ ra rằng các dữ liệu khác nhau đều đã được quản lý. Khi đã chỉ ra được mỗi nhiệm vụ nghiệp vụ, hoặc một giao dịch thông tin hiển thị và báo cáo là những luồng dữ liệu đơn hay những tiến trình tách biệt ứng với mỗi lựa chọn trên thực đơn mức thấp nhất. Biểu đồ luồng dữ liệu sơ cấp giúp ta dễ dàng kiểm tra được tính nhất quán với các tài liệu tạo ra từ các cách xác định yêu cầu khác và cũng giúp chúng ta dễ dàng chuyển nó sang thiết kế ở mức tiếp theo. 5.6 Phát triển các biểu đồ luồng dữ liệu trong ứng dụng 5.6.1 Các loại biểu đồ luồng dữ liệu khác nhau Thường có 5 loại biểu đồ luồng dữ liệu khác nhau được sử dụng trong quá trình phát triển hệ thống là: Biểu đồ ngữ cảnh Biểu đồ luồng dữ liệu vật lý của hệ thống hiện thời Biểu đồ luồng dữ liệu logic của hệ thống hiện thời Biểu đồ luồng dữ liệu logic cho hệ thống mới Đảm bảo luồng dữ liệu vật lý cho hệ thống mới. Trong biểu đồ luồng dữ liệu vật lý của hệ thống hiện thời, phần thứ 3 trong mỗi tiến trình có thể ghi tên người hay tên của phương tiện thực hiện tiến trình đó, hay tên của công nghệ sử dụng xử lý dữ liệu. Ví dụ, trong tiến trình nhận đơn hàng, có thể thêm vào một dòng chỉ người thực hiện là “nhân viên bán hàng”. Việc xây dựng mô hình vật lý (biểu đồ luồng dữ liệu vật lý) của hệ thống hiện tại giúp ta nắm và hiểu được hệ thống nghiệp vụ của tổ chức. Nhờ vậy mà đặc tả yêu cầu của nó chính xác hơn. Để mô hình hóa logic của hệ thống hiện thời, ta chỉ cần bỏ đi cấc đối tượng vật lý của biểu đồ luồng dữ liệu vật lý hiện thời và chỉ giữ lại những gì là cốt yếu (logic) của hệ thống, đó là các dữ liệu, các xử lý và mối quan hệ bản chất giữa chúng. Các mối quan hệ logic không phục thuộc vào bất kỳ yếu tố vật lý nào do đó ta có thể xem xét và sắp đặt lại một cách hợp lý nhưng phải đảm bảo “logic nghiệp vụ”. Mô hình logic của hệ thống mới nhận được bằng cách bổ sung thêm vào biểu đồ luồng dữ liệu logic của hệ thống hiện tại những yếu tố cần thiết để đáp ứng được mọi yêu cầu xử lý thông tin đã được xác định cho hệ thống mới. Biểu đồ luồng dữ liệu logic của hệ thống mới có thể giống biểu đồ luồng dữ liệu logic của hệ thống hiện thời nếu không có yêu cầu mới được đưa ra. Thông thường nó được bổ sung thêm các chức năng mới, các dữ liệu mới cùng mối quan hệ phát sinh và bỏ đi những gì không cần thiết. Trang 61
- Giáo trình: Phân tích thiết kế hệ thống Giảng viên: Lê Đắc Nhường G Biểu đồ luồng dữ liệu vật lý cho hệ thống mới (còn gọi là biểu đồ luồng hệ thống) sẽ biểu diễn hệ thống vật lý cần triển khai cho hệ thống mới. Nó phản ánh quyết định của các nhà phân tích và thiết kế về các phương tiện vật lý được lựa chọn áp dụng cho hệ thống mới. 5.6.2 Biểu đồ ngữ cảnh của hệ thống Biểu đồ luồng dữ liệu mức ngữ cảnh (Context Data Flow Diagram) là một mô hình chức năng được dùng để tài liệu hóa phạm vi của một hệ thống ở mức cao nhất. Nó còn được gọi là mô hình môi trường. Để xây dựng biểu đồ ngữ cảnh, cần phải: Xác định biên giới của hệ thống. Xác định các tác nhân ngoài Không chi tiết về các quá trình và kho dữ liệu của hệ thống Chiến lược cụ thể xây dựng biểu đồ ngữ cảnh: Coi cả hệ thống là một “hộp đen”, xem nó là một chức năng duy nhất và chỉ quan tâm tới phần bên ngoài của nó mà không phải xét tới những hoạt động bên trong. Chỉ có một tiến trình duy nhất mô tả toàn bộ hệ thống. Hỏi người sử dụng cuối của hệ thống về những giao dịch nghiệp vụ mà hệ thống phải đáp ứng. Đó chính là các luồng vào của hệ thống. Với mỗi luồng vào, cần xác định nguồn tương ứng của nó. Các nguồn sẽ trở thành các tác nhân ngoài trong sơ đồ ngữ cảnh. Hỏi người sử dụng cuối về những đáp ứnh phải được sinh ra bởi hệ thống. Đó chính là các luồng ra của hệ thống, Với mỗi luồng ra, xác định đích của nó. Các đích đó cũng sẽ trở thành các tác nhân ngoài. Xác định các kho dữ liệu ngoài. Rất nhiều hệ thống đòi hỏi truy nhập vào các tệp hoặc cơ sở dữ liệu của hệ thống khác. Vẽ một biểu đồ ngữ cảnh dựa trên tất cả các thông tin đã xử lý. Chú ý chỉ minh họa những luồng dữ liệu thể hiện những mục tiêu chính của hệ thống nhằm tránh việc biểu đồ ngữ cảnh có quá nhiều luồng dữ liệu vào/ra. Hình 5.11 Biểu đồ ngữ cảnh hệ thống quản lý trông gửi xe 5.6.3. Trình tự và quy tắc xây dựng DFD 5.6.3.1. Các bước xây dựng DFD Kỹ thuật phổ biến được dùng để xây dựng DFD là kỹ thuật phân mức. Dựa theo BFD của hệ thống, chúng ta sẽ xây dựng DFD theo nhiều mức, mỗi mức thể hiện trên một hoặc nhiều trang. Nên đặt tên cho mỗi trang bằng tên của chức năng đang được phân tích trên trang đó. Như vậy với trang phân tích tại mức 0 thì tên của nó chính là tên của hệ thống. Trang 62
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Chương 5: Quản lý thiết kế văn hóa và thay đổi của tổ chức
28 p | 398 | 180
-
Các công cụ của giám đốc bán hàng (Phần 3)
6 p | 346 | 163
-
Giám đốc bán hàng – các công cụ quản lý phần 2
6 p | 421 | 156
-
Bài giảng môn Quản trị học - Chương 5
20 p | 189 | 9
-
Bài giảng Hệ thống thông tin doanh nghiệp: Chương 5 - Đỗ Ngọc Như Loan
44 p | 35 | 3
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn