2010-05-15 30 views
23

Tôi đang tạo sơ đồ ca sử dụng cho một hệ thống mới. Tôi tự hỏi khi một hệ thống nên được bao gồm như là một diễn viên trong sơ đồ ca sử dụng?Khi một hệ thống nên được bao gồm như một diễn viên trong sơ đồ ca sử dụng?

Cảm ơn.

+0

Chủ đề này cũng có thể giúp làm rõ khi nào đại diện cho các hệ thống là diễn viên: [Sơ đồ trường hợp sử dụng UML: Tham khảo] (http://msdn.microsoft.com/en-us/library/dd409432.aspx) –

Trả lời

15

Như đã nêu trong câu trả lời khác, một diễn viên là một hệ thống hoặc vai trò tương tác với hệ thống đang được phát triển. Bạn nên bao gồm một hệ thống như một diễn viên trong một trường hợp sử dụng nếu nó nằm ngoài hệ thống bạn đang phát triển và nếu nó tương tác trực tiếp với hệ thống bạn đang phát triển.

Điều này rất quan trọng vì bạn cần phải xác định ranh giới của hệ thống, có nghĩa là phạm vi và giao diện của nó. Bao gồm một hệ thống như một diễn viên sẽ nêu rõ yêu cầu cho hệ thống của bạn đang được phát triển để cung cấp một giao diện phù hợp cho hệ thống diễn viên đó.

+0

Cơ sở dữ liệu của hệ thống một trường hợp sử dụng như lưu trữ dữ liệu hoặc một diễn viên bên ngoài do nó nhận được đầu vào hoặc cho đầu ra cho hệ thống? – commonSenseCode

+0

Thông thường, cơ sở dữ liệu được coi là nằm trong ranh giới hệ thống, tức là nó là một phần của hộp đen tương tác với (các) tác nhân và không phải là một diễn viên. Nhưng có những ngoại lệ. Giả sử bạn thiết kế một hệ thống mới được kết nối với một cơ sở dữ liệu hiện có vẫn còn nguyên trạng, thì bạn có thể xem xét rằng db là một tác nhân. Nhưng hãy làm điều này chỉ khi nó có liên quan cho các bên liên quan đọc các trường hợp sử dụng của bạn. –

13

Những người khác nhau có triết lý khác nhau về cách mô hình đúng trong UML (điều này không đáng ngạc nhiên vì UML đã được chuẩn hóa theo ủy ban).

Tôi sử dụng diễn viên để nắm bắt mọi "thứ" (loại người, loại hệ thống) có thể tương tác với hệ thống tôi đang thiết kế và thấy chúng hữu ích để tạo sự hiểu biết chung giữa tất cả các bên liên quan về cách hệ thống mới tương tác với.

Tôi khuyên bạn nên tạo một diễn viên cho mọi thứ bạn biết sẽ tương tác với hệ thống và theo dõi diễn viên đó đối với mọi trường hợp sử dụng mà diễn viên có thể thực hiện. Bằng cách đó, bạn có được sự hiểu biết đầy đủ về những người có thể làm những gì.

3

Hệ thống không bao giờ là diễn viên trong mô hình ca sử dụng. Bạn phải suy nghĩ về điều đang kích hoạt hệ thống đang được điều tra để thực hiện một quy trình. Bản thân hệ thống là câm và không thể tự kích hoạt nó thành hành động. Nó chỉ có thể được kích hoạt bởi người dùng hoặc theo thời gian. Nếu bạn nghĩ rằng hệ thống đang kích hoạt hành động thì có thể nó sẽ là Thời gian là diễn viên. Ví dụ, một quá trình được kích hoạt để chạy khi nhận được một tin nhắn điện tử. Quá trình này hoàn toàn tự động và không được kích hoạt bởi một người dùng nói với hệ thống rằng thông điệp đã đến để diễn viên là ai? Nó không phải là hệ thống mà là Thời gian. Điều bạn phải tưởng tượng là có một quy trình tìm kiếm sự xuất hiện của thông điệp điện tử và điều này đang xem xét các khoảng thời gian cụ thể, ví dụ: mỗi giây hoặc mỗi phút hoặc mỗi tháng một lần vv Vì vậy, đó là Thời gian kích hoạt quá trình chạy khi nhận được tin nhắn điện tử.

+0

Bạn tập trung vào việc kích hoạt và Gabriel Ščerbák tập trung vào ranh giới và phạm vi. Cả hai người đều chỉ dẫn những điều tốt đẹp. – Alireza

+0

Có. Đặc điểm kỹ thuật nêu rõ rằng, bạn có thể tải xuống từ OMG và kiểm tra nó. Các hệ thống bên ngoài có thể được mô tả như là các tác nhân của sơ đồ ca sử dụng. Và UML 2.5 chính thức định nghĩa rằng một ca sử dụng không có các tác nhân được kích hoạt bởi chủ đề nó được chứa trong (ví dụ một công việc đã lên lịch). – BonanzaOne

Các vấn đề liên quan