Abstract
Verifying that a software system has certain non-functional properties is a primary concern in many engineering fields. Although several model-driven approaches exist to predict quality attributes from system models, they still lack the proper level of automation envisioned by Model Driven Software Development. When a potential issue concerning non-functional properties is discovered, the identification of a solution is still entirely up to the engineer and to his/her experience. This paper presents QVT-Rational, our multi-modeling solution to automate the detection-solution loop. We leverage and extend existing model transformation techniques with constructs to elicit the space of the alternative solutions and to bind quality properties to them. Our framework is highly customizable, it supports the definition of non-functional requirements and provides an engine to automatically explore the solution space. We evaluate our approach by applying it to two well-known software engineering problems — Object-Relational Mapping and components allocation — and by showing how several solutions that satisfy given performance requirements can be automatically identified.
This research was partially founded by the European Commission IDEAS-ERC Project 227977-SMScom.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Aleti, A., Bjornander, S., Grunske, L., Meedeniya, I.: Archeopterix: An extendable tool for architecture optimization of aadl models. In: MOMPES. IEEE, Los Alamitos (2009)
Alur, D., Crupi, J., Malks, D.: Core J2EE patterns: best practices and design strategies. Sun Microsystems Press (2003)
Becker, S., Koziolek, H., Reussner, R.: Model-based performance prediction with the palladio component model. In: WOSP. ACM, New York (2007)
Bures, T., Carlson, J., Crnkovic, J., Sentilles, S., Vulgarakis, A.: Procom - the progress component model reference manual, version 1.0. Tech. Rep. MHD-MRTC-230/2008-1-SE, Malardalen University (June 2008)
Canfora, G., Penta, M.D., Esposito, R., Villani, M.L.: An approach for qos-aware service composition based on genetic algorithms. In: GECCO. ACM, New York (2005)
Ciancone, A., Filieri, A., Drago, M.L., Mirandola, R., Grassi, V.: KlaperSuite: An integrated model-driven environment for reliability and performance analysis of component-based systems. In: Bishop, J., Vallecillo, A. (eds.) TOOLS 2011. LNCS, vol. 6705, pp. 99–114. Springer, Heidelberg (2011)
Cortellessa, V., Martens, A., Reussner, R., Trubiani, C.: A process to effectively identify “Guilty” performance antipatterns. In: Rosenblum, D.S., Taentzer, G. (eds.) FASE 2010. LNCS, vol. 6013, pp. 368–382. Springer, Heidelberg (2010)
Drago, M.L., Ghezzi, C., Mirandola, R.: A quality driven extension to the qvt-relations transformation language. In: CSRD. Springer, Heidelberg (2011) (submitted to), http://home.dei.polimi.it/drago/qvtrr.pdf
Insfrán, E., Gonzalez-Huerta, J., Abrahão, S.: Design guidelines for the development of quality-driven model transformations. In: Petriu, D.C., Rouquette, N., Haugen, Ø. (eds.) MODELS 2010. LNCS, vol. 6395, pp. 288–302. Springer, Heidelberg (2010)
Jackson, E.K., Kang, E., Dahlweid, M., Seifert, D., Santen, T.: Components, platforms and possibilities: Towards generic automation for mda. In: EMSOFT. ACM, New York (2010)
Kurtev, I.: Adaptability of Model Transformations. Ph.D. thesis, Unversity of Twente, Twente, Netherlands (2005)
Lau, S.Q., Czarnecki, K.: Domain Analysis of E-Commerce Systems Using Feature-Based Model Templates. Master’s thesis, University of Waterloo, Canada (2006)
Lazowska, E.D., Zahorjan, J., Graham, G.S., Sevcik, K.C.: Quantitative System Performance: Computer System Analysis Using Queueing Network Models. Prentice Hall, Englewood Cliffs (1984)
Martens, A., Koziolek, H., Becker, S., Reussner, R.: Automatically improve software architecture models for performance, reliability, and cost using evolutionary algorithms. In: WOSP/SIPEW (2010)
McGregor, J.D., Bachmann, F., Bass, L., Bianco, P., Klein, M.: Using arche in the classroom: One experience. Tech. Rep. SEI-2007-TN-001, CMU (2007)
Merilinna, J.: A Tool for Quality-Driven Architecture Model Transformation. Ph.D. thesis, VVT Technical Research Centre of Finland, Vuorimiehentie, Finland (2005)
Neema, S., Sztipanovits, J., Karsai, G., Butts, K.: Constraint-based design-space exploration and model synthesis. In: Alur, R., Lee, I. (eds.) EMSOFT 2003. LNCS, vol. 2855, pp. 290–305. Springer, Heidelberg (2003)
Object Management Group (OMG): Mof qvt specification 1.0 (April 2008), http://www.omg.org/spec/QVT/1.0
Parsons, T.: A framework for detecting performance design and deployment antipatterns in component based enterprise systems. In: DSM. ACM, New York (2005)
Pohl, K., Böckle, G., van der Linden, F.J.: Software Product Line Engineering: Foundations, Principles and Techniques. Springer, Heidelberg (2005)
Saxena, T., Karsai, G.: MDE-based approach for generalizing design space exploration. In: Petriu, D.C., Rouquette, N., Haugen, Ø. (eds.) MODELS 2010. LNCS, vol. 6394, pp. 46–60. Springer, Heidelberg (2010)
Smith, C.U., Williams, L.G.: Performance solutions: a practical guide to creating responsive, scalable software. Addison Wesley, Reading (2002)
Woodside, M., Petriu, D.C., Petriu, D.B., Shen, H., Israr, T., Merseguer, J.: Performance by unified model analysis (puma). In: WOSP. ACM, New York (2005)
Xu, J.: Rule-based automatic software performance diagnosis and improvement. In: WOSP. ACM, New York (2008)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Drago, M.L., Ghezzi, C., Mirandola, R. (2011). Towards Quality Driven Exploration of Model Transformation Spaces. In: Whittle, J., Clark, T., Kühne, T. (eds) Model Driven Engineering Languages and Systems. MODELS 2011. Lecture Notes in Computer Science, vol 6981. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-24485-8_2
Download citation
DOI: https://doi.org/10.1007/978-3-642-24485-8_2
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-24484-1
Online ISBN: 978-3-642-24485-8
eBook Packages: Computer ScienceComputer Science (R0)