Introducing Agile Methods in a Large Software Development Team: The Impact on the Code

The adoption of agile methods of software development has gained momentum within the software industry. NW Soft Solutions Ltd. (a pseudonym) is a large software development unit that develops large-scale network centric software solutions. NW Soft Solutions Ltd decided to adopt an agile development methodology. In this case study, we use object-oriented metrics to evaluate and characterise the source code of an application produced by a team using agile methods. We compare the results obtained from the source code produced using agile methods with the results for source code produced for a similar type of application by the same team using a more traditional methodology. The contrast is stark. This case study shows that agile methods have guided the developers to produce code that manifests better quality and maintainability characteristics.

[1]  Robert C. Martin Agile Software Development, Principles, Patterns, and Practices , 2002 .

[2]  Paul W. Oman,et al.  The application of software maintainability models in industrial software systems , 1995, J. Syst. Softw..

[3]  Victor R. Basili,et al.  A Validation of Object-Oriented Design Metrics as Quality Indicators , 1996, IEEE Trans. Software Eng..

[4]  W. W. Royce,et al.  Managing the development of large software systems , 1970 .

[5]  Fred P. Brooks,et al.  The Mythical Man-Month , 1975, Reliable Software.

[6]  Barry W. Boehm,et al.  A spiral model of software development and enhancement , 1986, Computer.

[7]  Mary Poppendieck,et al.  Lean Software Development: An Agile Toolkit , 2003 .

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

[9]  Laurie A. Williams,et al.  Assessing test-driven development at IBM , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

[10]  Martin Fowler,et al.  Refactoring - Improving the Design of Existing Code , 1999, Addison Wesley object technology series.

[11]  Ken Schwaber,et al.  Agile Software Development with SCRUM , 2001 .

[12]  Alberto Sillitti Agile Processes in Software Engineering and Extreme Programming, 11th International Conference, XP 2010, Trondheim, Norway, June 1-4, 2010. Proceedings , 2010, XP.

[13]  Cristina Marinescu,et al.  iPlasma: An Integrated Platform for Quality Assessment of Object-Oriented Design , 2005, ICSM.

[14]  Fabio Kon,et al.  Tracking the Evolution of Object-Oriented Quality Metrics on Agile Projects , 2007, XP.

[15]  Mark Lorenz,et al.  Object-oriented software metrics - a practical guide , 1994 .

[16]  Chris F. Kemerer,et al.  A Metrics Suite for Object Oriented Design , 2015, IEEE Trans. Software Eng..

[17]  Michele Marchesi,et al.  An Agile Development Process and Its Assessment Using Quantitative Object-Oriented Metrics , 2008, XP.

[18]  Arthur J. Riel,et al.  Object-Oriented Design Heuristics , 1996 .

[19]  Anas N. Al-Rabadi,et al.  A comparison of modified reconstructability analysis and Ashenhurst‐Curtis decomposition of Boolean functions , 2004 .

[20]  Michele Lanza,et al.  Object-Oriented Metrics in Practice - Using Software Metrics to Characterize, Evaluate, and Improve the Design of Object-Oriented Systems , 2006 .

[21]  Alistair Cockburn,et al.  Agile Software Development , 2001 .

[22]  Sallie M. Henry,et al.  Object-oriented metrics that predict maintainability , 1993, J. Syst. Softw..

[23]  Marco Scotto,et al.  Does XP Deliver Quality and Maintainable Code? , 2007, XP.

[24]  Laurie A. Williams,et al.  Realizing quality improvement through test driven development: results and experiences of four industrial teams , 2008, Empirical Software Engineering.

[25]  Pekka Abrahamsson,et al.  Predicting Software Defect Density: A Case Study on Automated Static Code Analysis , 2007, XP.