Software & Systems Modeling

, Volume 8, Issue 2, pp 205–220 | Cite as

Use Case Maps as a property specification language

  • Jameleddine Hassine
  • Juergen Rilling
  • Rachida Dssouli
Regular Paper


Although a significant body of research in the area of formal verification and model checking tools of software and hardware systems exists, the acceptance of these tools by industry and end-users is rather limited. Beside the technical problem of state space explosion, one of the main reasons for this limited acceptance is the unfamiliarity of users with the required specification notation. Requirements have to be typically expressed as temporal logic formalisms and notations. Property specification patterns were successfully introduced to bridge this gap between users and model checking tools. They also enable non-experts to write formal specifications that can be used for automatic model checking. In this paper, we propose an abstract high level pattern-based approach to the description of property specifications based on Use Case Maps (UCM). We present a set of commonly used properties with their specifications that are described in terms of occurrence, ordering and temporal scopes of actions. Furthermore, our approach also supports the description of properties with respect to their architectural scope. We provide a mapping of our UCM property specification patterns in terms of CTL, TCTL and Architectural TCTL (ArTCTL), an extension to TCTL, introduced in this research that provides temporal logics with architectural scopes. We illustrate the use of our pattern system for requirement specifications of an IP Header compression feature.


Formal verification Temporal logic Property specification Use Case Maps Temporal and architectural scope 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. Alfonso, A., Braberman, V.A., Kicillof, N., Olivero, A.: Visual timed event scenarios. In: 26th International Conference on Software Engineering (ICSE 2004), pp. 168–177 (2004)Google Scholar
  2. Alur, R.: Techniques for automatic verification of real-time systems. PhD thesis, Stanford University (1991)Google Scholar
  3. Alur R. and Dill D.L. (1994). A theory of Timed Automata. Theor. Comput. Sci. 126(2): 183–235 zbMATHCrossRefMathSciNetGoogle Scholar
  4. Alur R. and Henzinger T.A. (1992). Logics and models of real time: a survey. In: Huizing, K. and Rozenberg, G. (eds) Real Time: Theory in Practice, Lecture Notes in Computer Science, vol. 600, pp 74–106. Springer, Heidelberg Google Scholar
  5. Alur R. and Henzinger T.A. (1993). Real-time logics: complexity and expressiveness. Inform. Comput. 104(1): 35–77 zbMATHCrossRefMathSciNetGoogle Scholar
  6. Amyot, D.: Use Case Maps Quick Tutorial. (1999)
  7. Amyot, D., Buhr, R.J.A., Gray, T., Logrippo, L.: Use Case Maps for the capture and validation of distributed systems requirements. In: RE’99, Fourth IEEE International Symposium on Requirements Engineering, pp. 44–53. Limerick, Ireland, June 1999.
  8. Amyot, D., Andrade, R.: Description of wireless intelligent network services with Use Case Maps. In: SBRC’99, 17th Simposio Brasileiro de Redes de Computadores, pp. 418–433. Salvador, Brazil, May 1999Google Scholar
  9. Bellini P., Mattolini R. and Nesi P. (2000). Temporal logics for real-time system specification. ACM Comput. Surv. (CSUR) 32(1): 12–42 CrossRefGoogle Scholar
  10. Braberman, V.A., Felder, M.: Verification of real-time designs: Combining scheduling theory with automatic formal verification. In: ESEC/SIGSOFT FSE, pp. 494–510, 1999Google Scholar
  11. Buhr R.J.A. (1998). Use Case Maps as architectural entities for complex systems. IEEE Trans. Softw. Eng. 24(12): 1131–1155 CrossRefGoogle Scholar
  12. Buhr, R.J.A., Elammari, M., Gray, T., Mankovski, S.: Applying Use Case Maps to multiagent systems: a feature interaction example. In: 31st Annual Hawaii International Conference on System Sciences, 1998Google Scholar
  13. Clarke E.M., Emerson E.A. and Sistla A.P. (1986). Automatic verification of finite-state concurrent systems using temporal logic specifications. ACM Trans. Program. Lang. Syst. 2: 244–263 CrossRefGoogle Scholar
  14. Dwyer, M.B., Avrunin, G.S., Corbett, J.C.: Patterns in property specifications for finite-state verification. In: Proceedings of the 21st International Conference on Software Engineering, pp. 411–420. IEEE Computer Society Press (1999)Google Scholar
  15. Dwyer, M., Avrunin, G., Corbett, J.: Property specification patterns for finite-state verification. In: Ardis, M. (ed.) Proceeedings of the Second Workshop on Formal Methods in Software Practices, pp. 7–15 (1998)Google Scholar
  16. Flake, S., Muller, W.: Specification of real-time properties for UML models. In: Proceedings of the Hawai’i International Conference on System Sciences (HICSS-35), IEEE, Hawaii, USA (2002)Google Scholar
  17. Graf, S., Ober, I.: Model checking of UML models via a mapping to communicating extended timed automata. In: Graf, S., Mounier, L. (eds.) Proceedings of SPIN’04 Workshop, Barcelona, Spain, LNCS 2989 (2004)Google Scholar
  18. Gruhn, V., Laue, R.: Specification patterns for time-related properties. Temporal representation and reasoning. In: TIME 2005. 12th International Symposium on Volume, Issue, 23–25 June 2005, pp.~189–191Google Scholar
  19. Hassine, J., Rilling, J., Dssouli, R.: An abstract operational semantics for Use Case Maps. In: Wang, F. (ed.) Formal techniques for networked and distributed systems–FORTE 2005. 25th IFIP WG 6.1 International Conference, Taipei, Taiwan, October, 2005, pp. 366–380. LNCS 3731 Springer, Heidelberg (2005)Google Scholar
  20. Hassine, J., Rilling, J., Dssouli, R.: Formal verification of Use Case Maps with real time extensions. In: 13th SDL forum (SDL’07), Paris, France, September 2007 (to appear). LNCS, Springer, HeidelbergGoogle Scholar
  21. Hassine, J., Rilling, J., Dssouli, R.: Timed Use Case Maps. In: Fifth Workshop on System Analysis and Modelling (SAM’06) Kaiserslautern, Germany, May (2006)Google Scholar
  22. ITU-T, URN Focus Group: Draft Rec. Z.152 - UCM: Use Case Map Notation (UCM). Geneva (2002)Google Scholar
  23. Jansen, D.N., Wieringa, R.J.: Extending CTL with actions and real time. J. Logic Comput. 12 (4), 607–621. ISSN 0955-792XGoogle Scholar
  24. jUCMNAV project: Last accessed, July 2007 (2006)
  25. Konrad, S., Cheng, B.H.C.: Facilitating the construction of specification pattern based properties. In: Proceedings of the IEEE International Requirements Engineering Conference (RE05), Paris, France (2005)Google Scholar
  26. Konrad, S., Cheng, B.H.C.: Real-time specification patterns. In: Proceedings of the International Conference on Software Engineering (ICSE05), St Louis, MO, USA, May (2005)Google Scholar
  27. Koymans R. (1990). Specifying real-time properties with metric temporal logic. Real-Time Syst. 2(4): 255–299 CrossRefGoogle Scholar
  28. Larsen K.G., Pettersson P. and Yi W. (1997). UPPAAL in a nutshell. Int. J.~Softw. Tools Technol. Transf. 1(1–2): 134–152 zbMATHCrossRefGoogle Scholar
  29. Manna Z. and Pnueli A. (1992). The temporal logic of reactive and concurrent systems. Springer, New York Google Scholar
  30. Miga, A., Amyot, D., Bordeleau, F., Cameron, C., Woodside, M.: Deriving message sequence charts from Use Case Maps scenario specifications. In: Tenth SDL Forum (SDL’01), pp. 268–287. Copenhagen, 2001. LNCS 2078Google Scholar
  31. Nakamura, N., Kikuno, T., Hassine, J., Logrippo, L.: Feature interaction filtering with Use Case Maps at requirements stage. In: Sixth International Workshop on Feature Interactions in Telecommunications and Software Systems (FIW’00), Glasgow, Scotland (2000)Google Scholar
  32. Nicola, R.D., Vaandrager, F.W.: Action versus state based logics for transition systems. In: Guessarian, I. (ed.) Proceedings Ecole de Printemps on Semantics of Concurrency, Lecture Notes in Computer Science, vol. 469, pp. 407–419 (1990)Google Scholar
  33. Nicola, R.D., Fantechi, A., Gnesi, S., Ristori, G.: An action based framework for verifying logical and behavioural properties of concurrent systems. Computer Networks and ISDN Systems 25 (1993), pp. 761–778. In: Proceedings of 3rd Workshop on Computer Aided Verification (1991)Google Scholar
  34. Ober, I., Kerbrat, A.: Verification of quantitative temporal properties of SDL specifications. In: SDL ’01: Proceedings of the 10th International SDL Forum Copenhagen on Meeting UML (2001), pp. 182–202Google Scholar
  35. Olender K. and Osterweil L. (1990). Cecil: A sequencing constraint language for automatic static analysis generation. IEEE Trans. Softw. Eng. 16(3): 268–280 CrossRefGoogle Scholar
  36. Petriu, D.C., Woodside, M.: Software performance models from system scenarios in Use Case Maps. In: Proceedings of the 12th International Conference on Computer Performance Evaluation, Modelling Techniques and Tools, pp. 141–158, April 14–17, 2002Google Scholar
  37. Ramakrishnan, S., McGregor, J.: Extending OCL to support temporal operators. In: 21st International Conference on Software Engineering (ICSE99), Workshop on Testing Distributed Component-Based Systems, Los Angeles, CA, USA, May 1999Google Scholar
  38. RFC 2507: IP header compression, February 1999. (1999)
  39. RFC 2508: Compressing IP/UDP/RTP headers for low-speed serial links, February 1999. (1999)
  40. RFC 1144: Compressing TCP/IP headers for low-speed serial links, Feb 1990. (1990)
  41. Use Case Maps Web Page and UCM Users Group: (1999)
  42. Tsai, W.T., Paul, R., Yu, L., Wei, X.: Rapid pattern-oriented scenario-based testing for embedded systems. In: Yang, H. (ed.) Software Evolution with UML and XML, pp. 222–262. IDEA Group Publishing, 2005Google Scholar
  43. Schäfer, T., Knapp, A., Merz, S.: Model checking UML state machines and collaborations. In: CAV 2001 Workshop on Software Model Checking Algebraic Methodology and Software Technology, 8th International Conference, AMAST 2000, Paris, France, vol. 55(3), of ENTCS, 2001Google Scholar

Copyright information

© Springer-Verlag 2007

Authors and Affiliations

  • Jameleddine Hassine
    • 1
  • Juergen Rilling
    • 1
  • Rachida Dssouli
    • 2
  1. 1.Department of Computer ScienceConcordia UniversityMontrealCanada
  2. 2.Concordia Institute for Information Systems EngineeringConcordia UniversityMontrealCanada

Personalised recommendations