skip to main content
10.1145/3374549.3374561acmotherconferencesArticle/Chapter ViewAbstractPublication PagesicsebConference Proceedingsconference-collections
research-article

Non-functional Requirement Patterns for Agile Software Development

Authors Info & Claims
Published:28 January 2020Publication History

ABSTRACT

Following the agile principles, agile software development is popular among software developing organizations. The attractive characteristics of agile development are that it embraces frequent changes and that it gives high priority to users. Due to such characteristics, non-functional requirements are usually not identified in the requirements elicitation process. They are often neglected in an early phase, and even overlooked in the later stages of software development. This results in poor quality software. To enhance non-functional requirements identification in agile development, this paper proposes a development of a set of non-functional requirement patterns in the form of requirement templates for agile development. The set is composed of 10 security requirement patterns and 13 fault tolerance requirement patterns, which are derived from an analysis of security and fault tolerance design patterns. The proposed non-functional requirement patterns can facilitate non-functional requirements gathering and help agile team members in writing the requirements. In an experiment on a Scrum team, the team members took less time to write security and fault tolerance requirements for a number of given problems when using the proposed patterns, compared with the case of not using the patterns. In addition, the non-functional requirement patterns helped the team members to write more complete security and fault tolerance requirements. Despite the effort they had to spend in learning the proposed requirement patterns, the team also agreed that the patterns are useful in practice.

References

  1. Beckers, K., Côté, I., and Goeke, L. 2014. "A catalog of security requirements patterns for the domain of cloud computing systems," In Proceedings of the 29th Annual ACM Symposium on Applied Computing (Gyeongju, Republic of Korea, March 24--28, 2014). SAC '14. ACM, New York, NY, 337--342. DOI=10.1145/2554850.2554921.Google ScholarGoogle Scholar
  2. Behutiye, W., Karhapää, P., Costal, D., Oivo, M., and Franch, X. 2017. "Non-functional requirements documentation in agile software development: challenges and solution proposal," In Proceedings of the 18th International Conference on Product-Focused Software Process Improvement (Innsbruck, Austria, November 29 - December 1, 2017). PROFES '17, LNCS 10611. Springer, Cham, Switzerland, 515--522. DOI= https://doi.org/10.1007/978-3-319-69926-4_41.Google ScholarGoogle Scholar
  3. Chung, L., Paech, B., Zhao, L., Liu, L., and Supakkul, S. 2012. RePa Requirements Pattern Template. [Online]. Template for submission to the 2nd International Workshop on Requirements Patterns. RePa '12. 4 pages. Available from: http://www.utdallas.edu/~supakkul/repa12/submission.html. Last access: August 9, 2019.Google ScholarGoogle Scholar
  4. CollabNet VersionOne. 2019. 13th Annual State of Agile Report. [Online]. Available from: http://www.stateofagile.com/. Last access: August 9, 2019.Google ScholarGoogle Scholar
  5. Hanmer, R. 2007. Patterns for Fault Tolerant Software. John Wiley & Sons Ltd, Chichester, West Sussex, England.Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Lucassen, G., Dalpiaz, F., van der Werf, J. M. E. M., and Brinkkemper, S. 2016. The use and effectiveness of user stories in practice. In Proceedings of the International Working Conference on Requirements Engineering: Foundation for Software Quality (Gothenburg, Sweden, March 14-17, 2016). REFSQ '16, LNCS 9619. Springer, Cham, Switzerland, 205--222. DOI= https://doi.org/10.1007/978-3-319-30282-9_14.Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Meszaros, G. and Doble, J. 1996. MetaPatterns: A Pattern Language for Pattern Writing. In Proceedings of 3rd Pattern Languages of Programming conference. PLoP '96. 37 pages.Google ScholarGoogle Scholar
  8. Palomares, C., Quer, C., Franch, X., Guerlain, C., and Renault, S. 2012. A catalogue of non-technical requirement patterns. In Proceedings of 2012 Second IEEE International Workshop on Requirements Patterns (Chicago, Illinois, September 24, 2012). RePa '12. IEEE, New York, NY, 1--6. DOI=10.1109/RePa.2012.6359969.Google ScholarGoogle ScholarCross RefCross Ref
  9. Riaz, M. and Williams, L. 2012. Security requirements patterns: understanding the science behind the art of pattern writing. In Proceedings of 2012 Second IEEE International Workshop on Requirements Patterns (Chicago, Illinois, September 24, 2012). RePa '12. IEEE, New York, NY, 29--34. DOI=10.1109/RePa.2012.6359977.Google ScholarGoogle ScholarCross RefCross Ref
  10. Schumacher, M., Fernandez-Buglioni, E., Hybertson, D., Buschmann, F., and Sommerlad, P. 2006. Security Patterns - Integrating Security and Systems Engineering. John Wiley & Sons Ltd, Chichester, West Sussex, England.Google ScholarGoogle Scholar
  11. Withall, S. 2007. Software Requirement Patterns. Microsoft Press.Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Supaporn, K., Prompoon, N., and Rojkangsadan, T. 2007. An Approach: Constructing the Grammar from Security Pattern. In Proceedings of 4th International Joint Conference on Computer Science and Software (Khonkaen, Thailand, May 2-4, 2007). JCSSE '07. 8 pages.Google ScholarGoogle Scholar
  13. The Standish Group International. 2015. Chaos Report. [Online]. Available from: https://www.standishgroup.com/sample_research_files/CHAOSReport2015-Final.pdf. Last access: August 9, 2019.Google ScholarGoogle Scholar
  14. Tal, L. 2015. Agile Software Development with HP Agile Manager. Apress.Google ScholarGoogle Scholar

Index Terms

  1. Non-functional Requirement Patterns for Agile Software Development

              Recommendations

              Comments

              Login options

              Check if you have access through your login credentials or your institution to get full access on this article.

              Sign in
              • Published in

                cover image ACM Other conferences
                ICSEB '19: Proceedings of the 2019 3rd International Conference on Software and e-Business
                December 2019
                215 pages
                ISBN:9781450376495
                DOI:10.1145/3374549

                Copyright © 2019 ACM

                Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

                Publisher

                Association for Computing Machinery

                New York, NY, United States

                Publication History

                • Published: 28 January 2020

                Permissions

                Request permissions about this article.

                Request Permissions

                Check for updates

                Qualifiers

                • research-article
                • Research
                • Refereed limited

              PDF Format

              View or Download as a PDF file.

              PDF

              eReader

              View online with eReader.

              eReader