Xem mẫu
LECTURE 7: Object Oriented Design
Ivan Marsic
Rutgers University
Topics
• Gán trách nhiệm cho các đối tượng
• Design Principles
• Expert Doer
• High Cohesion
• Low Coupling
• Business Policies
• Class Diagram
2
System Sequence Diagrams
Biểu đồ tuần tự hệ thống cho usecase mở khóa
: System
User
Timer
«initiating actor»
select function(“unlock")
«offstage actor»
prompt for the key
enter key
verify key
signal: valid key, lock open
open the lock,
turn on the light
start ("duration“)
System Sequence Diagrams considered interactions between the actors
3
Design: Object Interactions
Design
Sequence Diagram
System Sequence Diagram
Controller
«initiating actor»
select function(“unlock")
: KeyStorage
: LockCtrl
checkKey()
ystem
: System
User
: Checker
Timer
sk := getNext()
«offstage actor»
prompt for the key
alt
enter key
val != null
setOpen(true)
verify key
signal: valid key, lock open
open the lock,
turn on the light
[else]
val == null : setLit(true)
start ("duration“)
• System Sequence Diagram mô tả tương tác giữa các actor
• Object Sequence Diagram mô tả tương tác giữa các đối tượng
4
Metaphor for Software Design:
“Connecting the Dots”
Resident
:InterfacePage
:SearchRequest
:Controller
:PageMaker
:DatabaseConn
:Archiver
:Notifier
:InvestigRequest
Ta bắt đầu từ các đối tượng/khái niệm từ pha phân
tích, và sửa hoặc thêm các đối tượng mới, nhằm làm
cho hệ thống hoạt động được.
Database
Landlord
5
nguon tai.lieu . vn