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.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.References
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
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
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
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
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
Bosch J (2000) Design and use of software architectures: adopting and evolving a product-line approach. Addison Wesley
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
Clements PC, Jones LG, Northrop LM, McGregor JD (2005) Project management in a software product line organization. IEEE Softw 22(5): 54–62
Clements PC, Northrop LM (2002) Software product lines practices and pattern. Addison Wesley (2002)
Cohen J (1960) A coefficient of agreement for nominal scales. Educ Psychol Meas 20: 37–46
Coplien J, Hoffman D, Weiss D (1998) Commonality and variability in software engineering. IEEE Softw 15(6): 37–45
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
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
El Emam K (1999) Benchmarking kappa: inter-rater agreement in software process assessments. Empirical Softw Eng 4(2): 113–133
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
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
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
Garlan D, Perry D (1995) Introduction to the special issue on software architecture. IEEE Trans Softw Eng 21(4): 269–274
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
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
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
Jazayeri M, Ran A, van der Linden F (2000) Software architecture for product families: principles and practice. Addison Wesley
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
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
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
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
Kuvaja PJ, Simila J, Krzanik L, Bicego A, Saukkonen S, Koch G (1994) Software process assessment and improvement—the bootstrap approach. Blackwell, Oxford
Lam W (1997) Creating reusable architectures: an experience report. ACM Softw Eng Notes 22(4): 39–43
Landis J, Koch GG (1977) The measurement of observer agreement for categorical data. Biometrics 33: 159–174
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
Macala RR, Stuckey LD Jr, Gross DC (1996) Managing domain-specific, product-line development. IEEE Softw 13(3): 57–67
Mika K, Tommi M (2004) Assessing systems adaptability to a product family. J Syst Architect 50: 383–392
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)
Paulk MC, Curtis B, Chrissis MB, Weber CV (1993) Capability maturity model version 1.1. IEEE Softw 10(4): 18–27
Pronk BJ (2000) An interface-based platform approach. In: Proceedings of the 1st software product lines conference, pp 331–352
Thompson JM, Heimdahl MPE (2003) Structuring product family requirements for n-dimensional and hierarchical product lines. Requir Eng J 8(1): 42–54
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
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
van Ommering R (2005) Software reuse in product populations. IEEE Trans Softw Eng 31(7): 537–550
von Eye A, Mun EY (2005) Analyzing rater agreement manifest variable methods. LEA Publishers, London
Wang Y, King G (2000) Software engineering processes: principles and application. CRC Press, New York
Weiss DM, Lai CTR (1999) Software product line engineering: a family based software development process. Addison Wesley
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
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
Author information
Authors and Affiliations
Corresponding author
Rights 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
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11334-011-0159-y