Understand the purpose of Architectural Analysis and where in the lifecycle it is performed Describe a representative architectural pattern and set of analysis mechanisms, and how they affect the architecture Understand how to read and interpret the results of Architectural Analysis Architectural Layers and their relationships Architectural relationships High-level packages and their relationships Key concepts Modeling conventions
OOAD Using the UML - Architectural Analysis, v 4.0 Copyright 1994-1998 Rational Software, all rights reserved
R
1
OOAD Using the UML -Architectural Analysis, v 4.0 Copyright 1994-1998 Rational Software, all rights reserved
• Changes to the the Supplier pa package ckage may affec affectt the Client package
B A'
• The Client package package cannot be reused inde independently pendently because because it depends on the Supplier package OOAD Using the UML - Architectural Analysis, v 4.0 Copyright 1994-1998 Rational Software, all rights reserved
9
C
Circular dependencies make it impossible to reuse one package without the other R
R
OOAD Using the UML -Architectural Analysis, v 4.0 Copyright 1994-1998 Rational Software, all rights reserved
Communication (IPC and RPC) Message routing Distribution Transaction management Process control and synchronization (resource contention) Information exchange, format conversion Security Error detection / handling / reporting Redundancy Legacy Interface R
15
R
OOAD Using the UML -Architectural Analysis, v 4.0 Copyright 1994-1998 Rational Software, all rights reserved
Analysis Mechanism Characteristics Persistency
Granularity Volume Duration Access mechanism mechanism Access frequency frequency (cr (creation/deletion, eation/deletion, update, rea read) d) Reliability
Latency Duration Access mechanism mechanism Access frequency frequency
Data granularity User granularity Security rules Privilege types
Latency Synchronicity
Message Size Protocol
17
Security
OOAD Using the UML - Architectural Analysis, v 4.0 Copyright 1994-1998 Rational Software, all rights reserved
Legacy interface
Communication
16
Analysis Mechanism Characteristics (cont.)
R
OOAD Using the UML - Architectural Analysis, v 4.0 Copyright 1994-1998 Rational Software, all rights reserved
OOAD Using the UML -Architectural Analysis, v 4.0 Copyright 1994-1998 Rational Software, all rights reserved
Page 4
24
R
Design Patterns
Patterns and Frameworks
Pattern
Describes a common design problem Describes the solution to the problem Discusses the results and trade-offs of applying the pattern
A common solution to a common pproblem roblem in a ccontext ontext
Analysis/Design Pattern A solution to a narrowlynarrowly-scoped scoped tech technical nical problem A fragment of a solut solution, ion, or a ppiece iece of the puzzle
Framework
Defines the general approach to solving the problem Skeletal solution, whose details may be analysis/desig analysis/designn patterns
OOAD Using the UML - Architectural Analysis, v 4.0 Copyright 1994-1998 Rational Software, all rights reserved
Parameterized collaboration OOAD Using the UML -Architectural Analysis, v 4.0 Copyright 1994-1998 Rational Software, all rights reserved
Layers
Model-view-controller (M-V-C) Pipes and filters Blackboard
Cont ext 26
Collaborat ion
R
Typical Layering Approach
Architectural Patterns
Design patterns provide the capability to reuse successful designs
Pattern Name
R
25
A design pattern is a solution to a common design problem
Specific functionality
General functionality
OOAD Using the UML - Architectural Analysis, v 4.0 Copyright 1994-1998 Rational Software, all rights reserved
R
27
OOAD Using the UML -Architectural Analysis, v 4.0 Copyright 1994-1998 Rational Software, all rights reserved
Example: High-Level Organization of the Model
StudentInterface (from User Interface)
ProfessorInterface (from User Interface)
Registration (from Business Services)
Student Evaluation (from Business Services)
Finance System (from Business Services)
R
Architectural Analysis Topics
User Interface Layer RegistrarInterface (from User Interface)
University Artifacts (from Business Objects) OOAD Using the UML - Architectural Analysis, v 4.0 Copyright 1994-1998 Rational Software, all rights reserved
29
R
OOAD Using the UML -Architectural Analysis, v 4.0 Copyright 1994-1998 Rational Software, all rights reserved
Page 5
30
R
Page 5
Architectural Analysis Checkpoints (cont.)
Architectural Analysis Checkpoints
General
Is the package partitioning and layering done in a logically consistent way? Have the necessary analysis mechanisms mechanisms been identified?
Packages
Have we provided a comprehensive picture of the services of the packages in upper-level layers?
OOAD Using the UML - Architectural Analysis, v 4.0 Copyright 1994-1998 Rational Software, all rights reserved
31
R
Classes Have the key entity classes and their relationships been identified and accurately modeled? Does the name of each class clearly reflect the role it plays? Have the entity classes been mapped to the necessary analysis mechanisms? mechanisms?
OOAD Using the UML -Architectural Analysis, v 4.0 Copyright 1994-1998 Rational Software, all rights reserved