Bài đăng nổi bật


Mô hình hóa chức năng đưa ra viễn cảnh quá trình của mô hình phân tích hướng đối tượng và tổng quan về những gì hệ thống phải làm. Nó xác định chức năng của các quy trình nội bộ trong hệ thống với sự trợ giúp của Sơ đồ luồng dữ liệu (DFDs). Nó mô tả đạo hàm chức năng của các giá trị dữ liệu mà không cho biết chúng được lấy như thế nào khi chúng được tính toán hoặc tại sao chúng cần được tính toán.

Sơ đồ luồng dữ liệu

Mô hình hóa chức năng được thể hiện thông qua hệ thống phân cấp của DFD. DFD là một biểu diễn đồ họa của một hệ thống hiển thị các đầu vào cho hệ thống, xử lý các đầu vào, đầu ra của hệ thống cũng như các kho dữ liệu nội bộ. DFDs minh họa chuỗi các phép biến đổi hoặc tính toán được thực hiện trên các đối tượng hoặc hệ thống, và các điều khiển bên ngoài và các đối tượng có ảnh hưởng đến phép biến đổi.
Rumbaugh và cộng sự. đã định nghĩa DFD là, Một sơ đồ luồng dữ liệu là một biểu đồ cho thấy luồng giá trị dữ liệu từ các nguồn của chúng trong các đối tượng thông qua các quá trình biến đổi chúng thành đích của chúng trên các đối tượng khác.
Bốn phần chính của DFD là -
  • Quy trình,
  • Luồng dữ liệu,
  • Diễn viên, và
  • Kho dữ liệu.
Các phần khác của DFD là -
  • Những ràng buộc và
  • Kiểm soát dòng chảy.

Các tính năng của DFD

Quy trình

Các quy trình là các hoạt động tính toán biến đổi các giá trị dữ liệu. Toàn bộ hệ thống có thể được hình dung như một quy trình cấp cao. Một quá trình có thể được chia thành các thành phần nhỏ hơn. Quá trình cấp thấp nhất có thể là một chức năng đơn giản.
Biểu diễn trong DFD - Một quá trình được biểu diễn dưới dạng hình elip với tên được viết bên trong nó và chứa một số giá trị dữ liệu đầu vào và đầu ra cố định.
Ví dụ - Hình dưới đây cho thấy một quá trình Compute_HCF_LCM chấp nhận hai số nguyên làm đầu vào và đầu ra HCF (hệ số chung cao nhất) và LCM (bội số chung nhỏ nhất).
DFD để tính HCM và LCM

Luồng dữ liệu

Luồng dữ liệu đại diện cho luồng dữ liệu giữa hai quá trình. Nó có thể là giữa một tác nhân và một quy trình, hoặc giữa một kho lưu trữ dữ liệu và một quy trình. Luồng dữ liệu biểu thị giá trị của một mục dữ liệu tại một số điểm tính toán. Giá trị này không bị thay đổi bởi luồng dữ liệu.
Biểu diễn trong DFD - Luồng dữ liệu được biểu thị bằng một vòng cung có hướng hoặc mũi tên, được gắn nhãn với tên của mục dữ liệu mà nó mang theo.
Trong hình trên, Integer_a và Integer_b đại diện cho các luồng dữ liệu đầu vào cho quá trình, trong khi LCM và HCF là các luồng dữ liệu đầu ra.
Một luồng dữ liệu có thể được rẽ nhánh trong các trường hợp sau -
  • Giá trị đầu ra được gửi đến một số nơi như trong hình dưới đây. Ở đây, các mũi tên đầu ra không được ghi nhãn vì chúng biểu thị cùng một giá trị.
  • Luồng dữ liệu chứa một giá trị tổng hợp và mỗi thành phần được gửi đến các vị trí khác nhau như trong hình dưới đây. Ở đây, mỗi thành phần ngã ba được dán nhãn.
Lưu lượng dữ liệu

Diễn viên

