Skip to main content
Log in

A framework for quality assessment of just-in-time requirements: the case of open source feature requests

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

Abstract

Until now, quality assessment of requirements has focused on traditional up-front requirements. Contrasting these traditional requirements are just-in-time (JIT) requirements, which are by definition incomplete, not specific and might be ambiguous when initially specified, indicating a different notion of "correctness." We analyze how the assessment of JIT requirements quality should be performed based on the literature of traditional and JIT requirements. Based on that analysis, we have designed a quality framework for JIT requirements and instantiated it for feature requests in open source projects. We also indicate how the framework can be instantiated for other types of JIT requirements. We have performed an initial evaluation of our framework for feature requests with eight practitioners from the Dutch agile community, receiving overall positive feedback. Subsequently, we have used our framework to assess 550 feature requests originating from three Open Source Software systems (Netbeans, ArgoUML and Mylyn Tasks). In doing so, we obtain a view on the feature request quality for the three open source projects. The value of our framework is threefold: (1) it gives an overview of quality criteria that are applicable to feature requests (at creation time or JIT); (2) it serves as a structured basis for teams that need to assess the quality of their JIT requirements; and (3) it provides a way to get an insight into the quality of JIT requirements in existing projects.

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.

Institutional subscriptions

Fig. 1
Fig. 2
Fig. 3

Similar content being viewed by others

