autonomic software product lines (aspl) nadeem abbas, jesper andersson, welf löwe linnaeus...

15
Autonomic Software Product Lines (ASPL) Nadeem Abbas, Jesper Andersson, Welf Löwe Linnaeus University, Sweden Monday, August 23, 2010 1st International Workshop on Variability in Software Product Line Architectures, ECSA 2010.

Upload: gervais-ray

Post on 23-Dec-2015

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Autonomic Software Product Lines (ASPL) Nadeem Abbas, Jesper Andersson, Welf Löwe Linnaeus University, Sweden Monday, August 23, 2010 1st International

Autonomic Software Product Lines (ASPL)

Nadeem Abbas, Jesper Andersson, Welf Löwe

Linnaeus University, Sweden

Monday, August 23, 2010

1st International Workshop on Variability in Software Product Line Architectures, ECSA 2010.

Page 2: Autonomic Software Product Lines (ASPL) Nadeem Abbas, Jesper Andersson, Welf Löwe Linnaeus University, Sweden Monday, August 23, 2010 1st International

Introduction

Universal Business Goals– High Quality– Time-to-Market– Low Cost

Strategic Reuse of Resources– Requirements– Domain Knowledge– Design– Code/Components

Product Line Engineering

Software Product Lines

Page 3: Autonomic Software Product Lines (ASPL) Nadeem Abbas, Jesper Andersson, Welf Löwe Linnaeus University, Sweden Monday, August 23, 2010 1st International

Dynamic SPLs

Changes & Product Line Evolutions– Dynamic Changes

• Goals• Requirements• Context/Environment• Components

– New Products

Dynamic SPLs

Page 4: Autonomic Software Product Lines (ASPL) Nadeem Abbas, Jesper Andersson, Welf Löwe Linnaeus University, Sweden Monday, August 23, 2010 1st International

Software Variability

variability is the ability of a software to be efficiently extended, changed, or configured for use in a specific context

We abstract variability as:– Variants and– Variation Points

Variant Selection/Binding depends on system goals and context

Fig 1. Variability: Variants and Variation Points

Page 5: Autonomic Software Product Lines (ASPL) Nadeem Abbas, Jesper Andersson, Welf Löwe Linnaeus University, Sweden Monday, August 23, 2010 1st International

Q.1: Stakeholders?

Software Producers/Manufacturers

Software Architects

Developers

Users

Page 6: Autonomic Software Product Lines (ASPL) Nadeem Abbas, Jesper Andersson, Welf Löwe Linnaeus University, Sweden Monday, August 23, 2010 1st International

Q. 2: Architectural Models?

Component and Connector Model

Goal Model

Environment Model

Page 7: Autonomic Software Product Lines (ASPL) Nadeem Abbas, Jesper Andersson, Welf Löwe Linnaeus University, Sweden Monday, August 23, 2010 1st International

Q. 3 Variability and Views?

“Separation of Concerns”

Variability View on Component-Connector Model

Page 8: Autonomic Software Product Lines (ASPL) Nadeem Abbas, Jesper Andersson, Welf Löwe Linnaeus University, Sweden Monday, August 23, 2010 1st International

Variability Management - MAPE-K

To manage variability in a product line, product line components are modeled as an Autonomic Elements.

Autonomic elements implement a MAPE-K control loop Fig 2. Autonomic Element

Page 9: Autonomic Software Product Lines (ASPL) Nadeem Abbas, Jesper Andersson, Welf Löwe Linnaeus University, Sweden Monday, August 23, 2010 1st International

Autonomic SPLs in Practice

There are 3-Key steps to put Autonomic SPLs in action:

1. System Design

2. Offline Training

3. Dynamic Product Instantiation

Page 10: Autonomic Software Product Lines (ASPL) Nadeem Abbas, Jesper Andersson, Welf Löwe Linnaeus University, Sweden Monday, August 23, 2010 1st International

Offline Training

Training data provides artificial call context.

Each variant is invoked against with all specific context attributes.

Variant’s performance is analyzed against the given goals

Best-fit variants are tagged in the Dispatch Table.

Fig 3. Offline Training with AEs

Page 11: Autonomic Software Product Lines (ASPL) Nadeem Abbas, Jesper Andersson, Welf Löwe Linnaeus University, Sweden Monday, August 23, 2010 1st International

Product Instantiation - Online Learning

Dynamic Product composition by selecting best-fit variants from the Dispatch Table, based on the system context and goals.

Online learning addresses issues of context and core asset evolution

Fig 4. Autonomic SPL Instance

Page 12: Autonomic Software Product Lines (ASPL) Nadeem Abbas, Jesper Andersson, Welf Löwe Linnaeus University, Sweden Monday, August 23, 2010 1st International

Performance Evaluation

Fig 5. Autonomic Matrix Multiplication Product Line vs Simple Multiplication Product

Page 13: Autonomic Software Product Lines (ASPL) Nadeem Abbas, Jesper Andersson, Welf Löwe Linnaeus University, Sweden Monday, August 23, 2010 1st International

Performance Evaluation

Fig 6. Self-Optimization of the SPL with On-line Learning

Page 14: Autonomic Software Product Lines (ASPL) Nadeem Abbas, Jesper Andersson, Welf Löwe Linnaeus University, Sweden Monday, August 23, 2010 1st International

Conclusion

Promising results with short term variability management in SPLs.

Autonomic Elements powered with online learning results in an effective “Variability Management” mechanism in Dynamic Software Product Lines.

Combining Autonomic Computing and SPL research is useful

Page 15: Autonomic Software Product Lines (ASPL) Nadeem Abbas, Jesper Andersson, Welf Löwe Linnaeus University, Sweden Monday, August 23, 2010 1st International

Future Work

More on Evaluation/Testing, particularly in Open World

Incorporate other learning strategies

ASPL against other classic SPL & DSPL approaches