Các tác nhân là các đối tượng hoạt động tương tác với hệ thống bằng cách tạo dữ liệu và đưa chúng vào hệ thống hoặc tiêu thụ dữ liệu do hệ thống tạo ra. Nói cách khác, các tác nhân đóng vai trò là nguồn và phần chìm của dữ liệu.
Đại diện trong DFD - Một diễn viên được đại diện bởi một hình chữ nhật. Các diễn viên được kết nối với đầu vào và đầu ra và nằm trên ranh giới của DFD.
Ví dụ - Hình dưới đây cho thấy các tác nhân, cụ thể là Khách hàng và Sales_Clerk trong một hệ thống bán hàng đối ứng.
Diễn viên trong DFD

Kho dữ liệu

Lưu trữ dữ liệu là các đối tượng thụ động hoạt động như một kho lưu trữ dữ liệu. Không giống như các diễn viên, họ không thể thực hiện bất kỳ hoạt động. Chúng được sử dụng để lưu trữ dữ liệu và lấy dữ liệu được lưu trữ. Chúng đại diện cho cấu trúc dữ liệu, tệp đĩa hoặc bảng trong cơ sở dữ liệu.
Đại diện trong DFD - Một kho lưu trữ dữ liệu được thể hiện bằng hai dòng song song chứa tên của kho lưu trữ dữ liệu. Mỗi kho lưu trữ dữ liệu được kết nối với ít nhất một quy trình. Mũi tên đầu vào chứa thông tin để sửa đổi nội dung của kho lưu trữ dữ liệu, trong khi mũi tên đầu ra chứa thông tin được lấy từ kho lưu trữ dữ liệu. Khi một phần thông tin được lấy, mũi tên đầu ra được dán nhãn. Một mũi tên không ghi nhãn biểu thị việc truy xuất dữ liệu đầy đủ. Một mũi tên hai chiều ngụ ý cả truy xuất và cập nhật.
Ví dụ - Hình dưới đây cho thấy một cửa hàng dữ liệu, Sales_Record, lưu trữ các chi tiết của tất cả doanh số. Đầu vào của cửa hàng dữ liệu bao gồm các chi tiết về doanh số như mặt hàng, số tiền thanh toán, ngày, v.v ... Để tìm doanh số trung bình, quy trình lấy các hồ sơ bán hàng và tính trung bình.
Lưu trữ dữ liệu trong DFD

Những ràng buộc

Các ràng buộc xác định các điều kiện hoặc hạn chế cần được thỏa mãn theo thời gian. Chúng cho phép thêm các quy tắc mới hoặc sửa đổi các quy tắc hiện có. Các ràng buộc có thể xuất hiện trong cả ba mô hình phân tích hướng đối tượng.
  • Trong Mô hình đối tượng, các ràng buộc xác định mối quan hệ giữa các đối tượng. Họ cũng có thể xác định mối quan hệ giữa các giá trị khác nhau mà một đối tượng có thể mất vào các thời điểm khác nhau.
  • Trong Mô hình động, các ràng buộc xác định mối quan hệ giữa các trạng thái và sự kiện của các đối tượng khác nhau.
  • Trong Mô hình hóa chức năng, các ràng buộc xác định các hạn chế đối với các phép biến đổi và tính toán.
Đại diện - Một ràng buộc được hiển thị dưới dạng một chuỗi trong dấu ngoặc nhọn.
Ví dụ - Hình dưới đây cho thấy một phần DFD để tính lương của nhân viên của một công ty đã quyết định khuyến khích tất cả nhân viên của bộ phận bán hàng và tăng lương cho tất cả nhân viên của phòng nhân sự. Có thể thấy rằng ràng buộc {Dept: Sales} khiến cho tính toán khuyến khích chỉ được tính khi bộ phận là doanh số và ràng buộc {Dept: HR} khiến mức tăng chỉ được tính nếu bộ phận là HR.
Những ràng buộc trong DFD

Kiểm soát dòng

