Using Variability Modeling Principles to Capture Architectural Knowledge Marco Sinnema (University...

18
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)
  • 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