Material and some slide content from:
- Emerson Murphy-Hill, Reid Holmes
- Software Architecture: Foundations, Theory, and Practice
- Essential Software Architecture
- Steve Easterbrook
Mei Nagappan
Architectural Decomposition Mei Nagappan What is SW architecture? - - PowerPoint PPT Presentation
Material and some slide content from: - Emerson Murphy-Hill, Reid Holmes - Software Architecture: Foundations, Theory, and Practice - Essential Software Architecture - Steve Easterbrook Architectural Decomposition Mei Nagappan What is SW
Material and some slide content from:
Mei Nagappan
MEI NAGAPPAN- SE2: SOFTWARE DESIGN & ARCHITECTURE
“The set of principal design decisions about the system”
MEI NAGAPPAN- SE2: SOFTWARE DESIGN & ARCHITECTURE
an architectural level.
MEI NAGAPPAN- SE2: SOFTWARE DESIGN & ARCHITECTURE
regulating interactions between components.
components in large heterogenous systems.
interaction mechanisms.
MEI NAGAPPAN- SE2: SOFTWARE DESIGN & ARCHITECTURE
specific way.
set of specific associations between the components and the connectors of the system’s architecture.
connectors from an implementable system.
MEI NAGAPPAN- SE2: SOFTWARE DESIGN & ARCHITECTURE REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE
the better (also known as information hiding).
service; extraneous functionality should not be present.
[Steve Easterbrook: http://www.cs.toronto.edu/~sme/CSC302/notes/04-package-diagrams.pdf]
MEI NAGAPPAN- SE2: SOFTWARE DESIGN & ARCHITECTURE
abstracting away unnecessary detail
detail (some of these details will be pertinent during more detailed design activities)
MEI NAGAPPAN- SE2: SOFTWARE DESIGN & ARCHITECTURE
possible
MEI NAGAPPAN- SE2: SOFTWARE DESIGN & ARCHITECTURE
MEI NAGAPPAN- SE2: SOFTWARE DESIGN & ARCHITECTURE
People
C G B E F D A L J H I K
Modules
3 7 2 5 6 4 1 12 10 8 9 11
See: Valetto, et al., 2007.
[Steve Easterbrook: http://www.cs.toronto.edu/~sme/CSC302/notes/04-package-diagrams.pdf]
MEI NAGAPPAN- SE2: SOFTWARE DESIGN & ARCHITECTURE
Decomposition isn’t always great
HTTP://WWW.CS.TORONTO.EDU/~SME/CSC444F/SLIDES/L05- DECOMPOSITIONABSTRACTION.PDF
➜ Decomposition can work well:
E.g. designing a restaurant menu
➜ Decomposition doesn’t always work
E.g. writing a play:
➜ Decomposition isn’t always possible
for very complex problems (e.g. Managing the economy) for impossible problems (e.g. Turning water into wine) for atomic problems (e.g. Adding 1 and 1)
Choose a set of character parts write character 1’s part write character 2’s part write character 3’s part …etc… merge Choose style and theme Design appetizers menu Design entrees menu Design desserts menu Design drinks menu Assemble and edit
MEI NAGAPPAN- SE2: SOFTWARE DESIGN & ARCHITECTURE
last class.
MEI NAGAPPAN- SE2: SOFTWARE DESIGN & ARCHITECTURE REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE
facilitating technical communication between project stakeholders
adequately understood
MEI NAGAPPAN- SE2: SOFTWARE DESIGN & ARCHITECTURE REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE
NOAA [http://celebrating200years.noaa.gov/magazine/tct/tct_side1.html]
MEI NAGAPPAN- SE2: SOFTWARE DESIGN & ARCHITECTURE
elements or subsets of relationships
scenarios within a system
views is challenging
MEI NAGAPPAN- SE2: SOFTWARE DESIGN & ARCHITECTURE REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE
IBM [http://www.ibm.com/developerworks/rational/library/dec04/bell/]
MEI NAGAPPAN- SE2: SOFTWARE DESIGN & ARCHITECTURE REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE
MEI NAGAPPAN- SE2: SOFTWARE DESIGN & ARCHITECTURE
door opener.
MEI NAGAPPAN- SE2: SOFTWARE DESIGN & ARCHITECTURE REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE
VP [http://www.visual-paradigm.com/VPGallery/diagrams/Deployment.html]
MEI NAGAPPAN- SE2: SOFTWARE DESIGN & ARCHITECTURE
example from last class.
MEI NAGAPPAN- SE2: SOFTWARE DESIGN & ARCHITECTURE REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE
MEI NAGAPPAN- SE2: SOFTWARE DESIGN & ARCHITECTURE REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE
will be built a priori.
was actually built after the fact.
MEI NAGAPPAN- SE2: SOFTWARE DESIGN & ARCHITECTURE REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE
the current architecture but do not violate it.
architecture.
MEI NAGAPPAN- SE2: SOFTWARE DESIGN & ARCHITECTURE REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE REID HOLMES - SE2: SOFTWARE DESIGN & ARCHITECTURE
MEI NAGAPPAN- SE2: SOFTWARE DESIGN & ARCHITECTURE
MEI NAGAPPAN- SE2: SOFTWARE DESIGN & ARCHITECTURE