Skip to main content

Models in Software Architecture Derivation and Evaluation: Challenges and Opportunities

  • Conference paper
  • First Online:
Model-Driven Engineering and Software Development (MODELSWARD 2014)

Abstract

Software architecture derivation and evaluation are complex and error prone activities that still represent an open problem with many challenges and opportunities where model-driven software development can play a leading role. In software product line development, the use of model-driven principles could help by providing a richer semantic representation of a product line and by capturing the architectural design decisions and its impact on the product quality attributes. In this chapter, we analyze the main challenges and opportunities surrounding the product architecture derivation and evaluation and introduce QuaDAI, a method for the derivation, evaluation, and improvement of product architectures in model-driven software product line development environments. The method comprises a multimodel, which represents the different viewpoints of a software product line, and a process conducted by model transformations that automate the derivation, evaluation, and improvement of product architectures.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    The prototype is available for download at: http://users.dsic.upv.es/~jagonzalez/CarCarSPL/index.html.

  2. 2.

    The whole specification of the example is available at http://users.dsic.upv.es/~jagonzalez/CarCarSPL/links.html.

  3. 3.

    NFRs are defined in the quality viewpoint as constraints affecting the quality attributes whereas the prioritization of the quality attributes allows expressing the relative importance of each quality attribute.

References

  1. Rabiser, R., Grünbacher, P., Dhungana, D.: Requirements for product derivation support: results from a systematic literature review and an expert survey. Inf. Softw. Technol. 52, 324–346 (2010)

    Article  Google Scholar 

  2. Clements, P., Northrop, L.: Software Product Lines: Practices and Patterns. Addison-Wesley Professional, Boston (2001)

    Google Scholar 

  3. Atkinson, C., Bayer, J., Muthig, D.: Component-based product line development: the KobrA approach. In: 1st International Conference on Software Product Lines, pp. 289–309, Denver, Colorado (2000)

    Google Scholar 

  4. Asikainen, T., Soininen, T., Männistö, T.: A Koala-based approach for modelling and deploying configurable software product families. In: 5th International Workshop on Product-Family Engineering, pp. 225–249, Sienna, Italy (2003)

    Google Scholar 

  5. Botterweck, G., Lee, K., Thiel, S.: Automating product derivation in software product line engineering. In: Software Engineering Conference, pp. 177–182, Kaiserslautern, Germany (2009)

    Google Scholar 

  6. Cabello, M.E.: Baseline-Oriented Modeling: una Aproximación Mda Basada en Líneas de Productos Software para el Desarrollo de Aplicaciones. PhD thesis, Departamento de Sistemas Informáticos y Computación, Universitat Poltècnica de València (2008)

    Google Scholar 

  7. Rossel, P.O., Perovich, D., Bastarrica, M.C.: Reuse of architectural knowledge in SPL development. In: Edwards, S.H., Kulczycki, G. (eds.) 11th International Conference on Software Reuse, pp. 191–200, Falls Church, VA, USA (2009)

    Google Scholar 

  8. Duran-Limon, H.A., Castillo-Barrera, F.E., Lopez-Herrejon, R.E.: Towards an ontology-based approach for deriving product architectures. In: 15th International Software Product Line Conference, vol. 2, Munich, Germany (2011)

    Google Scholar 

  9. Czarnecki, K., Antkiewicz, M.: Mapping features to models: a template approach based on superimposed variants. In: Glück, R., Lowry, M. (eds.) GPCE 2005. LNCS, vol. 3676, pp. 422–437. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  10. Ziadi, T., Jézéquel, J.: Software product line engineering with the UML: deriving products. In: 10th Software Product Lines Conference, pp. 557–588, Baltimore, Maryland, USA (2006)

    Google Scholar 

  11. Gomaa, H., Shin, M.E.: Automated software product line engineering. In: 40th Annual Hawaii International Conference on System Science, pp. 1–10, Hawaii, USA (2007)

    Google Scholar 

  12. Perrouin, G., Klein, J., Guelfi, N., Jézéquel, J.M.: Reconciling automation and flexibility in product derivation. In: 12th Software Product Line Conference, pp. 339–348, Limerick, Ireland (2008)

    Google Scholar 

  13. Schaefer, I., Worret, A., Poetzsch-Heffter, A.: A model-based framework for automated product derivation. In: 1st International Workshop on Model-Driven Approaches in Software Product Line Engineering, pp. 14–21, San Francisco, California, USA (2009)

    Google Scholar 

  14. Tawhid, R., Petriu, D.C.: Product model derivation by model transformation in software product lines. In: 14th IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing Workshops, pp. 72–79, Newport Beach, Canada (2011)

    Google Scholar 

  15. Sánchez, P., Loughran, N., Fuentes, L., Garcia, A.: Engineering languages for specifying product-derivation processes in software product lines. In: Software Language Engineering, pp. 188–208, Toulousse, France (2008)

    Google Scholar 

  16. Heidenreich, F., Kopcsek, J., Wende, C.: FeatureMapper: mapping features to models. In: Companion of the 30th International Conference on Software Engineering, pp. 943–944, Vancouver, Canada (2008)

    Google Scholar 

  17. Haugen, Ø., Moller-Pedersen, B., Olsen, G.K., Svendsen, A., Fleurey, F., Zhang, X.: Consolidated CVL language and tool. MoSiS Project, D.2.1.4., SINTEF, Univeristy of Oslo (2010)

    Google Scholar 

  18. Montagud, S., Abrahão, S.: Gathering current knowledge about quality evaluation in software product lines. In: 13th Software Product Line Conference, pp. 91–100, San Francisco, USA (2009)

    Google Scholar 

  19. Kazman, R., Klein, M., Clements, P.: ATAM: method for architecture evaluation. CMU/SEI-2000-TR-004, ESC-TR-2000-004, Software Engineering Institute, Carnegie Mellon University (2000)

    Google Scholar 

  20. Kazman, R., Bass, L., Abowd, G., Webb, M.: SAAM: a method for analyzing the properties of software architectures. In: 16th International Conference on Software Engineering, pp. 81–90, Sorrento, Italy (1994)

    Google Scholar 

  21. González-Huerta, J., Insfrán, E., Abrahão, S.: Defining and validating a multimodel approach for product architecture derivation and improvement. In: 16th International Conference on Model-Driven Engineering Languages and Systems, pp. 388–404, Miami, USA (2013)

    Google Scholar 

  22. Gonzalez-Huerta, J., Insfran, E., Abrahão, S., Scanniello, G.: Validating a model-driven software architecture evaluation and improvement method: a family of experiments. Inf. Softw. Technol. 57, 405–429 (2015)

    Article  Google Scholar 

  23. Guana, V., Correal, D.: Improving software product line configuration: a quality attribute-driven approach. Inf. Softw. Technol. 55, 541–562 (2013)

    Article  Google Scholar 

  24. Fleurey, F., Haugen, Ø., Møller-Pedersen, B.: A Generic Language and Tool for Variability Modeling. SINTEF, Oslo (2009)

    Google Scholar 

  25. Dolan, T.J.: Architecture Assessment of Information-System Families: a Practical Perspective. PhD thesis, Technische Universiteit Eindhoven (2001)

    Google Scholar 

  26. Graaf, B., van Dijk, H., van Deursen, A.: Evaluating an embedded software reference architecture—industrial experience report—. In: 9th European Conference on Software Maintenance and Reengineering, Manchester, United Kingdom (2005)

    Google Scholar 

  27. Bengtsson, P., Lassing, N., Bosch, J., van Vliet, H.: Architecture-level modifiability analysis (ALMA). J. Syst. Softw. 69, 129–147 (2004)

    Article  Google Scholar 

  28. Matinlassi, M., Niemelä, E., Dobrica, L.: Quality-driven architecture design and quality analysis method. VTT Publications 456, VTT Technical Research Centre of Finland, Oulu, Finland (2002)

    Google Scholar 

  29. Alves, E., Junior, D.O., Gimenes, I.M.S.: A metric suite to support software product line architecture evaluation. In: XXIV Conferencia Latinoamericana de Informática, pp. 489–498, Santa Fé, Argentina (2008)

    Google Scholar 

  30. Gannod, G., Lutz, R.: An approach to architectural analysis of product lines. In: 22nd International Conference on Software Engineering, pp. 548–557, Limerick, Ireland (2000)

    Google Scholar 

  31. Maccari, A.: Experiences in assessing product family software architecture for evolution. In: 24th International Conference on Software Engineering, pp. 585–592, Orlando, Florida (2002)

    Google Scholar 

  32. Riva, C., Rosso, C.D.: Experiences with software product family evolution. In: 6th International Workshop on Principles of Software Evolution, Helsinki, Finland (2003)

    Google Scholar 

  33. Tawhid, R., Petriu, D.C.: Automatic derivation of a product performance model from a software product line model. In: 15th International Software Product Line Conference, pp. 80–89. IEEE, Munich, Germany (2011)

    Google Scholar 

  34. Alonso, A., García-Valls, M., Puente, J.: Assessment of timing properties of family products. In: ESPRIT-ATES Workshop, pp. 161–169, Las palmas de Gran Canaria, Spain (1998)

    Google Scholar 

  35. Kim, T., Ko, I.Y, Kang, S.W., Lee, D.H.: Extending ATAM to assess product line architecture. In: 2008 8th IEEE International Conference on Computer and Information Technology, pp. 790–797, Khulna, Bangladesh (2008)

    Google Scholar 

  36. Olumofin, F.G., Misic, V.B.: A holistic architecture assessment method for software product lines. Inf. Softw. Technol. 49, 309–323 (2007)

    Article  Google Scholar 

  37. Etxeberria, L.: Evaluación de atributos de calidad en líneas de productos software de forma efectiva en costes. PhD thesis, Departamento de Electonica e Informatica, Modragon Unibesitatea (2008)

    Google Scholar 

  38. Roos-Frantz, F., Benavides, D., Ruiz-Cortés, A., Heuer, A., Lauenroth, K.: Quality-aware analysis in product line engineering with the orthogonal variability model. Softw. Qual. J. 20, 519–565 (2011)

    Article  Google Scholar 

  39. Soltani, S., Asadi, M., Gašević, D., Simon, M.H., Bagheri, E.: Automated planning for feature model configuration based on functional and non-functional requirements. In: Proceedings of the 16th International Software Product Line Conference, vol. 1, pp. 56–65, New York, NY, USA (2012)

    Google Scholar 

  40. Ghezzi, C., Sharifloo, A.M.: Verifying non-functional properties of software product lines: towards an efficient approach using parametric model checking. In: 15th International Software Product Line Conference, pp. 170–174. IEEE, Munich, Germany (2011)

    Google Scholar 

  41. Crnkovic, I., Larsson, M., Preiss, O.: Concerning predictability in dependable component- based systems: classification of quality attributes. In: ICSE 2004 Workshops on Software Architectures for Dependable Systems, pp. 257–278, Edinburgh, Scotland, UK (2004)

    Google Scholar 

  42. González-Huerta, J., Insfran, E., Abrahão, S.: A multimodel for integrating quality assessment in model-driven engineering. In: 8th International Conference on the Quality of Information and Communications Technology, pp. 251–254, Lisbon, Portugal (2012)

    Google Scholar 

  43. Barkmeyer, E.J., Feeney, A.B., Denno, P., Flater, D.W., Libes, D.E., Steves, M.P., Wallace, E.K.: Concepts for Automating Systems Integration. NISTIR 6928, U.S. Department of Commerce (2003)

    Google Scholar 

  44. Kang, K.C., Cohen, S.G., Hess, J.A., Novak, W.E., Peterson, A.S.: Feature-Oriented Domain Analysis (FODA) Feasibility Study. CMU/SEI-90-TR-21 ESD-90-TR-222, Software Engineering Institute, Carnegie Melon University (1990)

    Google Scholar 

  45. Gómez, A., Ramos, I.: Cardinality-based feature modeling and model-driven engineering: fitting them together. In: International Workshop on Variability Modelling of Software-Intensive Systems, pp. 61–68. Linz, Austria (2010)

    Google Scholar 

  46. Object Management Group: Common Variability Language (CVL) OMG Revised Submission (2012)

    Google Scholar 

  47. González-Huerta, J., Insfran, E., Abrahão, S., McGregor, J.D.: Non-functional requirements in model-driven software product line engineering. In: Proceedings of the Fourth International Workshop on Nonfunctional System Properties in Domain Specific Modeling Languages, pp. 1–6. Innsbruck, Austria (2012)

    Google Scholar 

  48. ISO/IEC: ISO/IEC 25000:2005 Software Engineering - Software product Quality Requirements and Evaluation (SQuaRE) - Guide to SQuaRE (2005)

    Google Scholar 

  49. González-huerta, J., Insfran, E., Abrahão, S., Mcgregor, J.D.: Architecture derivation in product line development through model transformations. In: 22nd International Conference on Information Systems Development, Seville, Spain (2013)

    Google Scholar 

  50. Douglass, B.P.: Real-Time Design Patterns: Robust Scalable Architecture for Real-Time Systems. Addison Wesley, Boston (2002)

    Google Scholar 

  51. Kruchten, P.: The Rational Unified Process, an Introduction. Addison Wesley, Boston (1999)

    Google Scholar 

  52. Buschmann, F., Meunier, R., Rohnert, H., Sommerlad, P., Stal, M.: Pattern-Oriented Software Architecture: a System of Patterns, vol. 1. Wiley, Chichester (1996)

    Google Scholar 

  53. Janota, M., Botterweck, G.: Formal approach to integrating feature and architecture models. In: 11th Conference on Fundamental Approaches to Software Engineering, pp. 31–45, Budapest, Hungary (2008)

    Google Scholar 

  54. ISA Research Group: Fama Tool Suite. http://www.isa.us.es/fama/

  55. Eclipse: Eclipse OCL. http://projects.eclipse.org/projects/modeling.mdt.ocl

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Silvia Abrahão .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this paper

Cite this paper

Gonzalez-Huerta, J., Insfran, E., Abrahão, S. (2015). Models in Software Architecture Derivation and Evaluation: Challenges and Opportunities. In: Hammoudi, S., Pires, L., Filipe, J., das Neves, R. (eds) Model-Driven Engineering and Software Development. MODELSWARD 2014. Communications in Computer and Information Science, vol 506. Springer, Cham. https://doi.org/10.1007/978-3-319-25156-1_2

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-25156-1_2

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-25155-4

  • Online ISBN: 978-3-319-25156-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics