Skip to main content
Log in

A framework for evaluating and improving requirements specifications based on the developers and testers perspective

  • Original Article
  • Published:
Requirements Engineering Aims and scope Submit manuscript

Abstract

Requirements specifications are essential to properly communicate requirements among the software development team members. However, each role in the team has different informational needs in order to perform their activities. Thus, the requirements engineer should provide the necessary information to meet each team member's necessities to reduce errors in software development due to inadequate or insufficient communication. Although some research is concerned with communicating requirements among clients and analysts, no related research has been found to evaluate and improve requirements communication within the software development team. With this in mind, we present the ReComP framework, which assists in the identification of problems in the artifacts used to communicate requirements, identification of informational requirements for each role of the development team, and provide improvement suggestions to address requirements communication problems. ReComP was developed using the Design Science Research (DSR) method and this paper presents the results of two DSR cycles considering the use of ReComP for the developer and tester roles by using, respectively, user stories and use cases as requirements specifications. The results provide evidence that ReComP helps software development teams to identify and improve issues in the requirements specifications used for project communication. In two independent studies, ReComP was able to decrease the frequency of problems by 77% in user stories identified by developers and the frequency of all (100%) problems in use cases identified by testers.

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
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13

Similar content being viewed by others

Availability of data and material

Technical report available [52].

Notes

  1. We defined ReComP framework according to the Cambridge dictionary, “a supporting structure around which something can be built” and “a system of rules, ideas, or beliefs that is used to plan or decide something”.

