Tải bản đầy đủ (.pdf) (79 trang)

Use-Case Analysis

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (9.26 MB, 79 trang )

PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
1
Phân Tích và Thiết kế hệ thống
Sử Dụng UML
Use-Case Analysis
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
2
Muc tiêu: Use-Case Analysis
w Tìm hiểu mục đích của công đoạn Use-Case
Analysis vò trí của nó trong chu kỳ sống của
QT PTPM
w Xác đònh các class thực hiện một use- case
flow of events
w Phân phối các hành vi (behaviour) của use-
case về các class của nó, thông qua việc xác
đònh nhiệm vụ của các class
w Phát triển các use-case realization mô hình
hóa collaboration giữa các thể hiện của các
class đã xác đònh
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
3
Architect
Designer
Architectural
Analysis
Architecture
Reviewer
Review the


Design
Review the
Architecture
Use-Case
Analysis
Architectural
Design
Describe
Concurrency
Describe
Distribution
Class
Design
Subsystem Design
Use-Case
Design
Design
Reviewer
Use-Case Analysis trong ngữ cảnh
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
4
Supplementary
Specifications
Use-Case Realization
(identified)
Use-Case Realization
(developed)
Tổng quan về Use-Case Analysis
Glossary

Use-Case Model
Use-Case
Analysis
Use-Case
Modeling Guidelines
Design Model
Analysis Classes
Analysis Model (optional)
Software Architecture
Document
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
5
Các bước thực hiện phân tích Use-Case
w Bổ sung Use-Case Description
w Với mỗi use-case realization
§ Tìm các Class từ Use-Case Behavior
§ Phân bổ Use-Case Behavior về các Class
w Với mỗi analysis class đã tìm thấy
§ Mô tả nhiệm vụ của chúng
§ Mô tả các Attribute và các Association
§ Lượng giá (qualify) các Analysis Mechanism
w Hợp nhất các Analysis Class
w Checkpoints
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
6
w Bổ sung Use-Case Description
w Với mỗi use-case realization
§ Tìm các Class từ Use-Case Behavior

§ Phân bổ Use-Case Behavior về các Class
w Với mỗi analysis class đã tìm thấy
§ Mô tả nhiệm vụ của chúng
§ Mô tả các Attribute và các Association
§ Lượng giá (qualify) các Analysis Mechanism
w Hợp nhất các Analysis Class
w Checkpoints
Các bước thực hiện phân tích Use-Case
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
7
• Hệ thống hiển
thò một danh
sách các lớp học
(course
offerings).
• Hệ thống truy vấn
và hiển thò một danh
sách các lớp học
đang mở từ CSDL
course catalog kế
thừa từ HT cũ.
Bổ sung đặc tả Use-Case
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
8
w Bổ sung Use-Case Description
w Với mỗi use-case realization
§ Tìm các Class từ Use-Case Behavior
§ Phân bổ Use-Case Behavior về các Class

w Với mỗi analysis class đã tìm thấy
§ Mô tả nhiệm vụ của chúng
§ Mô tả các Attribute và các Association
§ Lượng giá (qualify) các Analysis Mechanism
w Hợp nhất các Analysis Class
w Checkpoints
Các bước thực hiện phân tích Use-Case
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
9
Professor
name
empID
create( )
save( )
delete( )
change( )
Class Name
Attributes
Operations
Review: Class
w Là một sự trừu tượng hóa
w Mô tả một nhóm các đối tượng có chung:
§ Properties (attributes)
§ Behavior (operations)
§ Relationships
§ Ngữ nghóa (Semantics)
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
10

Class Diagrams
Sequence Diagrams
Use Case
Use-Case Model Design Model
Use Case Use-Case Realization
Collaboration Diagrams
Review: Use-Case Realization
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
11
<<boundary>>
<<boundary>><<control>>
<<entity>>
<<entity>>
ư2 Use-Case Behavior
w Toàn bộ hành vi của một use case phải được
phân bổ về cho các analysis class
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
12
<<control>>
<<boundary>>
<<entity>>
System
boundary
Use-case
behavior
coordination
System
information

