Abstract
Agile software development methodologies are increasingly adopted by organizations because they focus on the client’s needs, thus safeguarding business value for the final product. At the same time, as the economy and society move toward globalization, more organizations shift to distributed development of software projects. From this perspective, while adopting agile techniques seems beneficial, there are still a number of challenges that need to be addressed; among these notable is the effective cooperation between the stakeholders and the geographically distributed development team. In addition, data collection and validation for requirements engineering demands efficient processing techniques in order to handle the volume of data as well as to manage different inconsistencies, when the data are collected using online tools. In this paper, we present “PBURC,” a patterns-based, unsupervised requirements clustering framework, which makes use of machine-learning methods for requirements validation, being able to overcome data inconsistencies and effectively determine appropriate requirements clusters for optimal definition of software development sprints.





Similar content being viewed by others
References
Kotonya G, Somerville I (1998) Software requirements, processes and techniques, ser. Worldwide series in computer science. Wiley, New York
Wiegers K (2003) Software requirements, 2nd edn. Microsoft Press, USA
Abrahamsson P, Salo O, Ronkainen J, Warsta J (2002) Agile software development methods: review and analysis. Technical Research Centre of Finland, VTT Publications, Finland
Racheva Z, Daneva M, Sikkel K, Wieringa R, Herrmann A (2010) Do we know enough about requirements prioritization in agile projects: insight from a case study. In: Proceedings of the 18 IEEE international equirements engineering conference (RE 10), IEEE, Sep 2010, pp 147–156
Turk D, France R, Rumpe B (2002) Limitations of agile software processes. In: Proceedings of the 3rd international conference on eXtreme programming and agile processes in software engineering—XP2002
Paasivaara M, Durasiewicz S, Lassenius C (2009) Using scrum in distributed agile development: A multiple case study. In: IEEE international conference on global software engineering, pp 195–204
Duan C, Cleland-Huang J, Mobasher B (2008) A consensus based approach to constrained clustering of software requirements. In: ACM conference on information and knowledge management, NAPA, CA, USA, October 2008, pp 1073–1082
Racheva Z, Daneva M, Hermann A, Wieringa R (2010) A conceptual model and process for client-driven agile requirements prioritization. A conceptual model and process for client-driven agile requirements prioritization. In: The proceedings of 4th international conference on research challenges in information science (RCIS), Nice, France. IEEE, Los Alamitos
Ambler SW (2002) Agile modeling—effective practices for extreme programming and the unified process. Wiley, New York
Patton J (2005) Finding the forest in the trees. OOPSLA’05, October 16–20, San Diego, California, USA, pp 266–274
Highsmith J, Cockburn A (2001) Agile software development: the business of innovation. IEEE Comput 34(9):120–127
Goldin L, Berry D (1997) AbstFinder, a prototype natural language text abstraction finder for use in requirements elicitation. Autom Softw Eng J 4(1997):357–412
Kof L (2004) Natural language processing for requirements engineering: applicability to large requirements documents. In: Automated software engineering, proceedings of the workshops, Linz, Austria. Proceedings of the 19th international conference on automated software engineering
Rayson P, Garside R, Sawyer P (2000) Assisting requirements engineering with semantic document analysis. In: Proceedings of the RIAO conference, pp 1363–1371
Rolland C, Proix C (1992) A natural language approach for requirements engineering. In: Loucopoulos P (ed) Advanced information systems engineering, LNCS vol. 593. Springer, Verlag, pp 257–277
Buchholz E, Cyriaks H, Dusterhoft A, Mehlan H, Thalheim B (1995) Applying a natural language dialogue tool for designing databases. In: Proceedings of the first international workshop on applications of natural language to databases, pp 1–16
Ambriola V, Gervasi V (2006) On the systematic analysis of natural language requirements with CIRCE. Autom Softw Eng (13:1):107–167
Meth H, Li Y, Maedche A, Mueller B (2012). Advancing task elicitation systems–an experimental evaluation of design principles. In: Thirty third international conference on information systems, Orlando, 2012, pp 1–20
Hsia P, Hsu CT, Kung DC, Holder LB (1996) User-Centered system decomposition: Z-Based requirements clustering. In: 2nd international conference on requirements engineering. IEEE Computer Society, Colorado Springs, p 126, Apr 1996
Yaung AT (1992) Design and implementation of a requirements clustering analyzer for software system decomposition. In: ACM/SIGAPP symposium on applied computing: technological challenges of the 1990s, Kansas City, pp 1048–1054
Chen K (2005) An approach to constructing feature models based on requirements clustering. In: 10th international conference on requirements engineering Paris. IEEE Computer Society, France, pp 31–40
Laanti M, Salo O, Abrahamsson P (2011) Agile methods rapidly replacing traditional methods at nokia: a survey of opinions on agile transformation. Inf Softw Technol 53(3):276–290
Farmer M (2004) Decision space infrastructure: agile development in a large, distributed team. In: Proceedings of the 2004 agile development conference, IEEE Press, pp 95–99
Nisar M, Hameed T (2004) Agile methods handling offshore software development issues. In: Proceedings of the 8th international multitopic conference, 2004 (INMIC 2004), pp 417–422
Davis A, Dieste O, Hickey A, Juristo N, Moreno AM (2006) Effectiveness of requirements elicitation techniques: Empirical results derived from a systematic review. In: Proceedings of the 15th international conference on requirements engineering (RE 2006), Minneapolis, MN, USA, pp 176–185
Decker B, Ras E, Rech J, Jaubert P, Rieth M (2007) Wiki-based stakeholder participation in requirements engineering. IEEE Software, vol 24, no 2. IEEE press, pp 28–35
Zarinah MK, Siti Salwah S (2009) Supporting collaborative requirements elicitation using focus group discussion technique. Int J Softw Eng Appl 3(3):59–70
Lloyd SP (1982) Least squares quantization in PCM. IEEE Trans Inf Theory 28(2):129–137
Balasubramaniam R, Lan C, Kannan M, Peng X (2006) Can distributed software development be agile? Commun ACM 10(49):41–46
Davenport T, DeLong D, Beers M (1997) Successful knowledge management projects. Sloan Manag Rev 39(2):43–57
Li D, Deogun J, Spaulding W, Shuart B (2004). Towards missing data imputation: a study of fuzzy K-means clustering method. In: Tsumoto S, Slowinski R, Komorowski J, Grzymala-Busse JW (eds) (Lecture notes in computer science) vol 3066. Rough sets and current trends in computing (RSCTC 2004).Springer, Sweden, pp 573–579
Lee S, Yong H-S (2010) Distributed agile: project management in a global environment. Empir Softw Eng 15:204–217
Acknowledgments
The research presented in this paper has been carried out within the VOA3R project (Virtual Open Access Agriculture and Aquaculture Repository—http://voa3r.eu), which has received funding from the European Commission’s ICT Policy Support Programme (ICT PSP), Theme 4—Open access to scientific information.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Belsis, P., Koutoumanos, A. & Sgouropoulou, C. PBURC: a patterns-based, unsupervised requirements clustering framework for distributed agile software development. Requirements Eng 19, 213–225 (2014). https://doi.org/10.1007/s00766-013-0172-9
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00766-013-0172-9