Date post: | 11-Jun-2015 |
Category: |
Education |
Upload: | ahmed-ibrahim |
View: | 284 times |
Download: | 0 times |
Introducing
By
Innocent Akhidenor & Ahmed Ibrahim
ECE 750 - Fall 2013
The Microsoft IIS Structure
Source: VisualComplexity.com
Architecture Recovery
Lattix LDM, founded to visualize and manage the architecture of complex software
systems
Dependency Model
• A Dependency Model is the representation of the architecture of a system. It consists of:
• An ordered hierarchical decomposition of the System into its Subsystems
• Display of current dependencies between Subsystems
• Design Rules for allowable dependencies between Subsystems
Dependency Structure Matrix (DSM)
• Class Reference - A
reference to a class or
object, but not to any of the
objects members.
• Invokes - A method call
• Inherits - A reference to a
superclass, or to Interface
implemented
• Data Member Reference -
A reference to a variable of
a class / object
Design Rules
• Each cell in a DSM represents a “design intent”
• Dependency Model = DSM + Design Rules
DSM with Rules View
Green Triangle – Dependency Acceptable
Yellow Triangle – Dependency Unacceptable
Red Triangle – Rule Violation Discovered
Why Lattix ?
• Create a system blueprint by mapping dependencies across the various domains of the system
• Analyze, optimize, and specify the system architecture through the DSM, diagrams, and dependency rules
• Identify dependencies which violate the architecture
• Identify and explore opportunities to improve the modularity of the system
• Measure quality with key metrics and track changes to the system architecture over time
• Assess the impact and risk of proposed changes to the system
Using Lattix
1. Create a initial DSM of your Application
2. Organize the DSM to reflect the Intended Architecture
3. Design Rules: Specify External Library Usage
4. Design Rules: Specify Application Interdependencies
5. Print out the DSM and the Conceptual Architecture
Case Study
Example /1
Case study:
Example /2
Subsystem with
internal dependenciesThe (N x N) matrix shows
how each subsystem is
related to every other
subsystem
Architecture Patterns using DSM 1/3
Layered System
Architecture Patterns using DSM 2/3
Strictly Layered System
Architecture Patterns using DSM 3/3
Example /3
Demo...Please
Okay
Example /1
Case study:
Recommended Reading
Design Structure Matrix
Methods and
Applications by
Steven Eppinger,
2012
Questions?
References
1. N. Sangal, E. Jordan, V. Sinha, and D. Jackson, “Using Dependency Models to Manage Complex Software Architecture,” Proc. 20th Conf. Object Oriented Programming, Systems, Languages, and Applications, 2005