Supporting Agile Software Development by Natural Language Processing

Agile software development puts more emphasis on working programs than on documentation. However, this may cause complications from the management perspective when an overview of the progress achieved within a project needs to be provided. In this paper, we outline the potential for applying natural language processing (NLP) in order to support agile development. We point out that using NLP, the artifacts created during agile software development activities can be traced back to the requirements expressed in user stories. This allows determining how far the project has progressed in terms of realized requirements.

[1]  Sukanya Ratanotayanon,et al.  Supporting Program Comprehension in Agile with Links to User Stories , 2009, 2009 Agile Conference.

[2]  Peter Sawyer,et al.  REVERE: Support for Requirements Synthesis from Documents , 2002, Inf. Syst. Frontiers.

[3]  Jens von Pilgrim,et al.  A survey of traceability in requirements engineering and model-driven development , 2010, Software & Systems Modeling.

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

[5]  Yann-Gaël Guéhéneuc,et al.  Recognizing Words from Source Code Identifiers Using Speech Recognition Techniques , 2010, 2010 14th European Conference on Software Maintenance and Reengineering.

[6]  Vincenzo Gervasi,et al.  On the Systematic Analysis of Natural Language Requirements with CIRCE , 2006, Automated Software Engineering.

[7]  James H. Martin,et al.  Speech and language processing: an introduction to natural language processing, computational linguistics, and speech recognition, 2nd Edition , 2000, Prentice Hall series in artificial intelligence.

[8]  Hinrich Schütze,et al.  Introduction to information retrieval , 2008 .

[9]  Mathias Landhäußer,et al.  Connecting User Stories and code for test development , 2012, 2012 Third International Workshop on Recommendation Systems for Software Engineering (RSSE).

[10]  Michael Collins,et al.  Convolution Kernels for Natural Language , 2001, NIPS.

[11]  Alessandro Moschitti,et al.  A Study on Convolution Kernels for Shallow Statistic Parsing , 2004, ACL.

[12]  Qin Zhang,et al.  Improving software development management through software project telemetry , 2005, IEEE Software.

[13]  Kent L. Beck,et al.  Test-driven Development - by example , 2002, The Addison-Wesley signature series.

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

[15]  Stephen Clark,et al.  Best Practices for Automated Traceability , 2007, Computer.