Một quy trình có thể được liên kết với một giá trị Boolean nhất định và chỉ được đánh giá nếu giá trị đó là đúng, mặc dù đó không phải là đầu vào trực tiếp cho quy trình. Các giá trị Boolean này được gọi là các luồng điều khiển.
Biểu diễn trong DFD - Các luồng điều khiển được biểu thị bằng một cung tròn chấm từ quy trình tạo ra giá trị Boolean đến quy trình do chúng kiểm soát.
Ví dụ - Hình dưới đây biểu thị DFD cho phép chia số học. Số chia được kiểm tra khác không. Nếu nó không bằng 0, luồng điều khiển OK có giá trị True và sau đó quá trình Phân chia sẽ tính toán Quotient và phần còn lại.
Kiểm soát dòng chảy trong DFD

Phát triển mô hình DFD của một hệ thống

Để phát triển mô hình DFD của một hệ thống, một hệ thống phân cấp của DFD được xây dựng. DFD cấp cao nhất bao gồm một quy trình duy nhất và các tác nhân tương tác với nó.
Ở mỗi cấp thấp hơn liên tiếp, chi tiết hơn nữa dần dần được bao gồm. Một quy trình được phân tách thành các quy trình phụ, luồng dữ liệu giữa các quy trình phụ được xác định, luồng điều khiển được xác định và lưu trữ dữ liệu được xác định. Trong khi phân tách một quy trình, luồng dữ liệu vào hoặc ra khỏi quy trình phải khớp với luồng dữ liệu ở cấp độ tiếp theo của DFD.
Ví dụ - Chúng ta hãy xem xét một hệ thống phần mềm, Phần mềm bán buôn, tự động hóa các giao dịch của một cửa hàng bán buôn. Các cửa hàng bán trong bulks và có một khách hàng bao gồm các thương nhân và chủ cửa hàng bán lẻ. Mỗi khách hàng được yêu cầu đăng ký với các chi tiết của mình và được cung cấp một mã khách hàng duy nhất, C_Code. Sau khi bán hàng xong, cửa hàng đăng ký thông tin chi tiết và gửi hàng đi. Mỗi năm, cửa hàng phân phối quà tặng Giáng sinh cho khách hàng của mình, bao gồm một đồng bạc hoặc một đồng vàng tùy thuộc vào tổng doanh số và quyết định của chủ sở hữu.
Mô hình chức năng cho Phần mềm bán buôn được đưa ra dưới đây. Hình dưới đây cho thấy DFD cấp cao nhất. Nó cho thấy phần mềm là một quá trình duy nhất và các tác nhân tương tác với nó.
Các tác nhân trong hệ thống là -
  • Khách hàng
  • Nhân viên bán hàng
  • Người tuyên truyền
DFD của cửa hàng bán buôn
Trong DFD cấp độ tiếp theo, như trong hình dưới đây, các quy trình chính của hệ thống được xác định, các kho lưu trữ dữ liệu được xác định và sự tương tác của các quy trình với các tác nhân và lưu trữ dữ liệu được thiết lập.
Trong hệ thống, ba quy trình có thể được xác định, đó là -
  • Đăng ký khách hàng
  • Quy trình bán hàng
  • Quà tặng
Các cửa hàng dữ liệu sẽ được yêu cầu là -
  • Chi tiết khách hàng
  • Chi tiết bán hàng
  • Chi tiết quà tặng
DFD của phần mềm bán buôn
Hình dưới đây cho thấy các chi tiết của quá trình Đăng ký khách hàng. Có ba quy trình trong đó, Xác minh chi tiết, Tạo C_Code và Cập nhật chi tiết khách hàng. Khi các chi tiết của khách hàng được nhập vào, họ được xác minh. Nếu dữ liệu chính xác, C_Code được tạo và lưu trữ dữ liệu Chi tiết khách hàng được cập nhật.
DFD của quá trình khách hàng
Hình dưới đây cho thấy sự mở rộng của quy trình Quà tặng của Ascertain. Nó có hai quy trình trong đó, Tìm Tổng doanh số và Quyết định loại tiền quà tặng. Quy trình Tìm tổng doanh số tính toán tổng doanh số hàng năm tương ứng với từng khách hàng và ghi lại dữ liệu. Lấy hồ sơ này và quyết định của chủ sở hữu làm đầu vào, các đồng tiền quà tặng được phân bổ thông qua quy trình Loại tiền quà tặng quyết định.
DFD của quá trình tặng quà

