Bài giảng Phân tích và thiết kế hệ thống thông tin: Phần 2 - Nguyễn Anh Hào
lượt xem 3
download
Bài giảng "Phân tích và thiết kế hệ thống thông tin - Phần 2: Mô hình hóa bằng UML" cung cấp cho người học các kiến thức: Use case, object relation ship model, functional model, stat model. Mời các bạn cùng tham khảo nội dung chi tiết.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Phân tích và thiết kế hệ thống thông tin: Phần 2 - Nguyễn Anh Hào
- Phân tích & thiết kế H.T.T.T Phần 2: Mô hình hóa bằng UML Nguyễn Anh Hào Khoa CNTT2 – HV CNBCVT Cơ sở Tp.HCM 0913609730 – nahao@ptithcm.edu.vn
- Nội dung bài giảng 2 1. USE CASE 2. OBJECT RELATION SHIP MODEL 3. FUNCTIONAL MODEL 4. STAT MODEL
- USE CASE 3 • Ý nghĩa • Cách diễn tả lược đồ use case – Quan hệ giữa các use cases – Quan hệ giữa các actors • Tham khảo thêm: UML Use Case Diagrams: Tips and FAQ http://www.andrew.cmu.edu/course/90-754/umlucdfaq.html
- Use case 4 • Một goal (mục đích) có giá trị sử dụng (ích lợi) nào đó cho actors có tương tác trong usecase. • Một actor (tác nhân) là một đối tượng bên ngoài hệ thống có tương tác với hệ thống. - Actor: users, thiết bị ngoại vi, timer,… • Một use case là một [chuổi] tương tác giữa hệ thống và actor, để hiện thực một goal. – Nó đặc tả một chuổi hành động (ie, chức năng) mà hệ thống thực hiện cho các actors – Nó đặc tả một chuổi tương tác (ie, kịch bản) giữa hệ thống với một hoặc nhiều actors.
- Use case 5 • Nhìn từ bên ngoài, hệ thống là một tập hợp các use cases, mỗi use case liên kết với một chức năng (dịch vụ) của hệ thống. Một use case diễn tả một dịch vụ được cung cấp từ một (hoặc một số) đối tượng trong hệ thống. Account management system Monitor account Bank teller Open account Close account Bank manager Adjust errors
- Quan hệ giữa các use case 6 • Tổng quát hóa : Use case A là một sự tổng quát hóa của use case B nếu use case B là một thể hiện cụ thể hóa của use case A. Manage Account A B Adjust Error Open Account Close Account
- Quan hệ giữa các use case 7 hoặc : Use case A ‘include’ use case B khi A cần phải sử dụng use case B (B phải có cho A). : Use case A ‘extend’ use case C nếu C là một sự mở rộng xử lý của A (A có thể cần C, có thể không). Open account Request Catalog A > C > > B > Supply Supply Customer data Initial balance Supply Account type
- Quan hệ giữa các actors 8 • Tổng quát hóa: Nếu Actor A là một sự tổng quát hóa của actor B và C thì những gì A thực hiện được trên hệ thống, các actor B và C cũng làm được. A Bank Employee Monitor Accounts B C Bank Teller Bank Manager
- Thiết lập use cases 9 1. Actors và vai trò trên hệ thống (use cases), có thể là – Users của hệ thống – Ứng dụng bên ngoài hệ thống – Thiết bị bên ngoài có tương tác với hệ thống – Sự kiện kích hoạt hệ thống theo thời gian 2. Quan hệ giữa các use cases (incl./ext./gen.) 3. Quan hệ giữa các actors (gen.) 4. Lược đồ usecase là để tóm tắt (hệ thống hóa) những gì xãy ra giữa hệ thống với môi trường bên ngoài – … cũng cần bổ sung thêm thông tin bằng Glossary
- Lược đồ use case 10 Lược đồ use case cho hệ thống quản lý tài khoản ngân hàng Bank Employee Monitor Account Manage Account Bank Teller Bank Manager Open Account Adjust Error Close Account
- OBJECT MODEL 11 • Nhìn kiến trúc tĩnh (=các bất biến) của hệ thống • Lớp đối tượng (Object model) – Thuộc tính – Hành vi, dịch vụ • Các quan hệ giữa các lớp (Object Relation Ship) – Tổng quát hóa – Kết tập – Liên kết
- Phân lớp cho đối tượng 12 • Nhóm các đối tượng cùng chung một số đặc điểm vào trong một lớp = lớp đối tượng. Objects Class Bill PERSON Classify 12 Main St. Name Address Joe Instantiate 688 Sun Ct. Sue 155 First St.
- Đóng gói (Encapsulation) 13 • Là cơ chế gắn kết trạng thái của đối tượng và các hành vi của đối tượng vào trong một thể thống nhất (đóng gói). Việc đóng gói giúp phân lập những gì thuộc đối tượng và không thuộc đối tượng, để bảo vệ đối tượng. • dịch vụ = hành vi cung cấp giá trị sử dụng cho bên ngoài CIRCLE Chỉ cho Move() và Scale() thay đổi giá trị, không cho phép cập nhật từ ngoài Location Radius Không cho phép sử dụng từ ngoài Draw() Move() Các dịch vụ của CIRCLE Scale()
- Phương pháp tìm các đối tượng 14 1. Sử dụng vật thể (các khái niệm vật chất quen thuộc) – Xác định các vật thể, như con người, vật dụng, tổ chức (truờng học, bệnh viện, công ty,…), vị trí địa lý, bản báo cáo,… trong phạm vi của vấn đề đang khảo sát – Xác định các đối tượng và lớp đối tượng tương ứng với vật thể 2. Sử dụng cách phân rã đối tượng – Tìm kết tập hoặc lớp đối tượng – Phân rã (chuyên biệt hóa) thành các đối tượng thành phần 3. Sử dụng cách tổng quát hóa đối tượng – Xác định các đối tượng hoặc lớp đối tượng trong vấn đề – Tìm các đối tượng có những thuộc tính và dịch vụ tương tự nhau để tổng quát hóa thành lớp đối tượng trừu tượng mà các đối tượng đã biết có thể kế thừa được
- Xác định thuộc tính của đối tượng 15 • Thuộc tính: Dữ liệu gì làm đối tượng có thể nhận biết được trong môi trường hoặc sở hữu như tài sản riêng. 1. Đối tượng được mô tả tổng quát như thế nào ? 2. Phần nào trong mô tả là hữu ích cho bài toán ? 3. Vậy đặc tả tối thiểu cho đối tượng trong phạm vi bài toán đang giải quyết là gì ? Các loại thuộc tính: – Thuộc tính mô tả: là các facts của đối tượng được nhìn từ bên ngoài (môi trường). Vd: Jan nặng thêm 1 kg. – Thuộc tính định danh: là các thuộc tính để phân biệt đối tượng; một đối tượng có nhiều tên gọi và khi tên gọi thay đổi, đối tượng vẫn tồn tại như trước
- Xác định thuộc tính của đối tượng 16 1. Thuộc tính của đối tượng phải phù hợp với ý nghĩa của đối tượng trong ngữ cảnh mà đối tượng đang tồn tại. – Vd: năm kinh nghiệm và tuổi của một lập trình viên. 2. Có giá trị ở mọi thời điểm. 3. Không chứa cấu trúc bên trong. 4. Là đặc tính của toàn bộ đối tượng chứ không chỉ của thành phần trong đối tượng. – VD: Laptop gồm CPU, bàn phím, màn hình, mouse pad. Kích thước của Laptop là thuộc tính của toàn bộ laptop, không phải của màn hình.
- Xác định dịch vụ của đối tượng 17 • Dịch vụ: là công việc cần thực hiện cho đối tượng khác, được kích hoạt qua cơ chế truyền thông điệp và được định nghĩa qua giao tiếp, gồm: 1. Tên gọi của dịch vụ 2. Thông số: là những gì đối tượng cần (nhưng chưa có sẵn) để thực hiện dịch vụ 3. Giá trị trả về là giá trị cung cấp cho đối tượng khác 4. Ngoại lệ :những trường hợp bị từ chối thực hiện Trong quá trình phân tích và thiết kế, chỉ có tên gọi của dịch vụ là cần phải cân nhắc kỹ về ý nghĩa của nó trong phạm vi của bài toán; còn các thông số, giá trị trả về và các ngoại lệ sẽ dần dần được tinh chỉnh tùy theo mức độ cài đặt về phương diện kỹ thuật.
- Xác định hành vi của đối tượng 18 • Hành vi: là một tập các hành động mà đối tượng cần thực hiện để cung cấp dịch vụ, được định nghĩa trên 3 yếu tố: 1. Đầu vào (thông số của dịch vụ) 2. Đầu ra (kết quả trả về) 3. Các hành động và trạng thái tương ứng 1. Hành vi tĩnh (static behavior) Hành vi của đối tượng không bị ảnh hưởng (không thay đổi tính chất xử lý) bởi trạng thái của nó. Vd: lấy căn bậc 2. Hành vi tĩnh của đối tượng được diễn tả bằng lược đồ hoạt động (activity diagram). 2. Hành vi động (dynamic behavior) Hành vi của đối tượng bị thay đổi tùy theo trạng thái của đối tượng tại thời điểm phát sinh sự kiện kích hoạt.Vd: nhấn nút ‘mod’ của đồng hồ điện tử : time – alarm – eslap – timer – setting. Hành vi động của đối tượng được diễn tả bằng lược đồ trạng thái (state diagram).
- OBJECT RELATION SHIP MODEL19 • Đối tượng có 3 loại quan hệ cơ bản sau 1. Tổng quát hóa (generalization), ví dụ: cha con. 2. Kết tập (aggregation), ví dụ: xe hơi. 3. Liên kết (association), ví dụ: sở hữu. Xác định các quan hệ giữa các lớp đối tượng là để tìm ra khả năng hợp tác của đối tượng trong miền cộng tác (các lược đồ cộng tác/giao tiếp (uml 2.0), tuần tự, hoạt động, trạng thái).
- Tổng quát hóa, cụ thể hóa 20 ~ Cấu trúc diễn tả sự giống nhau giữa các lớp (thuộc tính và các dịch vụ), tạo thành sự kế thừa • Tổng quát hóa: các lớp (con) có chung đặc tính & hành vi của lớp cha. • Cụ thể hóa: lớp con thừa kế toàn bộ đặc điểm của lớp cha PERSON PROGRAMMING Class hierarchy Name IT-Knowlegde Address ExecProgram( ) EMPLOYEE PROGRAMER Salary Experience YrsExperience
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Phân tích và thiết kế hệ thống thông tin: Chương 3 - PGS.TS. Nguyễn Mậu Hân
134 p | 54 | 7
-
Bài giảng Phân tích và thiết kế thuật toán: Bài 4 – Hà Đại Dương
23 p | 38 | 7
-
Bài giảng Phân tích và thiết kế hệ thống: Chương 4.1
30 p | 84 | 5
-
Bài giảng Phân tích và thiết kế hệ thống thông tin: Chương 1 - PGS.TS. Nguyễn Mậu Hân
82 p | 62 | 4
-
Bài giảng Phân tích và thiết kế hệ thống thông tin: Phân 1 - ĐH Phạm Văn Đồng
62 p | 64 | 4
-
Bài giảng Phân tích và thiết kế thuật toán: Bài 2 – Hà Đại Dương
25 p | 48 | 4
-
Bài giảng Phân tích và thiết kế thuật toán: Bài 3 – Hà Đại Dương
26 p | 40 | 4
-
Bài giảng Phân tích và thiết kế hệ thống: Chương 1 - Nguyễn Nhật Quang
12 p | 22 | 3
-
Bài giảng Phân tích và thiết kế hệ thống: Chương 5 - Nguyễn Nhật Quang
35 p | 15 | 3
-
Bài giảng Phân tích và thiết kế hệ thống: Chương 9 - Nguyễn Nhật Quang
44 p | 13 | 3
-
Bài giảng Phân tích và thiết kế hệ thống: Chương 3.1
11 p | 79 | 3
-
Bài giảng Phân tích và thiết kế mạng: Chương 3 – Vũ Chí Cường
25 p | 37 | 3
-
Bài giảng Phân tích và thiết kế mạng: Chương 2 – Vũ Chí Cường
17 p | 55 | 3
-
Bài giảng Phân tích và thiết kế hệ thống: Chương 10 - Nguyễn Nhật Quang
58 p | 15 | 3
-
Bài giảng Phân tích và thiết kế thuật toán: Bài 1 – Hà Đại Dương
18 p | 38 | 3
-
Bài giảng Phân tích và thiết kế hệ thống: Chương 3.2
19 p | 80 | 3
-
Bài giảng Phân tích và thiết kế thuật toán
26 p | 127 | 2
-
Bài giảng Phân tích và thiết kế mạng: Chương 1 – Vũ Chí Cường
14 p | 39 | 2
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