Skip to main content
Log in

An NLP-based quality attributes extraction and prioritization framework in Agile-driven software development

  • Published:
Automated Software Engineering Aims and scope Submit manuscript

Abstract

Software quality plays a significant role in ensuring the customer demands and expectations. Generally speaking, Quality of the software is a functional behaviour that heavily depends on the non-functional requirements. However, generally software engineer’s pay relatively lesser attention to the non-functional requirements. Moreover, it is of vital importance to have a clear view of software’s quality as early as possible, because it can affect the different artefacts of the software at later development stages including implementation, testing, and maintenance. The early-stage conformance of software quality is more important in agile-based software development where the requirements are more volatile than any other development environments. The early knowledge about the software quality can positively impact on the design decisions in agile-based software development context. Motivated by this, we propose a conceptual framework for automatic extraction and prioritization of quality attributes from the user stories in an agile-based development context. The proposed framework contains two main components including QAExtractor and QAPrioritiser. The core of this framework (QAExtractor) is based on natural language processing, which generalise the user stories for a specific quality attribute. In contrast, QAPrioritiser ranks the extracted quality attributes grounded on the frequency, roles impact, and criticality factor value. We validate the effectiveness of the proposed framework using two case studies. The results revealed that the proposed framework outperforms the existing technique in terms of precision, recall, and F measure.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7

Similar content being viewed by others

