Chng 2 M hnh ha yu cu ca

  • Slides: 68
Download presentation
Chương 2 Mô hình hóa yêu cầu của bài toán sử dụng use case

Chương 2 Mô hình hóa yêu cầu của bài toán sử dụng use case diagram

Yêu cầu của hệ thống q Những chức năng mà hệ thống phải thực

Yêu cầu của hệ thống q Những chức năng mà hệ thống phải thực hiện. q Những đặc tính mong muốn của người dùng đối với hệ thống. q Những phát biểu về những đề xuất đối với hệ thống mà tất cả các bên tham gia đống ý về các vấn đề của khách hàng phải được giải quyết thỏa đáng. Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 2

Tiến trình phân tích yêu cầu bài toán q Tìm hiểu, khám phá và

Tiến trình phân tích yêu cầu bài toán q Tìm hiểu, khám phá và phân tích các yêu cầu của người dùng đối với hệ thống. q Xây dựng các tài liệu yêu cầu q Kiểm tra tính hợp lệ của các yêu cầu q Quản lý các yêu cầu q Mô hình hóa yêu cầu Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 3

Mục tiêu của phân tích yêu cầu q Yêu cầu thường không được nêu

Mục tiêu của phân tích yêu cầu q Yêu cầu thường không được nêu một cách rõ ràng, don đó người phát triển hệ thống cần phải làm việc với khách hàng và các bên liên quan để khai thác: • Các dịch vụ mà hệ thống cần cung cấp • Những ràng buộc mà hệ thống phải đáp ứng Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 4

Mục tiêu của phân tích yêu cầu q Mục tiêu: • Đảm bảo các

Mục tiêu của phân tích yêu cầu q Mục tiêu: • Đảm bảo các yêu cầu đối với sản phẩm phần mềm được định nghĩa và hiểu một cách rõ ràng. • Thiết lập và duy trì các thỏa thuận về yêu cầu với các bên liên quan • Đảm bảo tất cả các yêu cầu được đáp ứng. • Tài liệu phân tích yêu cầu dùng để kiểm soát và là cơ sở cho việc phát triển phần mềm và sử dụng trong quản lý dự án. • Phát hiện và giải quyết mâu thuẫn giữa yêu cầu • Xác định phạm vi của phần mềm và cách nó tương tác với môi trường Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 5

Các loại tài liệu trong phân tích yêu cầu q Xác định yêu cầu

Các loại tài liệu trong phân tích yêu cầu q Xác định yêu cầu người dùng (URD – User requirement definition) • Xác định những gì người dùng cần cho công việc của họ • Bao gồm yêu cầu doanh nghiệp, quy tắc nghiệp vụ và các ràng buộc khác Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 6

Các loại tài liệu trong phân tích yêu cầu q Đặc tả yêu cầu

Các loại tài liệu trong phân tích yêu cầu q Đặc tả yêu cầu phần mềm (SRS – Software requirement specification) • Một tập hợp các yêu cầu phần mềm: đầy đủ, nhất quán và chính xác từ quan điểm của nhà phát triển • Tài liệu đặc tả yêu cầu dùng làm cơ sở tham chiếu chung của các yêu cầu phần mềm cho khách hàng, nhà phát triển, thử nghiệm và quản lý dự án. Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 7

Các loại yêu cầu q Chức năng - Functional q Giao diện - Interface

Các loại yêu cầu q Chức năng - Functional q Giao diện - Interface q Dữ liệu - Data q Nguồn nhân lực - Human engineering q Chất lượng - Qualification q Nghiệp vụ - Operational q Ràng buộc về thiết kế - Design constraints q An toàn - Safety q Bảo mật - Security, etc. Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 8

Yêu cầu chức năng - Functional requirements q Mô tả sự tương tác giữa

Yêu cầu chức năng - Functional requirements q Mô tả sự tương tác giữa hệ thống và môi trường của nó q Mô tả cách ứng xử của hệ thống với hành vi kích hoạt của người dùng • Có thể sử dụng mô hình - một sự kết hợp của các ký hiệu đồ họa và cấu trúc ngôn ngữ tự nhiên • Sử dụng use case diagram, activity, state diagram • Prototype, . . . Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 9

