Skip to main content

Advertisement

Log in

An architecture process maturity model of software product line engineering

  • Original Paper
  • Published:
Innovations in Systems and Software Engineering Aims and scope Submit manuscript

Abstract

Software architecture has been a key research area in the software engineering community due to its significant role in creating high-quality software. The trend of developing product lines rather than single products has made the software product line a viable option in the industry. Software product line architecture (SPLA) is regarded as one of the crucial components in the product lines, since all of the resulting products share this common architecture. The increased popularity of software product lines demands a process maturity evaluation methodology. Consequently, this paper presents an architecture process maturity model for software product line engineering to evaluate the current maturity of the product line architecture development process in an organization. Assessment questionnaires and a rating methodology comprise the framework of this model. The objective of the questionnaires is to collect information about the SPLA development process. Thus, in general this work contributes towards the establishment of a comprehensive and unified strategy for the process maturity evaluation of software product line engineering. Furthermore, we conducted two case studies and reported the assessment results, which show the maturity of the architecture development process in two organizations.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Ahmed F, Capretz LF (2008) The software product line architecture: an empirical investigation of key architecture process activities. Inf Softw Technol 50(11): 1098–1113

    Article  Google Scholar 

  2. America P, Obbink H, van Ommering R, van der Linden F (2000) COPA: a component-oriented platform architecting method family for product family engineering. In: Proceedings of the 1st software product line engineering conference, pp 167–180

  3. Atkinson C, Bayer J, Muthig D (2000) Component-based product line development. The KobrA approach. In: Proceedings of the 1st software product lines conference, pp 289–309

  4. Bayer J, Flege O, Knauber P, Laqua R, Muthig D, Schmid K, Widen T, DeBaud JM (1999) PuLSE: a methodology to develop software product lines. In: Proceedings of the 5th ACM SIGSOFT symposium on software reusability, pp 122–131

  5. Birk GH, John I, Schmid K, von der Massen T, Muller K (2003) Product line engineering, the state of the practice. IEEE Softw 20(6): 52–60

    Article  Google Scholar 

  6. Bosch J (2000) Design and use of software architectures: adopting and evolving a product-line approach. Addison Wesley

  7. Clements PC (2001) On the importance of product line scope. In: Proceedings of the 4th international workshop on software product family engineering, pp 69–77

  8. Clements PC, Jones LG, Northrop LM, McGregor JD (2005) Project management in a software product line organization. IEEE Softw 22(5): 54–62

    Article  Google Scholar 

  9. Clements PC, Northrop LM (2002) Software product lines practices and pattern. Addison Wesley (2002)

  10. Cohen J (1960) A coefficient of agreement for nominal scales. Educ Psychol Meas 20: 37–46

    Article  Google Scholar 

  11. Coplien J, Hoffman D, Weiss D (1998) Commonality and variability in software engineering. IEEE Softw 15(6): 37–45

    Article  Google Scholar 

  12. De Lange F, Kang J (2004) Architecture true prototyping of product lines. In: Proceedings of the 5th international workshop on software product family engineering, pp 445–453

  13. Dobrica L, Niemelä E (2004) UML notation extensions for product line architectures modeling. In: Proceedings of the 5th Australasian workshop on software and system architectures, pp 44–51

  14. El Emam K (1999) Benchmarking kappa: inter-rater agreement in software process assessments. Empirical Softw Eng 4(2): 113–133

    Article  Google Scholar 

  15. Eriksson M, Börstler J, Borg K (2005) The PLUSS approach—domain modeling with features, use cases and use case realizations. In: Proceedings of the 9th international conference on software product lines, pp 33–44

  16. Etxeberria L, Sagardui G (2005) Product line architecture: new issues for evaluation. In: Proceedings of the 9th international conference on software product lines, pp 174–185

  17. Gannod GC, Lutz RR (2000) An approach to architectural analysis of product lines. In: Proceedings of the 22nd international conference on software engineering, pp 548–557

  18. Garlan D, Perry D (1995) Introduction to the special issue on software architecture. IEEE Trans Softw Eng 21(4): 269–274

    Google Scholar 

  19. Gomaa H, Shin ME (2002) Multiple-view meta modeling of software product lines. In: Proceedings of the 8th IEEE international conference on engineering of complex computer systems, pp 238–246

  20. Graaf B, Van Kijk H, Van Deursen A (2005) Evaluating an embedded software reference architecture—industrial experience report. In: Proceedings of the 9th European conference on software maintenance and reengineering, pp 354–363

  21. Hofmeister C, Kruchten P, Nord RL, Obbink H, Ran A, America P (2007) A general model of software architecture design derived from five industrial approaches. J Syst Softw 80: 106–126

    Article  Google Scholar 

  22. Jazayeri M, Ran A, van der Linden F (2000) Software architecture for product families: principles and practice. Addison Wesley

  23. Jones L, Soule A (2002) Software process improvement and product line practice: CMMI and the framework for software product line practice, SEI. http://www.sei.cmu.edu/pub/documents/02.reports/pdf/02tn012.pdf

  24. Kang KC, Kim S, Lee J, Kim K, Shin E, Huh M (1998) FORM: a feature-oriented reuse method with domain specific reference architectures. Ann Softw Eng 5: 143–168

    Article  Google Scholar 

  25. Kim M, Park S (2004) Goal and scenario driven product line development. In: Proceedings of the 11th Asia-Pacific conference on software engineering, pp 584–585

  26. Knauber P, Muthig D, Schmid K, Wide T (2000) Applying product line concepts in small and medium-sized companies. IEEE Softw 17(5): 88–95

    Article  Google Scholar 

  27. Kuvaja PJ, Simila J, Krzanik L, Bicego A, Saukkonen S, Koch G (1994) Software process assessment and improvement—the bootstrap approach. Blackwell, Oxford

    Google Scholar 

  28. Lam W (1997) Creating reusable architectures: an experience report. ACM Softw Eng Notes 22(4): 39–43

    Article  Google Scholar 

  29. Landis J, Koch GG (1977) The measurement of observer agreement for categorical data. Biometrics 33: 159–174

    Article  MathSciNet  MATH  Google Scholar 

  30. Lee HY, Jung HW, Chung CS, Lee JM, Lee KW, Jeong HJ (2001) Analysis of inter-rater agreement in ISO/IEC 15504-based software process assessment. In: Proceedings of the 2nd Asia-Pacific conference on quality software, pp 341–348

  31. Macala RR, Stuckey LD Jr, Gross DC (1996) Managing domain-specific, product-line development. IEEE Softw 13(3): 57–67

    Article  Google Scholar 

  32. Mika K, Tommi M (2004) Assessing systems adaptability to a product family. J Syst Architect 50: 383–392

    Article  Google Scholar 

  33. Niemelä E, Matinlassi M, Taulavuori A (2004) Practical evaluation of software product family architectures. In: Proceedings of the 3rd international conference on software product lines, pp 130–145 (2004)

  34. Paulk MC, Curtis B, Chrissis MB, Weber CV (1993) Capability maturity model version 1.1. IEEE Softw 10(4): 18–27

    Article  Google Scholar 

  35. Pronk BJ (2000) An interface-based platform approach. In: Proceedings of the 1st software product lines conference, pp 331–352

  36. Thompson JM, Heimdahl MPE (2003) Structuring product family requirements for n-dimensional and hierarchical product lines. Requir Eng J 8(1): 42–54

    Article  Google Scholar 

  37. van der Hoek A, Dincel E, Medvidovic N (2003) Using service utilization metrics to assess the structure of product line architectures. In: Proceedings of the 9th international software metrics symposium, pp 298–308

  38. van der Linden F, Bosch J, Kamsties E, Känsälä K, Obbink H (2004) Software product family evaluation. In: Proceedings of the 3rd international conference on software product lines, pp 110–129

  39. van Ommering R (2005) Software reuse in product populations. IEEE Trans Softw Eng 31(7): 537–550

    Article  Google Scholar 

  40. von Eye A, Mun EY (2005) Analyzing rater agreement manifest variable methods. LEA Publishers, London

    Google Scholar 

  41. Wang Y, King G (2000) Software engineering processes: principles and application. CRC Press, New York

    Google Scholar 

  42. Weiss DM, Lai CTR (1999) Software product line engineering: a family based software development process. Addison Wesley

  43. Zhang H, Jarzabek S, Yang B (2003) Quality prediction and assessment for product lines. In: Proceedings of the 15th international conference on advanced information systems engineering, pp 681–695

  44. Zuo H, Mannion M, Sellier D, Foley R (2005) An extension of problem frame notation for software product lines. In: Proceedings of the 12th Asia Pacific conference on software engineering, pp 499–505

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Faheem Ahmed.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Ahmed, F., Capretz, L.F. An architecture process maturity model of software product line engineering. Innovations Syst Softw Eng 7, 191–207 (2011). https://doi.org/10.1007/s11334-011-0159-y

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11334-011-0159-y

Keywords

Navigation