Skip to main content
Log in

Unified use case statecharts: case studies

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

Abstract

This paper presents the results of case studies evaluating a method of unifying use cases (UCs) to derive a unified statechart model of the behavior of the domain of a proposed computer-based system. An evaluation of the unification method, the obtained statechart model of the domain, the method’s and model’s feedback on the UCs themselves, and how the method is used in requirements engineering practice was carried out by examining 58 software requirements specifications produced by 189 upper-year undergraduate and graduate students. The results of these studies independently confirm some of the benefits of building a unified SC mentioned in the works of Glinz; Whittle and Schumann; and Harel, Kugler, and Pnueli.

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
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19
Fig. 20
Fig. 21
Fig. 22
Fig. 23

Similar content being viewed by others

Notes

  1. http://se.uwaterloo.ca/~dberry/cs445w06.

  2. http://se.uwaterloo.ca/~dberry/ATRE/ElevatorSRSs/.

  3. Note, this model should not be confused with any high-level business model. The difference is in the abstraction and decomposition levels.

  4. Note, the case study description includes all steps as recommended to the students for their projects and as described in Sect. 4.2. Some of the steps in this case study are simplified and do not fully conform to the steps of the process either due to the way initial UCs were specified, e.g., there are no specified goals in Step 1, or due to the simplifications made due to the simplicity of the problem itself.

  5. http://se.uwaterloo.ca/~dberry/cs445w06/turnstilesystem.pdf.

  6. The unadorned noun “author” in the rest of Sect. 5 refers to the first author of this paper who guided these tutorial sessions.

  7. A step of a UC is called an “operation” to avoid confusion with a step of the construction carried out in the TCS.

  8. That this state is a sub-machine state is indicated by the infinity-like symbol inside the state in Fig. 6.

  9. Each of the works described in this chapter uses the term “scenario” for what we call “UC”.

