An approach to reconcile the agile and CMMI contexts in product line development

Software product line approaches produce reusable platforms and architectures for products set developed by specific companies. These approaches are strategic in nature requiring coordination, discipline, commonality and communication. The Capability Maturity Model (CMM) contains important guidelines for process improvement, and specifies "what" we must have into account to achieve the disciplined processes (among others things). On the other hand, the agile context is playing an increasingly important role in current software engineering practices, specifying "how" the software practices must be addressed to obtain agile processes. In this paper, we carry out a preliminary analysis for reconciling agility and maturity models in software product line domain, taking advantage of both.

[1]  Mark C. Paulk,et al.  Capability Maturity Model Sm for Software, Version 1.1 Capability Maturity Model Sm for Software, Version 1.1 for the Commander (signature on File) Ii S Capability Maturity Model List of Figures List of Figures Iv S Capability Maturity Model , 1993 .

[2]  Richard Turner,et al.  CMMI Distilled: A Practical Introduction to Integrated Process Improvement , 2001 .

[3]  Martin Fowler,et al.  Is design dead , 2001 .

[4]  David E. Avison,et al.  The fiction of methodological development: a field study of information systems development , 1999, Inf. Technol. People.

[5]  John D. McGregor,et al.  Project management in a software product line organization , 2005, IEEE Software.

[6]  Karl E. Wiegers Read My Lips: No New Models! , 1998, IEEE Softw..

[7]  Pete McBreen,et al.  Questioning Extreme Programming , 2002 .

[8]  Linda Northrop,et al.  Product Line Adoption in a CMMI Environment , 2005 .

[9]  Barry W. Boehm,et al.  Balancing agility and discipline: evaluating and integrating agile and plan-driven methods , 2004, Proceedings. 26th International Conference on Software Engineering.

[10]  Agile Manifesto,et al.  Manifesto for Agile Software Development , 2001 .

[11]  Dirk Muthig,et al.  PuLSE-I: Deriving instances from a product line infrastructure , 2000, Proceedings Seventh IEEE International Conference and Workshop on the Engineering of Computer-Based Systems (ECBS 2000).

[12]  Barry W. Boehm,et al.  Get Ready for Agile Methods, with Care , 2002, Computer.

[13]  Barry W. Boehm,et al.  The Agile Methods Fray , 2002, Computer.

[14]  Kent L. Beck,et al.  Extreme programming explained - embrace change , 1990 .

[15]  Giancarlo Succi,et al.  Extreme Programming Perspectives , 2002 .

[16]  Paul D Nielsen,et al.  Software Engineering Institute: Year in Review 2008 , 2008 .

[17]  Tom DeMarco,et al.  Peopleware: Productive Projects and Teams , 1987 .

[18]  Xavier Franch,et al.  How agile COTS selection methods are (and can be)? , 2005, 31st EUROMICRO Conference on Software Engineering and Advanced Applications.

[19]  Ken Schwaber,et al.  SCRUM Development Process , 1997 .

[20]  Alistair Cockburn,et al.  Crystal Clear: A Human-Powered Methodology for Small Teams , 2004 .

[21]  A. Cockburn,et al.  Agile Software Development: The People Factor , 2001, Computer.

[22]  Kevin Tate,et al.  Sustainable Software Development: An Agile Perspective , 2005 .

[23]  Veikko Seppänen,et al.  COTS component acquisition in an emerging market , 2004, IEEE Software.

[24]  Klaus Pohl,et al.  Software Product Line Engineering , 2005 .

[25]  Frank van der Linden,et al.  Software Product Families in Europe: The Esaps & Café Projects , 2002, IEEE Softw..

[26]  John D. McGregor,et al.  Initiating software product lines , 2002, IEEE Software.