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.
Similar content being viewed by others
Notes
Note, this model should not be confused with any high-level business model. The difference is in the abstraction and decomposition levels.
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.
The unadorned noun “author” in the rest of Sect. 5 refers to the first author of this paper who guided these tutorial sessions.
A step of a UC is called an “operation” to avoid confusion with a step of the construction carried out in the TCS.
That this state is a sub-machine state is indicated by the infinity-like symbol inside the state in Fig. 6.
Each of the works described in this chapter uses the term “scenario” for what we call “UC”.
References
Bræk R, Haugen Ø (1993) Engineering real time systems: an object-oriented methodology using SDL. Prentice Hall International, Hertfordshire
Cockburn A (2000) Writing effective use cases. Addison-Wesley, Reading
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
Douglass BP (1999) Doing hard time: developing real-time systems with UML, objects, frameworks, and patterns. Addison-Wesley Longman Publishing Co., Inc., Boston
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
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
Glinz M, Berner S, Joos S (2002) Object-oriented modeling with ADORA. Inf Syst 27(6):425–444
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
Harel D (1987) Statecharts: a visual formalism for complex systems. Sci Comput Program 8(3):231–274
Harel D (1988) On visual formalisms. Commun ACM 31(5):514–530
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
Jacobson I (1992) Object-oriented software engineering: a use case driven approach. Addison Wesley Longman Publishing Co., Inc., Redwood City
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
Kramer J (2007) Is abstraction the key to computing? Commun ACM. 50(4):36–42
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
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
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
Mylopoulos J, Chung L, Yu E (1999) From object-oriented to goal-oriented requirements analysis. Commun ACM 42(1):31–37
Rumbaugh J, Jacobson I, Booch G (2004) The unified modeling language reference manual, 2nd edn. Addison-Wesley, Reading
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
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
Somé SS (2006) Supporting use case based requirements engineering. Inf Softw Technol 48(1):43–58
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
van Lamsweerde A, Letier E (2000) Handling obstacles in goal-oriented requirements engineering. IEEE Trans Softw Eng 26(10):978–1005
van Lamsweerde A, Willemet L (1998) Inferring declarative requirements specifications from operational scenarios. IEEE Trans Softw Eng 24(12):1089–1114
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
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
Corresponding author
Rights 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
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00766-007-0053-1