Elaboration Lecture Oo18 Gymnastics System Example Cont’d
References n The Booch Method Guide, for Rose 2.0
Teaching Points n Validation n Architectural Design
Review n What are the products of architectural design? n How would you validate you domain analysis?
Validation n Are we building the right product? n Use the requirement
Gymnastics System Example n The “scoring” use case
Adding Raw Scores
When to Stop Domain Analysis n You have identified all domain entities that play a role and defined their classes n You have specified the relationships between each of these classes
When to Stop Domain Analysis n You have associated with each class all operations performed on it (from uses cases) n You have analyzed each operation to the point where you understand what it needs to do and what other classes are involved
Layered Architecture n Packages are organized in a hierarchy of layers where each layer has a well- defined interface n e.g. The OSI model for network services is a layered architecture n Classic three-tier architecture –Presentation (windows, reports, etc.) –Application Logic (tasks and rules that govern the process) –Storage (persistent storage mechanism)
Three-tier Architecture
Three-tier Architecture (cont’d) n Identified by the separation of the application logic into a distinct middle layer n Presentation layer is free of application logic and just forwards requests to middle tier n Middle tier communicates with a back end storage layer
Three-tier Architecture (cont’d) n Advantages –the opportunity for reuse –the possibility of distributing application logic on a network –allocation of developers to construct specific tier (based on interface specs, that is good OO decomposition)
Multi-tiered Architectures n The logical extension of three-tier architecture n You can decompose a three-tier into multiple services
Multi-tiered Architectures
The Gymnastics System
Teaching Points n Validation n Architectural Design