References

  1. Bjarnason E, Sharp H (2017) (2017) The role of distances in requirements communication: a case study. Requirements Eng 22(1):1–26. https://doi.org/10.1007/s00766-015-0233-3

    Article  Google Scholar 

  2. Fricker SA, Schneider K, Fotrousi F, Thuemmler C (2016) Workshop videos for requirements communication. Requirements Eng 21(4):521–552. https://doi.org/10.1007/s00766-015-0231-5

    Article  Google Scholar 

  3. Bjarnason E, Wnuk K, Regnell B (2011) Requirements are slipping through the gaps—a case study on causes and effects of communication gaps in large-scale software development. In: 19th international requirements engineering conference. IEEE. pp 37–46.

  4. Begel A, Zimmermann T (2014) Analyze this! 145 questions for data scientists in software engineering. In: Proceedings of the 36th International Conference on Software Engineering. ACM, pp 12–23. https://doi.org/10.1145/2568225.2568233

  5. Méndez Fernández D, Wagner S, Kalinowski M, Felderer M, Mafra P, Vetrò A, Conte T et al (2017) Naming the pain in requirements engineering. Empir Softw Eng 22:1–41. https://doi.org/10.1007/s10664-016-9451-7

    Article  Google Scholar 

  6. Ali SW, Ahmed QA, Shafi I (2018) Process to enhance the quality of software requirement specification document. In: 2018 International Conference on Engineering and Emerging Technologies (ICEET). IEEE, pp 1–7. https://ieeexplore.ieee.org/document/8338619/

  7. Reggio G, Leotta M, Ricca F, Clerissi D (2018) DUSM: a method for requirements specification and refinement based on disciplined use cases and screen mockups. J Comput Sci Technol 33(5):918–939. https://doi.org/10.1007/s11390-018-1866-8

    Article  Google Scholar 

  8. Anda B, Hansen K, Sand G (2009) An investigation of use case quality in a large safety-critical software development project. Inf Softw Technol 51(12):1699–1711. https://doi.org/10.1016/j.infsof.2009.04.005

    Article  Google Scholar 

  9. Cockburn A (2001) Writing effective use cases, vol 1. Addison-Wesley, Boston

    Google Scholar 

  10. Mohagheghi P, Anda B, Conradi R (2005) Effort estimation of use cases for incremental large-scale software development. Intl Conf Softw Eng. https://doi.org/10.1109/ICSE.2005.1553573

    Article  Google Scholar 

  11. Schon E-M, Winter D, Escalona MJ, Thomaschewski J (2017) Key challenges in agile requirements engineering. In: Baumeister H, Lichter H, Riebisch M (eds) Agile processes in software engineering and extreme programming. Springer, Cham, pp 37–51. https://doi.org/10.1007/978-3-319-57633-6_3

    Chapter  Google Scholar 

  12. Schön EM, Thomaschewski J, Escalona MJ (2017) Agile requirements engineering: a systematic literature review. Computer Standards and Interfaces 49:79–91. https://doi.org/10.1016/j.csi.2016.08.011

    Article  Google Scholar 

  13. Gilson F, Irwin C (2018) From user stories to use case scenarios towards a generative approach. In: Australasian Software Engineering Conference (ASWEC). IEEE, pp 61–65.

  14. Jia J, Yang X, Zhang R, Liu X (2019) Understanding software developers’ cognition in agile requirements engineering. Sci Comput Program 178:1–19. https://doi.org/10.1016/j.scico.2019.03.005

    Article  Google Scholar 

  15. Lucassen G, Dalpiaz F, van der Werf JME, Brinkkemper S (2016) Improving agile requirements: the quality user story framework and tool. Requirements Eng 21(3):383–403. https://doi.org/10.1007/s00766-016-0250-x

    Article  Google Scholar 

  16. Ricca F, Scanniello G, Torchiano M, Reggio G, Astesiano E (2014) Assessing the effect of screen mockups on the comprehension of functional requirements. ACM Trans Softw Eng Methodol (TOSEM) 24:1–38. https://doi.org/10.1145/2629457

    Article  Google Scholar 

  17. Hoisl B, Sobernig S, Strembeck M (2014) Comparing three notations for defining scenario-based model tests: a controlled experiment. In: International Conference on the Quality of Information and Communications Technology (QUATIC 2014), pp 180–189. https://doi.org/10.1109/QUATIC.2014.62

  18. Gross A, Doerr J (2012) What you need is what you get!: the vision of view-based requirements specifications. In: IEEE International Requirements Engineering Conference (RE). IEEE, pp 171–180. https://doi.org/10.1109/RE.2012.6345801

  19. Liskin O (2015) How artifacts support and impede requirements communication. In: International working conference on requirements engineering: foundation for software quality, vol 9013. Springer, Cham, pp 132–147. https://doi.org/10.1007/978-3-319-16101-3_9

  20. Tu Y-C, Tempero E, Thomborson C (2016) An experiment on the impact of transparency on the effectiveness of requirements documents. Empir Softw Eng 21(3):1035–1066. https://doi.org/10.1007/s10664-015-9374-8

    Article  Google Scholar 

  21. Johannesson P, Perjons E (2014) An introduction to design science. Springer. https://doi.org/10.1007/978-3-319-10632-8

    Article  MATH  Google Scholar 

  22. Hevner A, Chatterjee S (2010) Design Research in Information Systems. Design Research in Information Systems. Springer, Boston, pp 9–22. https://doi.org/10.1007/978-1-4419-5653-8_2

    Chapter  Google Scholar 

  23. Wieringa R (2014) Design science methodology for information systems and software engineering. Springer, Berlin

    Book  Google Scholar 

  24. Bjarnason E, Unterkalmsteiner M, Borg M, Engström E (2016) A multi-case study of agile requirements engineering and the use of test cases as requirements. Inf Softw Technol 77:61–79. https://doi.org/10.1016/j.infsof.2016.03.008

    Article  Google Scholar 

  25. Méndez Fernández D, Wagner S, Lochmann K, Baumann A, de Carne H (2012) Field study on requirements engineering: Investigation of artefacts, project parameters, and execution strategies. Inf Softw Technol 54(2):162–178. https://doi.org/10.1016/j.infsof.2011.09.001

    Article  Google Scholar 

  26. Medeiros J, Vasconcelos A, Silva C, Goulão M (2018) Quality of software requirements specification in agile projects: a cross-case analysis of six companies. J Syst Softw 142:171–194. https://doi.org/10.1016/j.jss.2018.04.064

    Article  Google Scholar 

  27. Lauesen S, Kuhail MA (2012) Task descriptions versus use cases. Requirements Eng 17(1):3–18. https://doi.org/10.1007/s00766-011-0140-1

    Article  Google Scholar 

  28. Wang X, Zhao L, Wang Y, Sun J (2014) The role of requirements engineering practices in agile development: an empirical study. In: Proceedings of the Asia Pacific Requirements Engineering Symposium. CCIS Springer 432:195–209. https://doi.org/10.1007/978-3-662-43610-3_15

    Article  Google Scholar 

  29. Tiwari S, Gupta A (2015) A systematic literature review of use case specifications research. Inf Softw Technol 67:128–158. https://doi.org/10.1016/j.infsof.2015.06.004

    Article  Google Scholar 

  30. Phalp KT, Vincent J, Cox K (2007) Assessing the quality of use case descriptions. Software Qual J 15(1):69–97. https://doi.org/10.1007/s11219-006-9006-z

    Article  Google Scholar 

  31. Zeaaraoui A, Bougroun Z, Belkasmi MG, Bouchentouf T (2013) User stories template for object-oriented applications. In: Innovative Computing Technology (INTECH), IEEE, pp 407–410. https://doi.org/10.1109/INTECH.2013.6653681

  32. Inayat I, Salim SS, Marczak S, Daneva M, Shamshirband S (2015) A systematic literature review on agile requirements engineering practices and challenges. Comput Hum Behav 51:915–929. https://doi.org/10.1016/j.chb.2014.10.046

    Article  Google Scholar 

  33. Cohn M (2004) User stories applied: for agile software development. Addison-Wesley Professional, Boston

    Google Scholar 

  34. Soares HF, Alves NSR, Mendes TS, Mendonça MG, Spínola RO (2015) Investigating the link between user stories and documentation debt on software projects. In: International Conference on Information Technology. IEEE, pp 385–390. https://doi.org/10.1109/ITNG.2015.68

  35. Knight W (2018) Business Objectives vs. user goals. UX for Developers. https://doi.org/10.1007/978-1-4842-4227-8_3

    Article  Google Scholar 

  36. Baumer D, Bischofberger W, Lichter H, Zullighoven H (1996) User interface prototyping-concepts, tools, and experience. In: Proceedings of IEEE 18th International Conference on Software Engineering, pp 532–541. https://doi.org/10.1109/ICSE.1996.493447

  37. De Lucia A, Qusef A (2010) Requirements engineering in agile software development. J Emerg Technol Web Intell 2(3):212–220

    Google Scholar 

  38. Blomkvist JK, Persson J, Åberg J (2015) Communication through boundary objects in distributed agile teams. In: Proceedings of the 33rd Annual ACM Conference on Human Factors in Computing Systems. ACM, 2015. pp 1875–1884. https://doi.org/10.1145/2702123.2702366

  39. Preece J, Sharp H, Rogers Y (2015) Interaction design: beyond human-computer interaction, 4th edition. Wiley, Hoboken

    Google Scholar 

  40. Walker M, Takayama L, Landay JA (2002) High-fidelity or low-fidelity, paper or computer? Choosing attributes when testing web prototypes. In: Proceedings of the human factors and ergonomics society annual meeting, vol 46(5), pp 661–665. https://doi.org/10.1177/154193120204600513

  41. Ferreira J, Noble J, Biddle R (2007) Agile development iterations and UI design. Proc Agile 2007:50–58. https://doi.org/10.1109/AGILE.2007.8

    Article  Google Scholar 

  42. Reggio G, Ricca F, Leotta M (2014) Improving the quality and the comprehension of requirements: disciplined use cases and mockups. In: 2014 40th EUROMICRO Conference on Software Engineering and Advanced Applications. IEEE, pp 262–266. https://doi.org/10.1109/SEAA.2014.79

  43. Hess A, Diebold P, Seyff N (2019) Understanding information needs of agile teams to improve requirements communication. J Ind Inf Integr 14:3–15. https://doi.org/10.1016/j.jii.2018.04.002

    Article  Google Scholar 

  44. Dresch A, Lacerda DP, Antunes Júnior JAV (2015) Design science research: método de pesquisa para avanço da ciência e tecnologia. Bookman, Porto Alegre

    Book  Google Scholar 

  45. Hevner AR (2007) A three-cycle view of design science research. Scand J Inf Syst 19(2): 87–92. https://aisel.aisnet.org/sjis/vol19/iss2/4

  46. Oran AC, Nascimento E, Santos G, Conte T (2017) Analysing requirements communication using use case specification and user stories. In: Proceedings of the 31st Brazilian Symposium on Software Engineering. Association for Computing Machinery, New York, NY, USA, pp 214–223. https://doi.org/10.1145/3131151.3131166

  47. Oran AC, Valentim N, Santos G, Conte T (2019) Why use case specifications are hard to use in generating prototypes? IET Softw 13(6):510–517. https://doi.org/10.1049/iet-sen.2018.5239

    Article  Google Scholar 

  48. Ibriwesh I, Ho S-B, Chai I, Tan C-H (2017) A controlled experiment on comparison of data perspectives for software requirements documentation. Arab J Sci Eng 42(8):3175–3189. https://doi.org/10.1007/s13369-017-2425-2

    Article  Google Scholar 

  49. Thuan NH, Drechsler A, Antunes P (2019) Construction of design science research questions. Commun Assoc Inf Syst 44.1:332–363. https://doi.org/10.17705/1CAIS.04420

  50. Jiang L, Eberlein A (2008) A framework for requirements engineering process development (FRERE). In: Proceedings of the 19th Australian Conference on Software Engineering, pp 507–516. https://doi.org/10.1109/ASWEC.2008.4483240

  51. Hassenzahl M (2008) User experience (UX): towards an experiential perspective on product quality. In: Proceedings of the 20th French-Speaking Conference on Human-Computer Interaction ’08, ACM Press, pp 11–15. https://doi.org/10.1145/1512714.1512717

  52. Oran AC, Santos G, Gadelha B, Conte T (2020) A framework for evaluating and improving requirement specifications based on the developers and testers perspective—technical report. https://doi.org/10.6084/m9.figshare.12563756

  53. Davis FD, Bagozzi RP, Warshaw PR (1989) User acceptance of computer technology: a comparison of two theoretical models. Manage Sci 35(8):982–1003. https://doi.org/10.1287/mnsc.35.8.982

    Article  Google Scholar 

  54. Wohlin C, Runeson P, Höst M, Ohlsson MC, Regnell B, Wesslén A (2012) Experimentation in software engineering. Springer, Berlin, Heidelberg, p 9783642290

    Book  Google Scholar 

  55. Salman I, Misirli AT, Juristo N (2015) Are students representatives of professionals in software engineering experiments?. In: 37th International Conference on Software Engineering (ICSE 2015), pp 666–676. https://doi.org/10.1109/ICSE.2015.82

  56. Höst M, Regnell B, Wohlin C (2000) Using students as subjects—a comparative study of students and professionals in lead-time impact assessment. Empir Softw Eng 5(3):201–214. https://doi.org/10.1023/A:1026586415054

    Article  MATH  Google Scholar 

  57. Runeson P (2003) Using students as experiment subjects—an analysis on graduate and freshmen student data. In: Proceedings of the 7th international conference on empirical assessment in software engineering. Citeseer, pp 95–102