Ưu điểm và nhược điểm của DFD

Ưu điểmNhược điểm
DFD mô tả ranh giới của một hệ thống và do đó rất hữu ích trong việc mô tả mối quan hệ giữa các đối tượng bên ngoài và các quy trình trong hệ thống.DFDs mất nhiều thời gian để tạo ra, điều này có thể không khả thi cho các mục đích thực tế.
Họ giúp người dùng có kiến ​​thức về hệ thống.DFD không cung cấp bất kỳ thông tin nào về hành vi phụ thuộc thời gian, nghĩa là, họ không chỉ định khi nào các phép biến đổi được thực hiện.
Các đại diện đồ họa phục vụ như một kế hoạch chi tiết cho các lập trình viên để phát triển một hệ thống.Họ không đưa ra bất kỳ ánh sáng nào về tần suất tính toán hoặc lý do tính toán.
DFD cung cấp thông tin chi tiết về các quy trình hệ thống.Việc chuẩn bị DFD là một quá trình phức tạp cần chuyên môn đáng kể. Ngoài ra, rất khó cho một người không có kỹ thuật để hiểu.
Chúng được sử dụng như một phần của tài liệu hệ thống.Phương pháp chuẩn bị là chủ quan và để lại phạm vi rộng lớn không chính xác.

Mối quan hệ giữa các mô hình đối tượng, động và chức năng

Mô hình đối tượng, Mô hình động và Mô hình chức năng bổ sung cho nhau để phân tích hướng đối tượng hoàn chỉnh.
  • Mô hình hóa đối tượng phát triển cấu trúc tĩnh của hệ thống phần mềm về các đối tượng. Do đó, nó cho thấy những người làm trò chơi trên mạng của một hệ thống.
  • Mô hình động phát triển hành vi tạm thời của các đối tượng để phản ứng với các sự kiện bên ngoài. Nó cho thấy các chuỗi các hoạt động được thực hiện trên các đối tượng.
  • Mô hình chức năng cung cấp một cái nhìn tổng quan về những gì hệ thống nên làm.

Mô hình chức năng và mô hình đối tượng

Bốn phần chính của Mô hình chức năng theo mô hình đối tượng là -
  • Quy trình - Các quy trình ngụ ý các phương thức của các đối tượng cần được thực hiện.
  • Diễn viên - Diễn viên là đối tượng trong mô hình đối tượng.
  • Cửa hàng dữ liệu - Đây là các đối tượng trong mô hình đối tượng hoặc thuộc tính của đối tượng.
  • Luồng dữ liệu - Luồng dữ liệu đến hoặc từ các tác nhân thể hiện các hoạt động trên hoặc bởi các đối tượng. Luồng dữ liệu đến hoặc từ các cửa hàng dữ liệu đại diện cho các truy vấn hoặc cập nhật.

Mô hình chức năng và mô hình động

Mô hình động nêu rõ khi các hoạt động được thực hiện, trong khi mô hình chức năng cho biết cách chúng được thực hiện và các đối số nào là cần thiết. Vì các tác nhân là các đối tượng hoạt động, mô hình động phải chỉ định khi nó hoạt động. Các kho lưu trữ dữ liệu là các đối tượng thụ động và chúng chỉ đáp ứng với các cập nhật và truy vấn; do đó mô hình động không cần chỉ định khi chúng hành động.

Mô hình đối tượng và mô hình động

Mô hình động hiển thị trạng thái của các đối tượng và các hoạt động được thực hiện trên các sự kiện và các thay đổi tiếp theo trong các trạng thái. Trạng thái của đối tượng là kết quả của những thay đổi được hiển thị trong mô hình đối tượng.

Post a Comment

أحدث أقدم