Thế nào là một Analysis Class?
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
13
Use Cases Analysis
Classes
Source
Code
ExecDesign
Elements
Use-Case Analysis
Các Analysis Class: Bước đầu tiến đến cài đặt
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
14
Ph? thu?c mơi tru?ng
<<boundary>>
Analysis class
stereotype
a2 Boundary Class?
w Làm trung gian giao tiếp với những gì nằm
ngoài hệ thống
w Một số kiểu
§ Các User interface class
§ Các System interface class
§ Các Device interface class
w Một boundary class cho 1 cặp actor/use
case
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức

15
Mơ hình hóa s? tuong tác gi?a system và mơi tru?ng c?a nó
Customer
<<boundary>>
<<boundary>>
<<control>>
<<boundary>>
<<entity>> <<entity>>
Vai trò của Boundary Class
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
16
Course Catalog SystemRegister for CoursesStudent
<<boundary>>
RegisterForCoursesForm
<<boundary>>
CourseCatalogSystem
Ví dụï: Tìm kiếm các Boundary Class
w Một boundary class cho 1 cặp actor/use case
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
17
Tập trung vào các nhiệm vụ, chứ không phải chi tiết!
Guidelines: Boundary Class
w Các User Interface Class
§ Tập trung vào những thông tin gì được thể hiện
cho người dùng
§ KHÔNG tập trung vào các chi tiết UI
w Các System và Device Interface Class
§ Tập trung vào những protocols nào phải đ/n

§ KHÔNG tập trung vào cách mà các protocol sẽ
được cài đặt
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
18
Glossary
Business-Domain Model
Độc lập môi trường
<<entity>>
Analysis class
stereotype
Use Case
Architectural Analysis
Abstractions
Thế nào là một Entity Class?
w Các trừu tượng hóa then chốt của system
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
19
Lưu trữ và quản trò các thông tin trong system
Customer
<<boundary>>
<<boundary>>
<<control>>
<<boundary>>
<<entity>> <<entity>>
Vai trò của một Entity Class
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
20

Ví dụï: Tìm kiếm các Entity Class
w Dùng use-case flow of events như input
w Các trừu tượng hóa then chốt của use case
w Hướng tiếp cận truyền thống (nouns filtering)
§ Gạch dưới các cụm danh từ trong flow of events
§ Loại bỏ các ứng viên dư thừa
§ Loại bỏ các ứng viên mơ hồ, không rõ ràng
§ Loại bỏ các actor (ngoài phạm vi)
§ Loại bỏ các kiến trúc cài đặt
§ Loại bỏ các attribute (để lại dùng sau)
§ Loại bỏ các operation
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
21
Student
CourseOffering
Schedule
Ví dụï: Chọn ứng viên cho các Entity Class
w Đăng ký học phần (Lập lòch)
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
22
Account
balance
name
number
Withdraw()
CreateStatement()
Checking
Withdraw()

Savings
GetInterest()
Withdraw()
Superclass
(parent)
Subclasses
Generalization
Relationship
Review: Generalization
w Một class chia sẻ cấu
trúc và/hoặc hành vi
của một hay nhiều
class
w Mối quan hệ Là một
dạng của
w Trong phân tích, sử
dụng ở mức độ đơn
giản, sơ sài
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
23
Tìm Generalization: Generalization của các Class
Savings Checking
Stock
Bond
RealEstate
Asset
RealEstate
Savings
BankAccount

Checking Stock
Security
Bond
T?ng qt hon
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
24
Tìm Generalization: Specialization của các Class
Asset
Asset
RealEstate
Savings
BankAccount
Checking Stock
Security
Bond
Chun bi?t hon
PT & TK Hướng đối tượng – Thiết kế kiến trúc
Dương Anh Đức
25
Student
name
address
FulltimeStudent
studentID
gradDate
ParttimeStudent
maxNumCourses
Part-timeStudent
name

address
numberCourses
Full-timeStudent
name
address
studentID
gradDate
Khơng có s?
t?ng qt hóa
Có s? t?ng
qt hóa
studentID
Ví dụï: Generalization (Chia sẽ ngữ nghóa)

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×