References

  • Abad, Z.S.H., Karras, O., Ghazi, P., Glinz, M., Ruhe, G., Schneider, K.: What works better? a study of classifying requirements. In: 2017 IEEE 25th International Requirements Engineering Conference (RE), pages 496–501. IEEE, (2017)

  • Al Omran, F.N.A., Treude, C.: Choosing an nlp library for analyzing software documentation: a systematic literature review and a series of experiments. In: 2017 IEEE/ACM 14th International Conference on Mining Software Repositories (MSR), pages 187–197. IEEE, (2017)

  • Al Imran, M.A., Lee, S.P., Ahsan, M.M.: Measuring impact factors to achieve conflict-free set of quality attributes. In: 2017 IEEE 8th Control and System Graduate Research Colloquium (ICSGRC), pages 174–178. IEEE, (2017)

  • Aljallabi, B.M., Mansour, A.: Enhancement approach for non-functional requirements analysis in agile environment. In: 2015 International Conference on Computing, Control, Networking, Electronics and Embedded Systems Engineering (ICCNEEE), pages 428–433. IEEE, (2015)

  • Arvanitou, Elvira Maria, Ampatzoglou, Apostolos, Chatzigeorgiou, Alexander, Galster, Matthias, Avgeriou, Paris: A mapping study on design-time quality attributes and metrics. J. Syst. Softw. 127, 52–77 (2017)

    Article  Google Scholar 

  • Bellomo, S., Nord, R., Ozkaya, I.: Elaboration on an integrated architecture and requirement practice: prototyping with quality attribute focus. In: 2013 2nd International Workshop on the Twin Peaks of Requirements and Architecture (TwinPeaks), pages 8–13. IEEE, (2013)

  • Chung, Lawrence, Nixon, Brian A., Yu, Eric, Mylopoulos, John: Non-Functional Requirements in Software Engineering, vol. 5. Springer, Berlin (2012)

    MATH  Google Scholar 

  • Chung, L., Prado Leite, J.C.S.D.: On non-functional requirements in software engineering. In: Conceptual modeling: Foundations and applications, 363–379. Springer, Berlin (2009)

  • Collobert, R., Weston, J., Bottou, L., Karlen, M., Kavukcuoglu, K., Kuksa, P.: Natural language processing (almost) from scratch. J. Mach. Learn. Res. 12, 2493–2537 (2011)

    MATH  Google Scholar 

  • Domah, D.: The NERV Methodology Non-Functional Requirements Elicitation Reasoning and Validation in Agile Processes PhD thesis. Nova Southeastern University, Fort Lauderdale (2013)

    Google Scholar 

  • Etxeberria, L., Mendieta, G.S., Belategi, L.: Modelling Variation in Quality Attributes. VaMoS. 7, 51–59 (2007)

    Google Scholar 

  • Farid, W.M.: The normap methodology: Lightweight engineering of non-functional requirements for agile processes. In: 2012 19th Asia-Pacific Software Engineering Conference, volume 1, pages 322–325. IEEE, (2012)

  • Farid, W.M., Mitropoulos, F.J.: Normatic: A visual tool for modeling non-functional requirements in agile processes. In: 2012 Proceedings of IEEE Southeastcon, pages 1–8. IEEE, (2012)

  • Ferrari, Alessio, Dell’Orletta, Felice, Esuli, Andrea, Gervasi, Vincenzo, Gnesi, Stefania: Natural language requirements processing: a 4d vision. IEEE Ann. Hist. Comput. 34(06), 28–35 (2017)

    Google Scholar 

  • Gilson, F., Galster, M., Georis, F.: Extracting quality attributes from user stories for early architecture decision making. In: 2019 IEEE International Conference on Software Architecture Companion (ICSA-C), pages 129–136. IEEE, (2019)

  • Hneif, M., Lee, S.P.: Using guidelines to improve quality in software nonfunctional attributes. IEEE Softw. 28(6), 72–77 (2010)

    Article  Google Scholar 

  • Jain, P., Sharma, A., Ahuja, L.: Ism based identification of quality attributes for agile development. In: 2016 5th International Conference on Reliability, Infocom Technologies and Optimization (Trends and Future Directions)(ICRITO), pages 615–619. IEEE, (2016)

  • Jawad, A.N.A., Bashir, H.: Hierarchical structuring of organizational performance using interpretive structural modeling. In: 2015 International Conference on Industrial Engineering and Operations Management (IEOM), pages 1–7. IEEE, (2015)

  • Jeon, S., Han, M., Lee, E., Lee, K.: Quality attribute driven agile development. In: 2011 Ninth International Conference on Software Engineering Research, Management and Applications, pages 203–210. IEEE, (2011)

  • Kassab, M.: The changing landscape of requirements engineering practices over the past decade. In: 2015 IEEE fifth international workshop on empirical requirements engineering (EmpiRE), pages 1–8. IEEE, (2015)

  • Knauss, E., Ott, D.: (semi-) automatic categorization of natural language requirements. In: International Working Conference on Requirements Engineering: Foundation for Software Quality, pages 39–54. Springer, (2014)

  • Kurtanović, Z., Maalej, W.: Automatically classifying functional and non-functional requirements using supervised machine learning. In: 2017 IEEE 25th International Requirements Engineering Conference (RE), pages 490–495. Ieee, (2017)

  • Lu, M., Liang, P.: Automatic classification of non-functional requirements from augmented app user reviews. In: Proceedings of the 21st International Conference on Evaluation and Assessment in Software Engineering, pages 344–353, (2017)

  • Maiti, R.R., Mitropoulos, F.J.: Capturing, eliciting, and prioritizing (cep) nfrs in agile software engineering. In: SoutheastCon 2017, pages 1–7. IEEE, (2017)

  • McCall, J.A., Richards, P.K., Walters, G.F.: Factors in software quality. volume i. concepts and definitions of software quality. Technical report, GENERAL ELECTRIC CO SUNNYVALE CA, (1977)

  • Mendeley data - requirements data sets (user stories). https://data.mendeley.com/datasets/7zbk8zsd8y/1. (Accessed on 11/22/2020)

  • Moreira, A., Araújo, J., Brito, I.: Crosscutting quality attributes for requirements engineering. In: Proceedings of the 14th international conference on Software engineering and knowledge engineering, pages 167–174, (2002)

  • Petrov, S., Das, D., McDonald, R.: A universal part-of-speech tagset. arXiv preprint arXiv:1104.2086, (2011)

  • Rehman, Bisma, Alam, Khubaib Amjad, Ko, Kwang Man: Automated classification of mobile app reviews considering user’s quality concerns. In: Sajid Anwar and Abdul Rauf, editors, Proceedings of the First International Workshop on Intelligent Software Automation, pages 29–35, Singapore, (2021). Springer Singapore

  • Schön, Eva-Maria., Thomaschewski, Jörg., Escalona, María José.: Agile requirements engineering: a systematic literature review. Comput. Stand. Interfaces 49, 79–91 (2017)

    Article  Google Scholar 

  • User stories and user story examples by mike cohn. https://www.mountaingoatsoftware.com/agile/user-stories. (Accessed on 09/23/2020)

  • Yin, W., Kann, K., Yu, M., Schütze, H.: Comparative study of cnn and rnn for natural language processing. arXiv preprint arXiv:1702.01923, (2017)

Download references

Acknowledgements

The authors would like to acknowledge the feedback and suggestions of members of Software Reliability Engineering Group (SREG) that helps in improving the initial version of the manuscript.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Khubaib Amjad Alam.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Ahmed, M., Khan, S.U.R. & Alam, K.A. An NLP-based quality attributes extraction and prioritization framework in Agile-driven software development. Autom Softw Eng 30, 7 (2023). https://doi.org/10.1007/s10515-022-00371-9

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1007/s10515-022-00371-9

Keywords

Navigation