Download references

Acknowledgments

This research, according to Article 48 of Decree nº 6.008/2006, was partially funded by Samsung Electronics of Amazonia Ltda, under the terms of Federal Law nº 8.387/1991, through agreement nº 003/2019, signed with ICOMP/UFAM. This work was supported by the Foundation for Research Support of the State of Amazonas (FAPEAM)—POSGRAD, and the Coordination for the Improvement of Higher Education Personnel—Brazil (CAPES)—Finance Code 001. Besides, we recognize the financial support provided by CNPq through process 314174/2020-6 and FAPEAM 062.00150/2020. UNIRIO through process no. PPQ-UNIRIO 01/2019 e 04/2020. We thank all participants in the empirical study and the researchers of the USES-UFAM research group for their valuable contributions in carrying out this study.

Funding

Not applicable.

Author information

Authors and Affiliations

Authors

Contributions

Ana Carolina Oran: Conceptualization, Methodology, Formal analysis, Investigation, Data Curation, Writing—Original Draft, Visualization. Gleison Santos: Validation, Writing—Review and Editing, Supervision. Bruno Gadelha: Methodology, Verification, Validation, Writing—Review and Editing. Tayana Conte: Validation, Writing—Review and Editing, Supervision.

Corresponding author

Correspondence to Ana Carolina Oran.

Ethics declarations

Conflicts of interest

The authors declare that they have no conflict of interest.

Additional information

Publisher's Note

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

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Oran, A.C., Santos, G., Gadelha, B. et al. A framework for evaluating and improving requirements specifications based on the developers and testers perspective. Requirements Eng 26, 481–508 (2021). https://doi.org/10.1007/s00766-021-00352-6

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00766-021-00352-6

Keywords

Navigation