References

  1. Aberdour M (2007) Achieving quality in open-source software. Softw IEEE 24(1):58–64. doi:10.1109/MS.2007.2

    Article  Google Scholar 

  2. Alspaugh T, Scacchi W (2013) Ongoing software development without classical requirements. In: International requirements engineering conference (RE), pp 165–174. doi:10.1109/RE.2013.6636716

  3. Bettenburg N, Just S, Schröter A, Weiss C, Premraj R, Zimmermann T (2008) What makes a good bug report? In: International symposium on foundations of software engineering (FSE). ACM, pp 308–318

  4. Davis A, Overmyer S, Jordan K, Caruso J, Dandashi F, Dinh A, Kincaid G, Ledeboer G, Reynolds P, Sitaram P, Ta A, Theofanos M (1993) Identifying and measuring quality in a software requirements specification. In: International software metrics symposium, pp 141–152. doi:10.1109/METRIC.1993.263792

  5. Dietze S (2005) Agile requirements definition for software improvement and maintenance in open source software development. In: Proceedings of international workshop on situational requirements engineering processes, pp 176–187

  6. Doran GT (1981) There's a smart way to write managements goals and objectives. Manag Rev 70(11):35–36

    Google Scholar 

  7. Duncan R (2001) The quality of requirements in extreme programming. CrossTalk 19:22–31

    Google Scholar 

  8. Ernst NA, Borgida A, Jureta IJ, Mylopoulos J (2014) An overview of requirements evolution. In: Mens T, Serebrenik A, Cleve A (eds) Evolving software systems. Springer, Berlin, pp 3–32

    Chapter  Google Scholar 

  9. Ernst NA, Murphy G (2012) Case studies in just-in-time requirements analysis. In: International workshop on empirical requirements engineering. IEEE, pp 25–32. doi:10.1109/EmpiRE.2012.6347678

  10. Génova G, Fuentes J, Llorens J, Hurtado O, Moreno V (2013) A framework to measure and improve the quality of textual requirements. Requir Eng 18(1):25–41. doi:10.1007/s00766-011-0134-z

    Article  Google Scholar 

  11. Grau R, Lauenroth K, Bereza B, van Veenendaal E, van der Zee S (2014) Requirements engineering and agile development-collaborative, just enough, just in time, sustainable. IREB

  12. Heck P (2014) Jit requirements quality framework (Figshare). doi:10.6084/m9.figshare.938214

  13. Heck P, Klabbers M, van Eekelen MCJD (2010) A software product certification model. Softw Qual J 18(1):37–55

    Article  Google Scholar 

  14. Heck P, Zaidman A (2013) An analysis of requirements evolution in open source projects: Recommendations for issue trackers. In: International workshop on principles of software evolution (IWPSE). ACM, pp 43–52

  15. Heck P, Zaidman A (2014) Horizontal traceability for just-in-time requirements: the case for open source feature requests. J Softw Evol Process 26(12):1280–1296. doi:10.1002/smr.1678

    Article  Google Scholar 

  16. Herzig K, Just S, Zeller A (2012) It’s not a bug, it’s a feature: how misclassification impacts bug prediction. Technical report, Universitaet des Saarlandes, Saarbruecken, Germany

  17. Huo M, Verner J, Zhu L, Babar M (2004) Software quality and agile methods. In: International computer software and applications conference, vol 1, pp 520–525. doi:10.1109/CMPSAC.2004.1342889

  18. IEEE (1990) IEEE standard glossary of software engineering terminology. IEEE Std 610.12-1990 pp 1–84. doi:10.1109/IEEESTD.1990.101064

  19. IEEE (1998) IEEE recommended practice for software requirements specifications. IEEE Std 830-1998

  20. IIBA (2009) A guide to the business analysis body of knowledge (BABOK Guide). International Institute of Business Analysis (IIBA), Whitby

    Google Scholar 

  21. Kamata M, Tamai T (2007) How does requirements quality relate to project success or failure? In: International requirements engineering conference (RE), pp 69–78. doi:10.1109/RE.2007.31

  22. Knauss E, El Boustani C (2008) Assessing the quality of software requirements specifications. In: International requirements engineering conference (RE), pp 341–342. doi:10.1109/RE.2008.29

  23. Koch S (2004) Agile principles and open source software development: a theoretical and empirical discussion. In: Eckstein J, Baumeister H (eds) Extreme programming and agile processes in software engineering. Springer, Berlin, pp 85–93

    Chapter  Google Scholar 

  24. Leffingwell D (2011) Agile software requirements: lean requirements practices for teams, programs, and the enterprise, 1st edn. Addison-Wesley Professional, Boston

    Google Scholar 

  25. Meade AW, Craig SB (2012) Identifying careless responses in survey data. Psychol Methods 17(3):437–455

    Article  Google Scholar 

  26. Noll J, Liu WM (2010) Requirements elicitation in open source software development: a case study. In: Proceedings of international workshop on emerging trends in FLOSS software research and development. ACM, pp 35–40

  27. Paetsch F, Eberlein A, Maurer F (2003) Requirements engineering and agile software development. In: International workshop on enabling technologies: infrastructure for collaborative enterprises. IEEE, pp 308–308

  28. Philippo EJ, Heijstek W, Kruiswijk B, Chaudron MR, Berry DM (2013) Requirement ambiguity not as important as expected—results of an empirical evaluation. In: Doerr J, Opdahl AL (eds) Requirements engineering: foundation for software quality. Springer, Berlin, pp 65–79

    Google Scholar 

  29. Power K (2014) Definition of ready: an experience report from teams at cisco. In: Cantone G, Marchesi M (eds) Agile processes in software engineering and extreme programming. Lecture Notes in Business information processing, vol 179. Springer, Berlin, pp 312–319. doi:10.1007/978-3-319-06862-6_25

  30. Salman I, Misirli AT, Juristo N (2015) Are students representatives of professionals in software engineering experiments? In: Proceedings of the 37th international conference on software engineering-volume 1, ICSE ’15. IEEE Press, Piscataway, pp 666–676. http://dl.acm.org/citation.cfm?id=2818754.2818836

  31. Scacchi W (2009) Understanding requirements for open source software. In: Lyytinen K, Loucopoulos P, Mylopoulos J, Robinson B (eds) Design requirements engineering: a ten-year perspective. Lecture notes in business information processing, vol 14. Springer, Berlin, pp 467–494. doi:10.1007/978-3-540-92966-6_27

  32. Wake B (2003) INVEST in good stories, and SMART tasks. http://xp123.com/articles/invest-in-good-stories-and-smart-tasks/. Accessed Nov 2013

  33. Warsta J, Abrahamsson P (2003) Is open source software development essentially an agile method? In: Workshop on open source software engineering, pp 143–147

Download references

Acknowledgments

This work has been sponsored by the RAAK-PRO program under grants of the EQuA-project. We thank all participants in the interview sessions: R. Wouterse (SYSQA), S. Jansen, H. Nieboer, P. Devick (Info Support), A. Grund (AGrund.informatiespecialist), S. van der Zee, A. Uittenbogaard (inspearit) and R. van Solingen (TU Delft, Prowareness). We also thank all software engineers of the Fontys Applied University that participated in the case study.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Petra Heck.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Heck, P., Zaidman, A. A framework for quality assessment of just-in-time requirements: the case of open source feature requests. Requirements Eng 22, 453–473 (2017). https://doi.org/10.1007/s00766-016-0247-5

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00766-016-0247-5

Keywords

Navigation