Download presentation
Presentation is loading. Please wait.
1
Using Variability Modeling Principles to Capture Architectural Knowledge Marco Sinnema (University of Groningen), Jan Salvador van der Ven (University of Groningen), Sybren Deelstra (University of Groningen)
2
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen Outline o Software Product Families o COVAMOF o Architectural Knowledge o Mapping to COVAMOF o Example
3
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen Software Product Families
4
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen Software Product Families Customer 1Customer 2 word interface mail manager database interface network interface built-in editor mail manager file storage network interface Customer 3Customer 4 notepad interface mail manager file storage network interface built-in editor mail manager database interface network interface
5
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen Software Product Families Customer 1Customer 2 notepad interface mail manager database interface network interface file storage word interface built-in editor notepad interface mail manager file storage network interface built-in editor mail manager database interface network interface Derive Product
6
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen Product Derivation Variation Points Product Configuration makes decisions on produces Product Derivation
7
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen COVAMOF Variability Modeling * 1 * * * 1.. * * 2.. * * 1 Product Configuration Decision Variant Variation Point Dependency Dependency Interaction with rationale Variation Points Product Configuration makes decisions on produce s Product Derivation
8
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen Architectural Knowledge o Supports the development of the architectural design o During this development, issues arise o These issues lead to architectural choices between two or more alternatives o Based on rationale, engineers make a decision for an architectural choice o Making these decisions often involves making trade-offs between quality attributes
9
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen Commonalities Architectural Knowledge Product Family Engineering Variation Points Product Configuration makes decisions on produces Product Derivation Architectural Choices System Design makes decisions on produces Design Process
10
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen Mapping on COVAMOF * 1 * * * 1.. * * 2.. * * 1 Product Configuration Decision Variant Variation Point Dependency Dependency Interaction with rationale Variation Points Product Configuration makes decisions on produces Product Derivation System Design Decision Alternative Architectural Choice Quality Attribute Trade-off with issue Architectural Choices System Design makes decisions on produces Design Process
11
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen Example Editor Word Interface System Design Decisions Alternatives Architectural Choices Quality Attributes Trade-off Architectural Choices System Design makes decisions on produces Design Process notepad interface mail manager database interface network interface file storage word interface built-in editor Persistent Data Notepad Interface Built-in Editor Database Interface File Storage Memory Consumption Processor Usage Performance notepad interface mail manager database interface network interface file storage word interface built-in editor notepad interface mail manager file storage network interface
12
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen Conclusion o We can use Variability Modeling concepts to capture Architectural Knowledge
13
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen The End Any Questions? More Information: m.sinnema@rug.nl http://www.msinnema.nl/covamof Shark 2006 paper
14
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen Runtime Variation Points New Runtime Configuration makes decisions on produces Runtime Configuration Pre-Runtime Variation Points Product Configuration makes decisions on produces Product Derivation Vision Product Family Engineering Variability
15
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen Architectural Choices System Design makes decisions on produces Design Process Vision Runtime Variation Points New Runtime Configuration makes decisions on produces Runtime Configuration Pre-Runtime Variation Points Product Configuration makes decisions on produces Product Derivation Variability
16
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen Vision Architectural Choices System Design makes decisions on produces Design Process Runtime Variation Points New Runtime Configuration makes decisions on produces Runtime Configuration Pre-Runtime Variation Points Product Configuration makes decisions on produces Product Derivation Variation Points System Design makes decisions on produces Design Process Variation Points New Runtime Configuration makes decisions on produces Runtime Configuration Variation Points Product Configuration makes decisions on produces Product Derivation
17
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen Vision Example 1 notepad interface mail manager database interface network interface file storage word interface built-in editor mail manager file storage network interface notepad interface notepad interface mail manager file storage network interface word interface built-in editor Variation Points System Design makes decisions on produces Design Process Variation Points New Runtime Configuration makes decisions on produces Runtime Configuration Variation Points Product Configuration makes decisions on produces Product Derivation
18
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen notepad interface mail manager database interface network interface file storage word interface built-in editor Vision Example 2 notepad interface mail manager database interface network interface file storage word interface built-in editor Variation Points System Design makes decisions on produces Design Process Variation Points New Runtime Configuration makes decisions on produces Runtime Configuration Variation Points Product Configuration makes decisions on produces Product Derivation notepad interface mail manager database interface network interface file storage word interface built-in editor
19
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen Conclusion o We can use Variability Modeling concepts to capture Architectural Knowledge o In the future we should strive for an integrated solution for managing architectural choices and variation points
20
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen The End Any Questions? More Information: m.sinnema@rug.nl http://www.msinnema.nl/covamof Shark 2006 paper
21
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen Benefits of COVAMOF o Incremental Externalization o Document Expert Knowledge o Incorporate Existing Documentation o Collect Reference Data o Formalize Documented Knowledge o Reduce Derivation Cost o Reduce Expert Involvement o Provide Structured Documentation o Configuration Guidance o Automatic Inference o Automatic Consistency Checking o Automatic Quality Attribute Estimation o Tools integrate in development environment (Visual Studio.NET)
22
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen Tool support for COVAMOF
23
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen Example notepad interface mail manager database interface network interface file storage word interface built-in editor
24
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen Memory Usage Example Variation points Other Documentation notepad interface word interface built-in editor database interface file storage Impact small decrease small increase database interface file storage Reference data 22.7 10.5 notepad interface built-in editor database interface file storage Estimation notepad interface word interface built-in editor 10.1 12.4 23.1
25
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen COVAMOF Variability Model Memory Usage Editor Component Notepad Persistency Component Built-inWordFilesDatabase Product class FullCustomBasic Realizes Variant Variation Point Dependency Realization Architecture Layer Feature Layer Legend
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.