Agile Requirements Engineering: A Research Perspective

  • Jerzy Nawrocki
  • Mirosław Ochodek
  • Jakub Jurkiewicz
  • Sylwia Kopczyńska
  • Bartosz Alchimowicz
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8327)

Abstract

Agile methodologies have impact not only on coding, but also on requirements engineering activities. In the paper agile requirements engineering is examined from the research point of view. It is claimed that use cases are a better tool for requirements description than user stories as they allow zooming through abstraction levels, can be reused for user manual generation, and when used properly can provide quite good effort estimates. Moreover, as it follows from recent research, parts of use cases (namely event descriptions) can be generated in an automatic way. Also the approach to non-functional requirements can be different. Our experience shows that they can be elicited very fast and can be quite stable.

Keywords

Requirements engineering agility use cases non-functional requirements effort estimation user manual 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    IEEE Recommended Practice for Software Requirements Specifications. IEEE Std 830-1998, pp. 1–40 (1998)Google Scholar
  2. 2.
    Adolph, S., Bramble, P.: Patterns for Effective Use Cases. Addison Wesley, Boston (2002)Google Scholar
  3. 3.
    Albrecht, A.J.: Measuring application development productivity. In: Proceedings of the Joint SHARE/GUIDE/IBM Application Development Symposium, pp. 83–92 (October 1979)Google Scholar
  4. 4.
    Alchimowicz, B., Jurkiewicz, J., Ochodek, M., Nawrocki, J.: Building benchmarks for use cases. Computing and Informatics 29(1), 27–44 (2010)Google Scholar
  5. 5.
    Alchimowicz, B., Nawrocki, J.: Generating syntax diagrams from regular expressions. Foundations of Computing and Decision Sciences 36(2), 81–97 (2011)Google Scholar
  6. 6.
    Beck, K., Andres, C.: Extreme Programming Explained: Embrace Change, 2nd edn. Addison-Wesley Professional (2004)Google Scholar
  7. 7.
    Bjarnason, E., Wnuk, K., Regnell, B.: A case study on benefits and siede-effects of agile practices in large-scale requirements engineering. In: Agile Requirements Engineering Workshop, Agile RE 2011, pp. 9–13. ACM (2011)Google Scholar
  8. 8.
    Cao, L., Ramesh, B.: Agile requirements engineering practices: An empirical study. IEEE Software 25(1), 60–67 (2008)CrossRefGoogle Scholar
  9. 9.
    Cleland-Huang, J.: Quality Requirements and their Role in Successful Products. In: IEEE International Requirements Engineering Conf., pp. 361–361. IEEE (October 2007)Google Scholar
  10. 10.
    Cleland-Huang, J., Czauderna, A., Keenan, E.: A persona-based approach for exploring architecturally significant requirements in agile projects. In: Doerr, J., Opdahl, A.L. (eds.) REFSQ 2013. LNCS, vol. 7830, pp. 18–33. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  11. 11.
    Cockburn, A.: Writing Effective Use Cases. Addison Wesley, Boston (2000)Google Scholar
  12. 12.
    Cohn, M.: User Stories Applied: For Agile Software Development. Addison Wesley Longman Publishing Co., Inc., Redwood City (2004)Google Scholar
  13. 13.
    Haugen, N.C.: An empirical study of using planning poker for user story estimation. In: Agile Conference, pp. 25–34. IEEE (2006)Google Scholar
  14. 14.
    ISO. ISO/IEC 25010:2011 - Systems and software engineering – Systems and software Quality Requirements and Evaluation (SQuaRE) – System and software quality models. International Organization for Standardization, Geneva, Switzerland (2011)Google Scholar
  15. 15.
    Jacobson, I.: Object-Oriented Software Engineering. Addison-Wesley (1992)Google Scholar
  16. 16.
    Jurkiewicz, J., Nawrocki, J., Ochodek, M., Glowacki, T.: HAZOP-based identification of events in use cases. an empirical study. Empirical Software Engineering (2013) (accepted for publication), doi:10.1007/s10664–013–9277–5Google Scholar
  17. 17.
    Karner, G.: Metrics for objectory. No. LiTH-IDA-Ex-9344:21. Master’s thesis, University of Linköping, Sweden (1993)Google Scholar
  18. 18.
    Kopczyńska, S., Maćkowiak, M., Nawrocki, J.: Structured meetings for non-functional requirements elicitation. Foundations of Computing and Decision Sciences 36(1), 35–56 (2011)Google Scholar
  19. 19.
    Leveson, N.G., Turner, C.S.: An investigation of the therac-25 accidents. Computer 26(7), 18–41 (1993)CrossRefGoogle Scholar
  20. 20.
    Mahnič, V., Hovelja, T.: On using planning poker for estimating user stories. Journal of Systems and Software 85(9), 2086–2095 (2012)CrossRefGoogle Scholar
  21. 21.
    Mylopoulos, J., Chung, L., Nixon, B.: Representing and using nonfunctional requirements: a process-oriented approach. IEEE Transactions on Software Engineering 18(6), 483–497 (1992)CrossRefGoogle Scholar
  22. 22.
    Nawrocki, J.R., Olek, Ł.: UC workbench – A tool for writing use cases and generating mockups. In: Baumeister, H., Marchesi, M., Holcombe, M. (eds.) XP 2005. LNCS, vol. 3556, pp. 230–234. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  23. 23.
    Nuseibeh, B.: Ariane 5: Who dunnit? IEEE Software 14(3), 15–16 (1997)CrossRefGoogle Scholar
  24. 24.
    Ochodek, M., Alchimowicz, B., Jurkiewicz, J., Nawrocki, J.: Improving the reliability of transaction identification in use cases. Information and Software Technology 53(8), 885–897 (2011)CrossRefGoogle Scholar
  25. 25.
    Ochodek, M., Nawrocki, J.: Automatic transactions identification in use cases. In: Meyer, B., Nawrocki, J.R., Walter, B. (eds.) CEE-SET 2007. LNCS, vol. 5082, pp. 55–68. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  26. 26.
    Ochodek, M., Nawrocki, J.: Enhancing use-case-based effort estimation with transaction types. Foundations of Computing and Decision Sciences 35(2), 91–106 (2010)Google Scholar
  27. 27.
    Ochodek, M., Nawrocki, J., Kwarciak, K.: Simplifying effort estimation based on Use Case Points. Information and Software Technology 53(3), 200–213 (2011)CrossRefGoogle Scholar
  28. 28.
    OMG. OMG Unified Modeling LanguageTM(OMG UML), superstructure, version 2.3 (May 2010)Google Scholar
  29. 29.
    Redmill, F., Chudleigh, M., Catmur, J.: System safety: HAZOP and software HAZOP. Wiley (1999)Google Scholar
  30. 30.
    Schwaber, K.: Scrum development process. In: Proceedings of the 10th Annual ACM Conference on Object Oriented Programming Systems, Languages, and Applications, pp. 117–134 (1995)Google Scholar
  31. 31.
    Schwaber, K., Beedle, M.: Agile Software Development with Scrum. Prentice Hall (2001)Google Scholar
  32. 32.
    Van Lamsweerde, A.: Goal-oriented requirements engineering: A guided tour. In: Fifth IEEE International Symposium on Requirements Engineering, pp. 249–262. IEEE (2001)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Jerzy Nawrocki
    • 1
  • Mirosław Ochodek
    • 1
  • Jakub Jurkiewicz
    • 1
  • Sylwia Kopczyńska
    • 1
  • Bartosz Alchimowicz
    • 1
  1. 1.Institute of Computing SciencePoznan University of TechnologyPoznańPoland

Personalised recommendations