Using Variability Modeling Principles to Capture Architectural Knowledge Marco Sinnema (University...
-
date post
20-Dec-2015 -
Category
Documents
-
view
214 -
download
0
Transcript of Using Variability Modeling Principles to Capture Architectural Knowledge Marco Sinnema (University...
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)
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen
Outline
o Software Product Familieso COVAMOFo Architectural Knowledgeo Mapping to COVAMOFo Example
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen
Software Product Families
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen
Software Product Families
Customer 1 Customer 2
wordinterface
mail manager
databaseinterface
networkinterface
built-ineditor
mailmanager
filestorage
networkinterface
Customer 3 Customer 4
notepadinterface
mail manager
filestorage
networkinterface
built-ineditor
mailmanager
databaseinterface
networkinterface
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen
Software Product Families
Customer 1 Customer 2
notepadinterface
mail manager
databaseinterface
networkinterface
filestorage
wordinterface
built-ineditor
notepadinterface
mail manager
filestorage
networkinterface
built-ineditor
mailmanager
databaseinterface
networkinterface
Derive ProductDerive P
roduct
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen
Product Derivation
Variation Points
ProductConfiguration
makesdecisions
on
produces Product
Derivation
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen
COVAMOF Variability Modeling
*
1
*
*
*1..
*1..
*2..
*
*
1
Product Configuration
Decision
Variant
Variation Point
Dependency
Dependency Interaction
with rationale
Variation Points
ProductConfiguration
makesdecisions on
produces Product
Derivation
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen
Architectural Knowledgeo Supports the development of
the architectural designo During this development,
issues ariseo 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
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen
Commonalities
Architectural KnowledgeProduct Family Engineering
Variation Points
ProductConfiguration
makesdecisions
on
produces Product
Derivation
ArchitecturalChoices
SystemDesign
makesdecisions
on
produces Design Process
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen
Mapping on COVAMOF
*
1
*
*
*1..
*1..
*2..
*
*
1
Product Configuration
Decision
Variant
Variation Point
Dependency
Dependency Interaction
with rationale
Variation Points
ProductConfiguration
makesdecisions on
produces Product
Derivation
System Design
Decision
Alternative
Architectural Choice
Quality Attribute
Trade-off
with issue
ArchitecturalChoices
SystemDesign
makesdecisions on
produces Design Process
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen
Example
Editor
Word Interface
System DesignDecisions
Alternatives
Architectural Choices
Quality Attributes
Trade-off
ArchitecturalChoices
SystemDesign
makesdecisions on
produces Design Process
notepadinterface
mail manager
databaseinterface
networkinterface
filestorage
wordinterface
built-ineditor
PersistentData
NotepadInterface
Built-in EditorDatabaseInterface
File Storage
MemoryConsumption
ProcessorUsage
Performance
notepadinterface
mail manager
databaseinterface
networkinterface
filestorage
wordinterface
built-ineditor
notepadinterface
mail manager
filestorage
networkinterface
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen
RuntimeVariation Points
New RuntimeConfiguration
makesdecisions
on
produces Runtime
Configuration
Pre-RuntimeVariation Points
ProductConfiguration
makesdecisions
on
produces Product
Derivation
VisionProduct Family Engineering
Variability
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen
ArchitecturalChoices
SystemDesign
makesdecisions
on
produces Design Process
Vision
RuntimeVariation Points
New RuntimeConfiguration
makesdecisions on
produces Runtime
Configuration
Pre-RuntimeVariation Points
ProductConfiguration
makesdecisions on
produces Product
Derivation
Variability
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen
Vision
ArchitecturalChoices
SystemDesign
makesdecisions
on
produces Design Process
RuntimeVariation Points
New RuntimeConfiguration
makesdecisions on
produces Runtime
Configuration
Pre-RuntimeVariation Points
ProductConfiguration
makesdecisions on
produces Product
Derivation
Variation Points
SystemDesign
makesdecisions
on
produces Design Process
Variation Points
New RuntimeConfiguration
makesdecisions on
produces Runtime
Configuration
Variation Points
ProductConfiguration
makesdecisions on
produces Product
Derivation
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen
Vision Example 1
notepadinterface
mail manager
databaseinterface
networkinterface
filestorage
wordinterface
built-ineditor
mail manager
filestorage
networkinterface
notepadinterface
notepadinterface
mail manager
filestorage
networkinterface
wordinterface
built-ineditor
Variation Points
SystemDesign
makesdecisions
on
produces Design Process
Variation Points
New RuntimeConfiguration
makesdecisions on
produces Runtime
Configuration
Variation Points
ProductConfiguration
makesdecisions on
produces Product
Derivation
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen
notepadinterface
mail manager
databaseinterface
networkinterface
filestorage
wordinterface
built-ineditor
Vision Example 2
notepadinterface
mail manager
databaseinterface
networkinterface
filestorage
wordinterface
built-ineditor
Variation Points
SystemDesign
makesdecisions
on
produces Design Process
Variation Points
New RuntimeConfiguration
makesdecisions on
produces Runtime
Configuration
Variation Points
ProductConfiguration
makesdecisions on
produces Product
Derivation
notepadinterface
mail manager
databaseinterface
networkinterface
filestorage
wordinterface
built-ineditor
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
Marco Sinnema, Jan Salvador van der Ven and Sybren Deelstra, University of Groningen
The End
Any Questions?
More Information:
[email protected]://www.msinnema.nl/covamofShark 2006 paper