Logical Architecture /and UML Package Diagrams 徐迎晓 xuyingxiao@126.com http://iavabook.126.com 复旦大学软件学院
Logical Architecture and UML Package Diagrams 徐迎晓 xuyingxiao@126.com http://javabook.126.com 复旦大学软件学院
Outline ● Definition Architectural dimension and views Architectural Pattern Layers e Package Diagrams Logical Vs Process and Deployment of Architecture Terminology: Tier, Layers, and Partitions How do we design application logic with objects? e Domain Layer and Domain Model ● nformation Systems Two-tier Design e The Model-View Separation principle o Need for Model-View separation
Outline Definition Architectural Dimension and Views Architectural Pattern: Layers Package Diagrams Logical vs. Process and Deployment of Architecture Terminology:Tier, Layers, and Partitions How do we design application logic with objects? Domain Layer and Domain Model Information Systems Two-tier Design The Model-View Separation Principle Need for Model-View separation
Sample UP Artifact Relationships Dom Business eling Use-Case model Supplementary Glossary constraints and non-functional requirements aptured in the Supp Spe Design Model package diagrams of the logical (a static view) Domain Services Register Productcatalog Desian ia ontime weyms enterltem ltemlD, quantity Productcatalog class diagrams makeNewsaleo getProductspec(.)
: Register enterItem (itemID, quantity) : ProductCatalog spec = getProductSpec( itemID ) Requirements Business Modeling Design Sample UP Artifact Relationships Vision Glossary The logical architecture is influenced by the constraints and non-functional requirements captured in the Supp. Spec. Domain Model * * Supplementary Specification Use-Case Model Register ... makeNewSale() enterItem(...) ... ProductCatalog ... getProductSpec(...) ... class diagrams 1 1 (a static view) interaction diagrams (a dynamic view) UI package diagrams of the logical architecture (a static view) Domain Tech Services Design Model
Domain Modeling Sales Use-Case Model Visio specitication The logical archtecture is influenced by the constraints and non-functional requirements captured in the Supp. Spec Design Model ackage dagrams UI archifecture Domain Services Regist Design interaction diagrams enterltem (a dynamic view) ●temD Productc atalo getProduct Spec(.)
System Operation Use case makeNewsale( makeNewsale Process sale System 1. Customer addLineltem Operation TeWes (itemID, quantity makeNew Sale makes addLineltem(itemID,quantity ll addLineltem sale endsley endscale 3. Cashier enters item makePaymento identifier endsale makePayment( Operation makePavment System Se equence System Use case Diagram Operations Contracts
Architecture metamodel Architecture are actors in rchitecture Architecture Des ign Process Software produces Des cription Logical view made relates to Architecture Im elemen- Style guide ation view Architectural Deployment Ise case Achitectural style Form Con nection Pattern Com pone nt Constraints satisfies Architectural constrains Requireme nts
Architecture metamodel Software Architecture Software Architecture Description Architectural view is made of is represented by Architecture Design Process produces Form Component Connection Architectural Pattern is a is made of Software Architects are actors in Logical view Process view Implementation view Deployment view Requirements satisfies Architectural style has has has is a System architecture is part of Architecture Style guide Constraints constrains constrains Use case view relates to Architectural Blueprint depicts
Outline ● Definition Architectural dimension and views Architectural Pattern Layers e Package Diagrams Logical Vs Process and Deployment of Architecture Terminology: Tier, Layers, and Partitions How do we design application logic with objects? e Domain Layer and Domain Model ● nformation Systems Two-tier Design e The Model-View Separation principle o Need for Model-View separation
Outline Definition Architectural Dimension and Views Architectural Pattern: Layers Package Diagrams Logical vs. Process and Deployment of Architecture Terminology:Tier, Layers, and Partitions How do we design application logic with objects? Domain Layer and Domain Model Information Systems Two-tier Design The Model-View Separation Principle Need for Model-View separation
Definition e Software Architecture e large scale-the Big ldeas in the forces organization, styles, patterns, responsibilities collaborations. connections and motivations of a system and major subsystems
Definition Software Architecture: large scale-the Big Ideas in the forces, organization, styles, patterns, responsibilities, collaborations, connections and motivations of a system and major subsystems
not the java Ing Swing libraries, but Web our gul classes based on Swing Domain Sales Payments Taxes Technical Services Persistence Logging Rules Engine
Domain UI Swing not the Java Swing libraries, but our GUI classes based on Swing Web Sales Payments Taxes Technical Services Persistence Logging RulesEngine
Fig, 13.3 Swing Sales UI: Swing U|∵Web Swing Web Domain: Sales Domain Sales
Fig. 13.3 Domain::Sales UI::Swing UI::Web Sales Swing Web UI Domain UI Domain Swing Web Sales