Requirements Reuse: The State of the Practice

For several decades, software reuse has been a recognized solution to improving efficiency of software development. However, implementing reuse in practice remains challenging, and the IT community has little visibility into the state of the practice specifically as it pertains to reusing software requirements. This paper presents the results of a survey conducted in the global IT industry in 2010 and discusses the state of the practice for software requirements reuse. The survey studies reuse adoption in two different contexts, i.e., Software Product Lines and Software Maintenance. The analysis of the survey data focuses on the latter context as a more common case in practice and investigates the impact of various factors on reuse adoption and effectiveness.

[1]  Sooyong Park,et al.  Applied Software Product Line Engineering , 2009 .

[2]  Mary Beth Chrissis,et al.  CMMI: Guidelines for Process Integration and Product Improvement , 2003 .

[3]  Brian Berenbach,et al.  Software & Systems Requirements Engineering: In Practice , 2009 .

[4]  Paul Clements,et al.  Software product lines - practices and patterns , 2001, SEI series in software engineering.

[5]  Stan Jarzabek,et al.  Effective Software Maintenance and Evolution - A Reuse-Based Approach , 2007 .

[6]  Klaus Schmid,et al.  Software product lines in action - the best industrial practice in product line engineering , 2007 .

[7]  Penny Grubb,et al.  Software Maintenance: Concepts and Practice , 2003 .

[8]  Ivar Jacobson,et al.  Software Reuse: Architecture, Process And Organization For Business Success , 1998, Proceedings. Technology of Object-Oriented Languages. TOOLS 26 (Cat. No.98EX176).

[9]  Rubén Prieto-Díaz,et al.  Software reusability , 1993 .

[10]  Even-André Karlsson,et al.  Software reuse: a holistic approach , 1995 .

[11]  Soo Dong Kim,et al.  Software Reusability , 2008, Wiley Encyclopedia of Computer Science and Engineering.

[12]  Mike Cohn,et al.  User Stories Applied: For Agile Software Development , 2004 .

[13]  Dean Leffingwell,et al.  Agile Software Requirements: Lean Requirements Practices for Teams, Programs, and the Enterprise , 2011 .

[14]  Thomas M. Pigoski Practical Software Maintenance: Best Practices for Managing Your Software Investment , 1996 .

[15]  A. Berztiss,et al.  Requirements Engineering , 2002, J. Object Technol..

[16]  Kurt Bittner,et al.  Use Case Modeling , 2002 .

[17]  W BoyerKenneth Advanced use case modeling , 2002 .

[18]  Claes Wohlin,et al.  Engineering and Managing Software Requirements , 2005 .

[19]  Michel Ezran,et al.  Practical Software Reuse , 2002, Practitioner Series.

[20]  Keunhyuk Yeom,et al.  An approach to developing domain requirements as a core asset based on commonality and variability analysis in a product line , 2005, IEEE Transactions on Software Engineering.

[21]  Karl E. Wiegers,et al.  Software Requirements , 1999 .