Yêu cầu phi chức năng - Non. Functional requirements q Mô tả các hạn

Yêu cầu phi chức năng - Non. Functional requirements q Mô tả các hạn chế trên một hệ thống làm hạn chế sự lựa chọn và từ đó đưa ra một giải pháp cho một vấn đề xác định q Các yêu cầu phi chức năng không được mô hình hóa => được chỉ định chỉ sử dụng ngôn ngữ tự nhiên có cấu trúc Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 10

Tính hợp lệ của các yêu cầu q Đánh giá các yêu cầu -

Tính hợp lệ của các yêu cầu q Đánh giá các yêu cầu - Requirements Review • Phân tích thủ công có hệ thống các yêu cầu • Tham gia của nhà phát triển, khách hang, các bên tham gia q Prototyping • Sử dụng mô hình thực thi của hệ thống để kiểm tra yêu cầu q Model Validation • Kiểm tra chất lượng của các mô hình phát được xây dựng trong thời gian phân tích q Test-case generation • Phát triển thử nghiệm đối với các yêu cầu để kiểm tra khả năng kiểm thử Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 11

Quản lý các yêu cầu thay đổi q Yêu cầu thay đổi (CR –

Quản lý các yêu cầu thay đổi q Yêu cầu thay đổi (CR – Change request) • Các yêu cầu từ quan điểm khác nhau thay đổi trong quá trình phát triển • Khách hàng có thể xác định các yêu cầu từ góc độ kinh doanh mâu thuẫn với yêu cầu của người dùng cuối • Môi trường kinh doanh và kỹ thuật của hệ thống thay đổi trong quá trình phát triển hệ thống q Tiến trình yêu cầu thay đổi Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 12

Thuật ngữ - Glossary q Khái niệm: • Một tập hợp các thuật ngữ

Thuật ngữ - Glossary q Khái niệm: • Một tập hợp các thuật ngữ được định nghĩa làm cơ sở cho giao tiếp. • Một từ điển để thực hiện mô hình hóa q Mục đích: • Làm rõ ý nghĩa của từ ngữ hoặc có những hiểu biết chung về các điều khoản giữa các thành viên trong nhóm • Được tạo ra trong quá trình xác định yêu cầu, xác định use case và mô hình hóa khái niệm • Được duy trì trong suốt quá trình phát triển hệ thống Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 13

Thuật ngữ - Glossary q Ví dụ Bài giảng Phân tích thiết kế hệ

Thuật ngữ - Glossary q Ví dụ Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 14

Nội dung trong tài liệu xác định yêu cầu hệ thống 1. Mục đích

Nội dung trong tài liệu xác định yêu cầu hệ thống 1. Mục đích 2. Phạm vi 3. Tổng quan hệ thống 4. Tài liệu tham khảo 5. Xác định các điều khoản, các thuật ngữ chuyên môn 6. Yêu cầu chức năng 7. yêu cầu phi chức năng Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 15

Bài tập q Viết một đặc tả yêu cầu cho một hệ thống bán

Bài tập q Viết một đặc tả yêu cầu cho một hệ thống bán hàng trong siêu thị. Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 16

Mô hình hóa yêu cầu hệ thống sử dụng mô hình use case Bài

Mô hình hóa yêu cầu hệ thống sử dụng mô hình use case Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 17

Use case diagram q Mô tả trực quan các chức năng được cung cấp

Use case diagram q Mô tả trực quan các chức năng được cung cấp bởi hệ thống. q Một Use Case thể hiện một hành động tương tác riêng biệt giữa người dùng (human or machine) và hệ thống. q Use case diagram chứa các thành phần: • Use cases • Actors • Relationships Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 18

Use case diagram q Use case • Một use case đại diện cho một

Use case diagram q Use case • Một use case đại diện cho một chức năng hoàn chỉnh, bao gồm một chuỗi các hoạt động khác nhau mà hệ thống có thể thực hiện bằng cách tương tác với các actor bên ngoài hệ thống. • Các yếu tố của một use case • Kịch bản (scenarios): là một tập các ràng buộc theo mục tiêu người dùng, thường là một chuỗi các giao dịch được thực hiện bởi một hệ thống, có thể nhìn thấy được, đo lường được kết quả. Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 19

Use case diagram q Use Cases • Mô tả hoặc nắm bắt yêu các

Use case diagram q Use Cases • Mô tả hoặc nắm bắt yêu các cầu chức năng của hệ thống • Một use case đại diện cho một chuỗi các hành vi tương tác của hệ thống và các actor bên ngoài. q Ký hiệu use case trong UML • Có dạng hình oval Login • Tên của use case • Sử dụng động từ • Biểu diễn hành vi tương tác của Actor và hệ thống Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 20

Use case diagram q Actor: • Là một thực thể tương tác với hệ

Use case diagram q Actor: • Là một thực thể tương tác với hệ thống, actor có thể là người dùng, hoặc các ứng dụng bên trong, hoặc một hệ thống bên ngoài của hệ thống đang xây dựng q Loại Actor: • Primary Actor: Actor trực tiếp kích hoạt giao tiếp giữa actor và hệ thống. Thông thường là người sử dụng. • Secondary actor: Actor chỉ thực hiện giao tiếp khi được yêu cầu từ hệ thống tại thời điểm thực thi của một use case nào đó Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 21

Use case diagram q Ký hiệu Actor trong UML • Tên actor là một

Use case diagram q Ký hiệu Actor trong UML • Tên actor là một danh từ • Primary Actor Ví dụ Khách hàng • Secondary actor Ví dụ <<Actor>> Tên Actor <<Actor>> Bank IS Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 22

Các mối quan hệ trong use case diagram q Quan hệ giữa Actors và

Các mối quan hệ trong use case diagram q Quan hệ giữa Actors và use cases: Association • Actor tham gia tương tác với hệ thống được mô tả bởi use case. • Nếu quan hệ association có hướng: • Xác định hướng tương tác của actor chính. • Xác định luồng điều khiển (not data flow) Login Sinhvien Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 23

Các mối quan hệ trong use case diagram q Quan hệ giữa Actor và

Các mối quan hệ trong use case diagram q Quan hệ giữa Actor và Actor: • Được sử dụng để xác định vai trò trùng lắp của các Actor • Ví dụ: • Người Administrator và Client thực hiện được tất cả các thao tác của User • Administrator có những thao tác riêng mà User và Client không thực hiện được Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 24

Các mối quan hệ trong use case diagram q Quan hệ giữa Use case

Các mối quan hệ trong use case diagram q Quan hệ giữa Use case với use case • Include • Extend • Generalization/Specification Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 25

Các mối quan hệ trong use case diagram q Include: hành vi của included

Các mối quan hệ trong use case diagram q Include: hành vi của included use case là thành phần của base use case • Hành vi của base use case không hoàn thành nếu không có included use case. • Use case included là bắt buộc (mandatory) Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 26

Các mối quan hệ trong use case diagram q Ví dụ: để thực hiện

Các mối quan hệ trong use case diagram q Ví dụ: để thực hiện hành vi Xem điểm thì bắt buộc phải thực hiện hành vi Đăng nhập Sinhvien Base Use case Included Use case Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 27

Các mối quan hệ trong use case diagram q Extend: extending use case phụ

Các mối quan hệ trong use case diagram q Extend: extending use case phụ thuộc vào base use case. • Extending Use case thường là tùy chọn và kèm theo điều kiện thực hiện. Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 28

Các mối quan hệ trong use case diagram q Ví dụ: sau khi Đăng

Các mối quan hệ trong use case diagram q Ví dụ: sau khi Đăng ký học phần thì sinh viên có thể Xem lịch học (hành vi Xem lịch học là tùy chọn) Sinhvien Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 29

Các mối quan hệ trong use case diagram q Generalization: được sử dụng khi

Các mối quan hệ trong use case diagram q Generalization: được sử dụng khi có hai hoặc nhiều use case có cùng hành vi, cấu trúc và mục đích. q Specialized use cases có cùng hành vi, yêu cầu, ràng buộc • Những thành phần chung nhất được mô tả 1 lần trong general use case • Những thành phần khác nhau được mô tả trong specialized use case q Ký hiệu trong UML Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 30

Các mối quan hệ trong use case diagram q Ví dụ: cùng là hành

Các mối quan hệ trong use case diagram q Ví dụ: cùng là hành vi Thanh toán, khách hàng có thể thực hiện theo nhiều cách khác nhau Thanh toán Khachhang Thanh toán bằng thẻ VISA Thanh toán bằng dịch vụ Paypal Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền Thanh toán bằng thẻ ATM 31

Cách xác định actor q Để xác định đầy đủ actor của hệ thống.

Cách xác định actor q Để xác định đầy đủ actor của hệ thống. Có thể dựa vào các câu hỏi sau: • • Ai sử dụng hệ thống? Ai cài đặt hệ thống? Ai khởi động hệ thống? Ai duy trì hệ thống? Ai tắt hệ thống? Những hệ thống nào khác sử dụng hệ thống này? Ai được thông tin từ hệ thống này? Ai cung cấp thông tin cho hệ thống? Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 32

Cách xác định use case q Dựa trên kịch bản của những hoạt động

Cách xác định use case q Dựa trên kịch bản của những hoạt động bên ngoài có thể nhìn thấy, đo lường được kết quả của giá trị mà các actor mong muốn. q Từ mô tả yêu cầu chức năng của hệ thống. q Tìm các động từ mô tả hành vi tương tác của hệ thống và actor trong phần mô tả hệ thống. Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 33

Cách xác định use case q Có thể dùng các câu hỏi sau đây

Cách xác định use case q Có thể dùng các câu hỏi sau đây • Những chức năng gì mà các actor mong muốn từ hệ thống? • Hệ thống lưu trữ những thông tin gì? Các actor thực hiện những thao tác gì trên những thông tin này? • Hệ thống có cần hiển thị thông báo cho actor về những thay đổi trạng thái bên trong hệ thống không? Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 34

Câu hỏi q Xác định Primary actors và Secondary actors của hệ thống ATM

Câu hỏi q Xác định Primary actors và Secondary actors của hệ thống ATM • Khách hàng • Chủ thẻ VISA • Nhân viên ngân hàng • Hệ thống thông tin ngân hàng (Bank IS) • Hệ thống chứng thực thẻ VISA (VISA AS) q Xác định các use case của hệ thống ATM q Vẽ sơ đồ use case của hệ thống ATM Hệ thống ATM

Đặc tả Use-Case q Một use case đại diện cho một hành vi tương

Đặc tả Use-Case q Một use case đại diện cho một hành vi tương tác hoàn chỉnh, nó bao gồm một chuỗi tuần tự các hoạt động giao tiếp giữa actor và hệ thống q Đặc tả use case nhằm mô tả chi tiết chuỗi các hoạt động để thực hiện hành vi của use case từ lúc bắt đầu đến kết thúc bao gồm các lỗi trong quá trình thực hiện Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 36

Đặc tả Use-Case q Mỗi use case gắn liền với các kịch bản bao

Đặc tả Use-Case q Mỗi use case gắn liền với các kịch bản bao gồm các một chuỗi tuần tự các sự kiện: • Basic flow: một luồng sự kiện thành công chính. • Alternative flows: Có nhiều luồng sự kiện thanh thế • Exceptional flows: Ngoại lệ cho những trường hợp lỗi Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 37

Mẫu nội dung đặc tả Use-Case UCID Mã UC (Duy nhất trong hệ thống,

Mẫu nội dung đặc tả Use-Case UCID Mã UC (Duy nhất trong hệ thống, ví dụ: UC 1) Name Tên use case (cụm danh động từ ngắn gọn) Summary Mô tả vắn tắt hoạt động của use case Preconditions Điều kiện tiên quyết để thực hiện use case Postconditions Điều gì sẽ là đúng sau khi use case thực thi thành công Primary Actor(s) Actor chính thực hiện use case Secondary Actor(s) Actor phụ tương tác với hệ thống tại thời điểm use case thực thi Trigger Các hành động kích hoạt use case Main Scenario Step Action Step # Đây là "kịch bản thành công chính" … Extensions Open Issues Mô tả các bước trong use case thực hiện thành công Step Hoạt động rẽ nhánh Step # Hoạt động thay thế khi hoạt động trong kích bản chính lỗi Issue # Các vấn đề liên quan đến use case cần phải giải quyết Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 38

Bài tập q Hãy viết đăc tả các use case trong hệ thống ATM

Bài tập q Hãy viết đăc tả các use case trong hệ thống ATM • Kiểm tra tài khoản • Rút tiền

Mô hình hóa luồng sự kiện với activity Bài giảng Phân tích thiết kế

Mô hình hóa luồng sự kiện với activity Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 40

Sơ đồ activity q Một sơ đồ hoạt động (activity) dùng để mô hình

Sơ đồ activity q Một sơ đồ hoạt động (activity) dùng để mô hình hóa một cách trực quan các bước thực hiện của một use case. q Các hoạt động trong mô hình có thể được thực hiện tuần tự hoặc đồng thời. q Một sơ đồ hoạt động luôn có một điểm khởi đầu và các điểm kết thúc. Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 41

Các ký hiệu trong sơ đồ Activity q Điểm bắt đầu (Initial State): •

Các ký hiệu trong sơ đồ Activity q Điểm bắt đầu (Initial State): • Biểu diễn điểm khởi đầu cho sơ đồ hoạt động. Đối với sơ đồ hoạt động sử dụng swimlanes, phải đảm bảo các điểm bắt đầu được đặt ở góc trên cùng bên trái của cột đầu tiên. • Ký hiệu trong UML

Các ký hiệu trong sơ đồ Activity q Hoạt động (Activity) • Hoạt động

Các ký hiệu trong sơ đồ Activity q Hoạt động (Activity) • Hoạt động là một hành vi đại diện điều phối dòng chảy của hành động. • Hoạt động (activity) chứa các nút có thể là: • Hoạt động (action) • Đối tượng (object) • Điều khiển (Control) Ký hiệu trong UML • Hành động tại các nút có thể là: • • Chức năng số học. Lời gọi của hành vi. Truyền thông, như gửi các tín hiệu. Thao tác của các đối tượng Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền Activity 43

Các ký hiệu trong sơ đồ Activity q Luồng hoạt động • Minh họa

Các ký hiệu trong sơ đồ Activity q Luồng hoạt động • Minh họa quá trình chuyển đổi từ một trạng thái hoạt động này sang trạng thái hoạt động khác. • Ký hiệu trong UML • Ví dụ: Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 44

Các ký hiệu trong sơ đồ Activity q Nút quyết định • Khi một

Các ký hiệu trong sơ đồ Activity q Nút quyết định • Khi một hoạt động đòi hỏi phải có một quyết định trước khi chuyển sang các hoạt động tiếp theo • Một nút quyết định có một đầu vào nhiều đầu ra, Các nhánh phải được dán nhãn với một biểu thức điều kiện. • Ký hiệu trong UML condition Else condition Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 45

Các ký hiệu trong sơ đồ Activity q Nút Merge • Sự kết hợp

Các ký hiệu trong sơ đồ Activity q Nút Merge • Sự kết hợp của các luồng sự kiện. Các đầu vào không đồng bộ. • Nhiều đầu vào và chỉ có một đầu ra • Ký hiệu trong UML Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 46

Các ký hiệu trong sơ đồ Activity q Đồng bộ hóa (Synchronization) • Nút

Các ký hiệu trong sơ đồ Activity q Đồng bộ hóa (Synchronization) • Nút fork được sử dụng để chia một luồng đến đơn thành nhiều luồng đồng thời. • Ký hiệu trong UML • Nút Join nối nhiều dòng đồng thời trở thành một luồng đi duy nhất. • Ký hiệu trong UML Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 47

Các ký hiệu trong sơ đồ Activity • Fork và Join được sử dụng

Các ký hiệu trong sơ đồ Activity • Fork và Join được sử dụng cùng nhau gọi là đồng bộ hóa. Activity Fork Activity Join Activity Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 48

Các ký hiệu trong sơ đồ Activity q Nút kết thúc (Final State hoặc

Các ký hiệu trong sơ đồ Activity q Nút kết thúc (Final State hoặc End Point) • Nút kết thúc hoạt động cho thấy một hoạt động được hoàn tất. • Một sơ đồ hoạt động có thể có nhiều hơn một nút kết thúc • Ký hiệu trong UML Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 49

Các dạng Activity q Activity Partition (swimlane) • Đại diện cho một số thuộc

Các dạng Activity q Activity Partition (swimlane) • Đại diện cho một số thuộc tính như vị trí mà tại đó một hành vi được thực hiện. • Activity hiển thị bằng ký hiệu swimlane với các dòng thường song, hoặc ngang hoặc thẳng đứng. Bất kỳ các nút hoạt động đặt giữa những dòng này được coi là chứa trong phân vùng đó. Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 50

Các dạng Activity q Sub Activity Bài giảng Phân tích thiết kế hệ thống

Các dạng Activity q Sub Activity Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 51

Bài tập q Sử dụng sơ đồ Activity mô hình hóa các hoạt động

Bài tập q Sử dụng sơ đồ Activity mô hình hóa các hoạt động của use case rút tiền trong hệ thống ATM. q Sử dụng sơ đồ Activity mô hình hóa hoạt động của use case xem điểm trong hệ thống Quản lý điểm của sinh viên Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 52

Mô hình hóa hoạt động của use case với Sequence diagram Bài giảng Phân

Mô hình hóa hoạt động của use case với Sequence diagram Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 53

Sơ đồ tuần tự - Sequence diagram q Sơ đồ tuần tự được sử

Sơ đồ tuần tự - Sequence diagram q Sơ đồ tuần tự được sử dụng trong cả giai đoạn phân tích và thiết kế. q Trong giai đoạn phân tích yêu cầu của bài toán, sơ đồ tuần tự được sử dụng để mô tả luồng sự kiện theo thời gian cấu trúc các hoạt động thực hiện một use case. q Sơ đồ tuần tự biểu diễn chi tiết quan hệ giao tiếp giữa các đối tượng trong quá trình thực hiện use case Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 54

Sơ đồ tuần tự - Sequence diagram q Sơ đồ hoạt động và tuần

Sơ đồ tuần tự - Sequence diagram q Sơ đồ hoạt động và tuần tự trong phân tích yêu cầu bài toán • Sơ đồ hoạt động mô tả một chuỗi các hoạt động theo cấu trúc điều kiện, vòng lặp hoặc đồng thời để thực thi một use case. • Sơ đồ trình tự mô tả chuỗi các thông điệp giao tiếp giữa các đối tượng theo thời gian và cấu trúc logic. Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 55

Các thành phần trong sơ đồ tuần tự q Lifeline là một yếu tố

Các thành phần trong sơ đồ tuần tự q Lifeline là một yếu tố được đặt tên đại diện cho một cá nhân tham gia trong sự tương tác. Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 56

Các thành phần trong sơ đồ tuần tự q Đối tượng tham gia (Participant):

Các thành phần trong sơ đồ tuần tự q Đối tượng tham gia (Participant): đối tượng thực hiện hành động trong sơ đồ trình tự. • Ký hiệu trong UML Oject: Class Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền : Class 57

Các thành phần trong sơ đồ tuần tự q Lifeline: biểu diễn thời gian

Các thành phần trong sơ đồ tuần tự q Lifeline: biểu diễn thời gian sống của đối tượng trong sơ đồ tuần tự, • Kích hoạt (Activation): biểu diễn thời gian một đối tượng đang ở trạng thái hoạt động. • Kết thúc đối tượng (Destroying): đối tượng kết thúc sau khi hoàn tất hoạt động. : Class Oject: Class • Ký hiệu trong UML lifeline Activation Destroying Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 58

Các thành phần trong sơ đồ tuần tự q Thông điệp (Messages): biểu diễn

Các thành phần trong sơ đồ tuần tự q Thông điệp (Messages): biểu diễn giao tiếp giữa các đối tượng. • Thông điệp không đồng bộ: được gửi từ một đối tượng sẽ không chờ thông điệp trả về từ đối tượng nhận trước khi tiếp tục. • Ký hiệu trong UML: • Ví dụ: Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 59

Các thành phần trong sơ đồ tuần tự • Thông điệp đồng bộ: đối

Các thành phần trong sơ đồ tuần tự • Thông điệp đồng bộ: đối tượng gửi thông điệp chờ đến khi thông điệp được xử lý trước khi tiếp tục. • Ký hiệu trong UML: Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 60

Các thành phần trong sơ đồ tuần tự q Return Message • Thông điệp

Các thành phần trong sơ đồ tuần tự q Return Message • Thông điệp trả về kết quả cho đối tượng gửi. • Ký hiệu trong UML return Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 61

Các thành phần trong sơ đồ tuần tự q Self Message • Một một

Các thành phần trong sơ đồ tuần tự q Self Message • Một một cuộc gọi đệ quy của một hoạt động, hoặc một phương thức gọi một phương thức khác trên cùng một đối tượng. • Ký hiệu: Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 62

Các thành phần trong sơ đồ tuần tự q Thời gian sống của một

Các thành phần trong sơ đồ tuần tự q Thời gian sống của một đối tượng • Một đối tượng bắt đầu bằng lệnh create và kết thúc bằng Delete • Creation: biểu diễn bằng mũi tên với nhãn 'new‘ • Một đối tượng được tạo sau khi bắt đầu kịch bản sẽ xuất hiện thấp hơn những đối tượng khác. • Deletion: ký hiệu X tại cuối của lifeline Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 63

Hoạt động tương tác trong sơ đồ tuần tự q Frame: một hộp biểu

Hoạt động tương tác trong sơ đồ tuần tự q Frame: một hộp biểu diễn một phần của sơ đồ tuần tự để thể hiện sự lựa chọn hoặc lặp q hộp xung quanh một phần của biểu đồ trình tự để biết sự lựa chọn hoặc loop • if -> (opt) [condition] • if/else -> (alt) [condition], separated by horizon. Dashed line • loop -> (loop) [condition or items to loop over] Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 64

Hoạt động tương tác trong sơ đồ tuần tự q Alt • Biểu diễn

Hoạt động tương tác trong sơ đồ tuần tự q Alt • Biểu diễn cho một sự lựa chọn hoặc thay thế của hành vi. • Ví dụ: Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 65

Hoạt động tương tác trong sơ đồ tuần tự q Option • Đại diện

Hoạt động tương tác trong sơ đồ tuần tự q Option • Đại diện cho một sự lựa chọn của hành vi mà một trong hai (duy nhất) toán hạng sẽ xảy ra hoặc không có gì xảy ra. • Ví dụ: Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 66

Hoạt động tương tác trong sơ đồ tuần tự q Loop • Vòng lặp

Hoạt động tương tác trong sơ đồ tuần tự q Loop • Vòng lặp sẽ được thực hiện chính xác số lần quy định. Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 67

Hoạt động tương tác trong sơ đồ tuần tự q Ví dụ: sơ đồ

Hoạt động tương tác trong sơ đồ tuần tự q Ví dụ: sơ đồ tuần tự tính tiền hóa đơn (Order) Bài giảng Phân tích thiết kế hệ thống - GV: Từ Thị Xuân Hiền 68