Skip to main content
Log in

Partial order semantics for use case and task models

  • Published:
Formal Aspects of Computing

Abstract

Use case models are the specification medium of choice for functional requirements, while task models are employed to capture User Interface (UI) requirements and design information. In current practice, both entities are treated independently and are often developed by different teams, which have their own philosophies and lifecycles. This lack of integration is problematic and often results in inconsistent functional and UI design specifications causing duplication of effort while increasing the maintenance overhead. To address these shortcomings, we propose a formal semantic framework for the integrated development of use case and task models. The semantic mapping is defined in a two step manner from a particular use case or task model notation to the common semantic domain of sets of partially ordered sets. This two-step mapping results in a semantic framework that can be more easily reused and extended. The intermediate semantic domains have been carefully chosen by taking into consideration the intrinsic characteristics of use case and task models. As a concrete example, we provide a semantics for our own DSRG use case formalism and an extended version of ConcurTaskTrees, one of the most popular task model notations. Furthermore, we use the common semantic model to formally define a set of refinement relations for use case and task models.

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.

Similar content being viewed by others

References

  1. Ait-Ameur Y, Baron M, Kamel N (2005) Encoding a process algebra using the Event B Method. Application to the validation of user interfaces. In: Proceedings of 2nd IEEE international symposium on leveraging applications of formal methods (ISOLA) 2005, Columbia, USA

  2. Abrial JR (1996) Extending B without changing it (for developing distributed systems). In: Proceedings of putting into pratice methods and tools for information system design

  3. Alur R, Holzmann GJ, Peled D (1996) An analyzer for message sequence charts. Softw Concepts Tools 17(2): 70–77

    Google Scholar 

  4. Annett J, Duncan KD (1967) Task analysis and training design. Occup Psychol 41: 211–221

    Google Scholar 

  5. Armour F, Miller G (2001) Advanced use case modeling. Addison-Wesley, Boston

    Google Scholar 

  6. Baeten JCM, Weijland WP (1990) Process algebra. Cambridge University Press, New York

    Book  Google Scholar 

  7. Börger E, Cavarra A, Riccobene E (2000) Modeling the dynamics of UML. In: Proceedings of ASM’2000, Switzerland, pp 223–241

  8. Börger E, Cavarra A, Riccobene E (2004) On formalizing UML state machines using ASMs. Inf Softw Technol 46(5): 287–292

    Article  Google Scholar 

  9. Börger E, Cavarra A, Riccobene E (2000) An ASM Semantics for UML activity diagrams. In: Proceedings of 8th international conference on algebraic methodology and software technology, Iowa City, Iowa, USA, pp 293–308

  10. van den Bergh J, Coninx K (2007) From task to dialog model in the UML. In: Proceedings of TaMoDia 2007, Toulouse, France, pp 98–111

  11. Butler G, Grogono P, Khendek F (1998) A Z specification of use cases. In: Proceedings of APSEC 1998, pp 94–101

  12. Barnett M, Grieskamp W, Schulte W, Tillmann N, Veanes M (2003) Validating use-cases with the AsmL test tool. In: Proceedings of Quality Software 2003, pp 238–246

  13. Blyth TS (1975) Set theory and abstract algebra. Longman, London

    MATH  Google Scholar 

  14. Bolton C, Davies J (2000) Activity graphs and processes. In: Proceedings of integrated formal methods, Berlin, Germany, pp 77–96

  15. Bomsdorf B (2007) The WebTaskModel approach to web process modelling. In: Proceedings of task models and diagrams for user interface design toulouse, France, pp 240–253

  16. Bowman H, Steen MWA, Boiten EA, Derrick J (2002) A formal framework for viewpoint consistency. In: Proceedings of formal methods in system design, September 2002, pp 111–166

  17. Burns A, Baxter G (2006) Time bands for systems structure. In: Structure for dependability: computer-based systems from an interdisciplinary perspective. Springer, Berlin

  18. Butler M (1992) A CSP approach to action systems. PhD Thesis in Computing Laboratory, Oxford University, Oxford

  19. Card S, Moran TP, Newell A (1983) The psychology of human computer interaction. Erlbaum, Hillsdale

    Google Scholar 

  20. Cockburn A (2001) Writing effective use cases. Addison-Wesley, Boston

    Google Scholar 

  21. De Nicola R (1987) Extensional equivalences for transition systems. Acta Inf 24: 211–237

    Article  MATH  Google Scholar 

  22. Dittmar A, Forbrig F, Stoiber S, Stary C (2004) Tool support for task modelling—a constructive exploration. In: Proceedings of design, specification and verification of interactive systems 2004, July 2004

  23. Dittmar A, Forbrig P (2003) Higher-order task models. In: Proceedings of design, specification and verification of interactive systems 2003, pp 187–202

  24. Engels G, Hücking R, Sauer S, Wagner A (1999) UML Collaboration Diagrams and Their Transformation to Java in Proceedings of UIML’99, Fort Collins, CO, USA

  25. Fröhlich P, Link J (2000) Automated test case generation from dynamic models. In: Proceedings of ECOOP’00, Sophia Antipolis and Cannes, France, pp 472–492

  26. Fernandes J, Tjell S, Jorgensen JB, Ribeiro O (2007) Designing tool support for translating Use Cases and UML 2.0 sequence diagrams into a coloured Petri Net. In: Proceedings of sixth international workshop on scenarios and state machines (SCESM’07), Minneapolis, MN, IEEE Computer Society

  27. Grieskamp W, Lepper M, Schulte W, Tillmann N (2001) Testable use cases in the abstract state machine language. In: Proceedings of second Asia-Pacific conference on quality software, IEEE Computer Society

  28. Hopcroft JE, Motwani R, Ullman JD (2007) Introduction to automata theory, languages, and computation, 3rd edn. Pearson/Addison Wesley, Boston

    Google Scholar 

  29. Gomaa H (2005) Designing software product lines with UML. Addison-Wesley, Boston

    Google Scholar 

  30. Grosu R, Smolka SA (2005) Safety-liveness semantics for UML 2.0 sequence diagrams. In: Proceedings of fifth international conference on application of concurrency to system design, Los Alamitos, CA, USA, pp 6–14

  31. Haugen Ø, Husa KE, Runde RK, Stølen K (2005) STAIRS towards formal design with sequence diagrams. Softw Syst Model 4(4): 355–357

    Article  Google Scholar 

  32. Interactions, I.-I. P. S.-O. S. (1987). ISO 8807: LOTOS—a formal description technique based on the temporal ordering of observational behaviour. Elsevier, Amsterdam

  33. ITU-T (1999) Recommendation Z.120- message sequence charts. Geneva

  34. Ichikawa H, Yamanaka K, Kato J (1990) Incremental specification in LOTOS. In: Proceedings of protocol specification, testing and verification X, Ottawa, Canada, pp 183–196

  35. Jacobson I (1992) Object-oriented software engineering: a use case driven approach, ACM Press (Addison-Wesley Pub), New York

  36. Katoen JP, Lambert L (1998) Pomsets for message sequence charts. In: Proceedings of formale beschreibungstechniken für verteilte systeme, Cottbus, Germany, Shaker Verlag, pp 197–207

  37. Khendek F, Bourduas S, Vincent D (2001) Stepwise design with message sequence charts. In: Proceedings of formal techniques for networked and distributed systems (FORTE), Cheju Island, Korea, pp 19–34

  38. Klug T, Kangasharju J (2005) Executable task models. In: Proceedings of 4th international workshop on Task models and diagrams, Gdansk, Poland, pp 119–122

  39. Kuutti K (1995) Activity theory as a potential framework for human-computer interaction research. In: Context and consciousness: activity theory and human-computer interaction, Massachusetts Institute of Technology, pp 17–44

  40. Kwon G (2000) Rewrite rules and operational semantics for model checking UML Statecharts. In: Proceedings of UML’2000, York, UK, pp 528–540

  41. Li L (2000) Translating use cases to sequence diagrams. In: Proceedings of IEEE ASE 2000 Grenoble, France, pp 293–296

  42. Merrick P, Barrow P (2005) The rationale for OO associations in use case modelling. J Object Technol 4(9): 123–142

    Article  Google Scholar 

  43. Mizouni R (2007) Formal composition of partial system behaviors. PhD Thesis in Department of Electrical and Computer Engineering, Concordia University, Montreal

  44. Milner R, Parrow J, Walker D (1992) A calculus of mobile processes. Inf Comput 100: 1–40

    Article  MATH  MathSciNet  Google Scholar 

  45. Nipkow T, Paulson L, Wenzel M (2008) Isabelle/HOL: a proof assistant for higher-order logic. Springer, Berlin

    Google Scholar 

  46. Övergaard G, Palmkvist K (1998) A formal approach to use cases and their relationships. In: Proceedings of UML’98, Mulhouse, France

  47. Paternò F, Santoro C (2001) The ConcurTaskTrees notation for task modelling, Technical Report in CNUCE-C.N.R

  48. Paternò F, Santoro C (2003) Support for reasoning about interactive systems through human–computer interaction designers’ representations. Comp J 48(4): 340–357

    Article  Google Scholar 

  49. Paternò F (2000) Model-based design and evaluation of interactive applications. Springer, Berlin

    MATH  Google Scholar 

  50. Pressman RS (2005) Software engineering: a practitioner’s approach. McGraw-Hill, Boston

    Google Scholar 

  51. Reggio G, Astesiano E, Choppy C, Hußmann H (2000) Analysing UML active classes and associated state machines - a lightweight formal approach. In: Proceedings of third international conference on fundamental approaches to software engineering, Berlin, pp 127–146

  52. Roscoe AW (2005) The theory and practice of concurrency, Prentice-Hall (Pearson), Upper Saddle River

  53. Rui K (2007) Refactoring use case models. PhD thesis in Department of Computer Science and Software Engineering, Concordia University, Montreal

  54. Sinnig D, Chalin P, Khendek F (2007) Common semantics for use cases and task models. In: Proceedings of integrated formal methods. Oxford, England, pp 579–598

  55. Seffah A, Desmarais MC, Metzger M (2005) Software and usability engineering: prevalent myths, obstacles and integration avenues. In: Human-centered software engineering—integrating usability in the software development lifecycle. Springer, Berlin

  56. Sinnig D, Chalin P, Khendek F (2007) Consistency between task models and use cases. In: Proceedings of DSV-IS 2007, Salamanca, Spain

  57. Sinnig D (2008) Use case and task models: formal unification and integrated development methodology. PhD Thesis in Department of Computer Science and Software Engineering, Concordia University, Montreal, (available at http://users.encs.concordia.ca/~d_sinnig/phd/Sinnig_PhDThesis2009.pdf)

  58. Souchon N, Limbourg Q, Vanderdonckt J (2002) Task modelling in multiple contexts of use. In: Proceedings of design, specification and verification of interactive systems, Rostock, Germany, pp 59–73

  59. Somé S (2007) Petri nets based formalization of textual use cases. Technical Report in SITE, TR-2007-11, University of Ottawa

  60. Stevens P (2001) On use cases and their relationships in the unified modelling language. In: Proceedings of 4th international conference on fundamental approaches to software engineering, pp 140–155

  61. Storrle H (2003) Semantics of interactions in UML 2.0. In: Proceedings of symposium on human centric computing languages and environments, Los Alamitos, CA, USA, pp 129–136

  62. Sinnig D, Wurdel M, Forbrig P, Chalin P, Khendek F (2007) Practical extensions for task models. In: Proceedings of TaMoDia ‘07, Toulouse, France. Springer, Berlin

  63. Zheng T (2004) Validation and refinement of timed MSC specifications. PhD Thesis in Department of Electrical and Computer Engineering, Concordia University, Montreal

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Daniel Sinnig.

Additional information

J.C.P. Woodcock

Rights and permissions

Reprints and permissions

About this article

Cite this article

Sinnig, D., Khendek, F. & Chalin, P. Partial order semantics for use case and task models. Form Asp Comp 23, 307–332 (2011). https://doi.org/10.1007/s00165-010-0158-z

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00165-010-0158-z

Keywords

Navigation