Folie 1

advertisement
Interplay of Design Time Optimization
and Run Time Optimization
Anne Koziolek
ARCHITECTURE-DRIVEN REQUIREMENTS ENGINEERING GROUP
INSTITUTE FOR PROGRAM STRUCTURES AND DATA ORGANIZATION, FACULTY OF INFORMATICS
KIT – University of the State of Baden-Wuerttemberg and
National Research Center of the Helmholtz Association
are.ipd.kit.edu
www.kit.edu
Overview
Software Architecture Optimization at Design Time
Modelling Degrees of Freedom
Abstract from what is changed and optimize
Define search space
Evaluation function using model transformations
When to make decisions
At design time
At human-involved evolution time
At re-optimization time, e.g. daily
At “run time”, e.g. within minutes or seconds
2
20.01.2015
Interplay of Design Time Optimization and Run Time Optimization
Anne Koziolek
Architecture-driven Requirements Engineering Group
Institute for Program Structures and Data Organization
Predicting or Self-predictive?
“Self-predictive: Able to predict the effect of dynamic changes (e.g.,
changing workloads) as well as predict the effect of possible adaptation
actions (e.g., adding/removing resources)” (seminar page)
Need to predict the effect at design time first, are goals attainable at all?
Decide whether
to fix design or
to keep some degrees of freedom for later (at run time)
Move decisions to runtime if
Want to save operating costs?
State space too large?
Unanticipated change (can that be?)
Run time costs to determine better (or optimal) solution acceptable
14
20.01.2015
Interplay of Design Time Optimization and Run Time Optimization
Anne Koziolek
Architecture-driven Requirements Engineering Group
Institute for Program Structures and Data Organization
Design time, Run time, …?
Similar to organic
computing levels
Evolution loop
(human redesign)
Feedback
(from monitoring
or user)
Re-optimization loop
(automated), rare, costly
Meeting point of
design time and
run time techniques?
- MDD techniques
- Rules for inner
loop
Which degrees
of freedom
to consider?
How “globally”
to optimize?
Design time
15
20.01.2015
Run time
Self adaptation loop
Quick reaction to changing workload,
predefined rules?
Interplay of Design Time Optimization and Run Time Optimization
Anne Koziolek
Architecture-driven Requirements Engineering Group
Institute for Program Structures and Data Organization
Conclusions & Outlook
Software Architecture Optimization at Design Time
Modelling Degrees of Freedom
Abstract from what is changed and optimize
Define search space
Evaluation function using model transformations
Apply to your
self-aware systems
approach?
When to make decisions
At design time
At human-involved evolution time
At re-optimization time, e.g. daily
Looking forward
to discuss with
you
At “run time”, e.g. within minutes or seconds
16
20.01.2015
Interplay of Design Time Optimization and Run Time Optimization
Anne Koziolek
Architecture-driven Requirements Engineering Group
Institute for Program Structures and Data Organization
PerOpteryx References
[WCOP2008] Anne Martens and Heiko Koziolek. Performance-oriented Design Space Exploration. In Proceedings of the Thirteenth
International Workshop on Component-Oriented Programming (WCOP'08), Karlsruhe, Germany, pages 25-32, 2008.
[FESCA2009] Anne Martens and Heiko Koziolek. Automatic, model-based software performance improvement for componentbased software designs. In Proceedings of the Sixth International Workshop on Formal Engineering approches to Software
Components and Architectures (FESCA 2009), volume 253 of Electronic Notes in Theoretical Computer Science, pages 77 - 93.
Elsevier, 2009.
[Quasoss2009] Anne Martens, Franz Brosch, and Ralf Reussner. Optimising multiple quality criteria of service-oriented software
architectures. In Proceedings of the 1st international workshop on Quality of service-oriented software systems (QUASOSS), pages
25-32. ACM, New York, NY, USA, 2009.
[Quasoss2010] Qais Noorshams, Anne Martens, and Ralf Reussner. Using quality of service bounds for effective multi-objective
software architecture optimization. In QUASOSS '10: Proceedings of the 2nd International Workshop on the Quality of ServiceOriented Software Systems, pages 1:1-1:6. ACM, New York, NY, USA, 2010.
[ICPE2010] ] Anne Martens, Heiko Koziolek, Steffen Becker, and Ralf H. Reussner. Automatically improve software models for
performance, reliability and cost using genetic algorithms. In WOSP/SIPEW '10: Proceedings of the first joint WOSP/SIPEW
international conference on Performance engineering, pages 105-116, New York, NY, USA, 2010. ACM.
[FASE2010] Vittorio Cortellessa, Anne Martens, Ralf Reussner, and Catia Trubiani. A process to effectively identify guilty
performance antipatterns. In David Rosenblum and Gabriele Taentzer, editors, Fundamental Approaches to Software Engineering,
13th International Conference, FASE 2010, pages 368-382. Springer-Verlag Berlin Heidelberg, 2010.
[QoSA2010] Anne Martens, Danilo Ardagna, Heiko Koziolek, Raffaela Mirandola, and Ralf Reussner. A Hybrid Approach for MultiAttribute QoS Optimisation in Component Based Software Systems. In George Heineman, Jan Kofron, and Frantisek Plasil, editors,
Research into Practice - Reality and Gaps (Proceeding of QoSA 2010), volume 6093 of LNCS, pages 84-101. Springer-Verlag
Berlin Heidelberg, 2010.
[ICPE2011] Catia Trubiani and Anne Koziolek. Detection and solution of software performance antipatterns in palladio architectural
models. In Proceeding of the second joint WOSP/SIPEW international conference on Performance engineering, ICPE '11, pages
19-30. ACM, New York, NY, USA, 2011. ICPE best paper award.
[QoSA2011] Anne Koziolek, Heiko Koziolek, and Ralf Reussner. Peropteryx: Automated application of tactics in multi-objective
software architecture optimization. In Proceedings of the Seventh International ACM Sigsoft Conference on the Quality of Software
Architectures (QoSA 2011), Boulder, Colorado, USA, June 2011. ACM, New York, NY, USA. [CBSE2011] Anne Koziolek and Ralf
Reussner. Towards a generic quality optimisation framework for component-based system models. In Proceedings of the 14th
International Symposium on Component Based Software Engineering (CBSE 2011), Boulder, Colorado, USA, June 2011. ACM,
New York, NY, USA.
17
20.01.2015
Interplay of Design Time Optimization and Run Time Optimization
Anne Koziolek
Architecture-driven Requirements Engineering Group
Institute for Program Structures and Data Organization
Other References
[Aleti2009] Aleti, A., Björnander, S., Grunske, L., and Meedeniya, I. (2009a). Archeopterix: An extendable
tool for architecture optimization of AADL models. In Proc. of ICSE 2009 Workshop on Model-Based
Methodologies for Pervasive and Embedded Software (MOMPES), pages 61--71. IEEE Computer Society.
[Becker2007] Becker, S., Koziolek, H., and Reussner, R.: Model-based Performance Prediction with the
Palladio Component Model. In WOSP '07: Proceedings of the 6th International Workshop on Software and
performance, pages 54-65, New York, NY, USA, February 5-8 2007. ACM.
[Brosch 2009] Franz Brosch, Heiko Koziolek, Barbora Buhnova, and Ralf Reussner. Architecture-based
reliability prediction with the palladio component model. Transactions on Software Engineering, 38(6), 2011,
IEEE Computer Society.
[Canfora2008] Canfora, G., Penta, M. D., Esposito, R., and Villani, M. L. (2008). A framework for qos-aware
binding and re-binding of composite web services. Journal of Systems and Software, 81(10):1754--1769.
[Diaz-Pace2008] Diaz Pace, A., Kim, H., Bass, L., Bianco, P., and Bachmann, F. (2008). Integrating qualityattribute reasoning frameworks in the archE design assistant. In Proceedings of the 4th International
Conference on the Quality of Software-Architectures (QoSA 2008), volume 5281 of Lecture Notes in
Computer Science, pages 171{188. Springer-Verlag, Berlin, Germany.
[H. Koziolek2008] Heiko Koziolek and Ralf Reussner. A model-transformation from the palladio component
model to layered queueing networks. In Proc. of the SPEC International Workshop on Performance
Engineering (SIPEW'08), volume 5119 of LNCS, pages 58-78. Springer, June 2008.
[Menasce2010] Menasce, D. A., Casalicchio, E., and Dubey, V. (2010). On optimal service selection in
service oriented architectures. Performance Evaluation, 67(8):659--675. Special Issue on Software and
Performance.
[Zeng2008] Zeng, L., Ngu, A., Benatallah, B., Podorozhny, R., and Lei, H. (2008). Dynamic composition and
optimization of web services. Distributed and Parallel Databases, 24:45--72.
18
20.01.2015
Interplay of Design Time Optimization and Run Time Optimization
Anne Koziolek
Architecture-driven Requirements Engineering Group
Institute for Program Structures and Data Organization
Download