References

  1. Bræk R, Haugen Ø (1993) Engineering real time systems: an object-oriented methodology using SDL. Prentice Hall International, Hertfordshire

  2. Cockburn A (2000) Writing effective use cases. Addison-Wesley, Reading

    Google Scholar 

  3. Damas C, Lambeau B, van Lamsweerde A (2006) Scenarios, goals, and state machines: a win-win partnership for model synthesis. In: SIGSOFT ’06/FSE-14: Proceedings of the 14th ACM SIGSOFT international symposium on foundations of software engineering. ACM Press, New York, pp 197–207

  4. Douglass BP (1999) Doing hard time: developing real-time systems with UML, objects, frameworks, and patterns. Addison-Wesley Longman Publishing Co., Inc., Boston

    Google Scholar 

  5. Glinz M (1995) An integrated formal model of scenarios based on statecharts. In: Proceedings of the 5th European software engineering conference. Springer, London, pp 254–271

  6. Glinz M (2002) Statecharts for requirements specification—as simple as possible, as rich as needed. In: Proceedings of the ICSE2002 workshop on scenarios and state machines: models, algorithms, and tools

  7. Glinz M, Berner S, Joos S (2002) Object-oriented modeling with ADORA. Inf Syst 27(6):425–444

    Article  MATH  Google Scholar 

  8. Gomaa H (2001) Designing concurrent, distributed, and real-time applications with UML. In: ICSE ’01: proceedings of the 23rd international conference on software engineering. IEEE Computer Society, Washington, pp 737–738

  9. Harel D (1987) Statecharts: a visual formalism for complex systems. Sci Comput Program 8(3):231–274

    Article  MATH  MathSciNet  Google Scholar 

  10. Harel D (1988) On visual formalisms. Commun ACM 31(5):514–530

    Article  MathSciNet  Google Scholar 

  11. Harel D, Kugler H, Pnueli A (2005) Synthesis revisited: generating statechart models from scenario-based requirements. In: Lecture Notes in Computer Science, vol 3393 of LCNS. Springer, pp 309–324

  12. Jacobson I (1992) Object-oriented software engineering: a use case driven approach. Addison Wesley Longman Publishing Co., Inc., Redwood City

    MATH  Google Scholar 

  13. Khriss I, Elkoutbi M, Keller RK (1999) Automating the synthesis of UML statechart diagrams from multiple collaboration diagrams. In: UML’98: selected papers from the First International workshop on The Unified Modeling Language UML’98. Springer, London, UK, pp 132–147

  14. Kramer J (2007) Is abstraction the key to computing? Commun ACM. 50(4):36–42

    Article  Google Scholar 

  15. Larman C (2001) Applying UML and patterns: an introduction to object-oriented analysis and design and the unified process, 2nd edn. Prentice Hall, Englewood Cliffs

    Google Scholar 

  16. Liang H, Dingel J, Diskin Z (2006) A comparative survey of scenario-based to state-based model synthesis approaches. In: SCESM ’06: proceedings of the 2006 international workshop on scenarios and state machines: models, algorithms, and tools. ACM Press, New York, pp 5–12

  17. Lilly S (1999) Use case pitfalls: top 10 problems from real projects using use cases. In: Proceedings technology of object-oriented languages and systems. IEEE Computer Society, Washington, pp 1974–183

  18. Mylopoulos J, Chung L, Yu E (1999) From object-oriented to goal-oriented requirements analysis. Commun ACM 42(1):31–37

    Article  Google Scholar 

  19. Rumbaugh J, Jacobson I, Booch G (2004) The unified modeling language reference manual, 2nd edn. Addison-Wesley, Reading

    Google Scholar 

  20. Saiedian H, Kumarakulasingam P, Anan M (2005) Scenario-based requirements analysis techniques for real-time software systems: a comparative evaluation. Requir Eng 10(1):22–33

    Article  Google Scholar 

  21. Somé S, Dssouli R, Vaucher J (1995) From scenarios to timed automata: building specifications from users requirements. In: APSEC ’95: proceedings of the 2nd Asia Pacific software engineering conference. IEEE Computer Society, Washington, pp 48–57

  22. Somé SS (2006) Supporting use case based requirements engineering. Inf Softw Technol 48(1):43–58

    Article  Google Scholar 

  23. Svetinovic D, Berry DM, Godfrey M (2005) Concept identification in object-oriented domain analysis: why some students just don’t get it. In: Proceedings of the IEEE international conference on requirements engineering RE’05, pp 189–198

  24. van Lamsweerde A, Letier E (2000) Handling obstacles in goal-oriented requirements engineering. IEEE Trans Softw Eng 26(10):978–1005

    Article  Google Scholar 

  25. van Lamsweerde A, Willemet L (1998) Inferring declarative requirements specifications from operational scenarios. IEEE Trans Softw Eng 24(12):1089–1114

    Article  Google Scholar 

  26. Whittle J, Schumann J (2000) Generating statechart designs from scenarios. In: ICSE ’00: proceedings of the 22nd international conference on software engineering. ACM Press, New York, pp 314–323

Download references

Acknowledgments

We thank all students and TAs who participated in the case studies and who provided feedback. We thank all reviewers of all earlier versions of this paper for their helpful comments. Davor Svetinovic’s work was supported in parts by Canadian NSERC Postgraduate Scholarship PGS B-255929-2002 and a Canadian FCAR Doctoral Scholarship. Daniel Berry’s, Michael Godfrey’s, and Nancy Day’s work was supported in part by Canadian NSERC Grant Numbers NSERC-RGPIN227055-00, NSERC-RGPIN217236-99, and NSERC-RGPIN240537-01, respectively.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Davor Svetinovic.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Svetinovic, D., Berry, D.M., Day, N.A. et al. Unified use case statecharts: case studies. Requirements Eng 12, 245–264 (2007). https://doi.org/10.1007/s00766-007-0053-1

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00766-007-0053-1

Keywords

Navigation