Textual User Requirements Notation

  • Ruchika Kumar
  • Gunter MussbacherEmail author
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11150)


The User Requirements Notation (URN) is a requirements engineering standard published by the International Telecommunication Union that combines goal and scenario modeling in support of the elicitation, specification, analysis, and validation of requirements. The URN standard focuses on a graphical notation. This paper introduces a textual notation for URN called TURN (Textual User Requirements Notation). The main objective of TURN is to support the modeling of very large URN specifications where thousands of separate goal graphs or scenarios become unwieldy to navigate. In addition, the entering of large specifications in graphical tools has proven tedious, as the modeler must be concerned with layout issues that are unrelated to the information that is attempted to be modeled. In general, TURN offers an alternative input medium for URN specifications which aims to be easier, faster, and more scalable. Xtext is the defacto standard for the specification of textual metamodel-based software languages. To validate the feasibility of TURN, it is specified as an Xtext grammar, resulting in a metamodel tailored to TURN and covering a large subset of URN. The differences between the URN standard and TURN are elaborated, a multi-phased model-to-model transformation from TURN to URN is described, and conformance to URN is demonstrated with a rather exhaustive set of test cases for TURN specifications and their transformations.


Textual User Requirements Notation Goal modeling Goal-oriented Requirement Language Scenario modeling Use Case Maps Textual syntax Language specification Xtext Model-to-model transformation 



We are indebted to Thomas Weigert for his insightful comments on the advantages and disadvantages of the textual syntax for Use Case Maps.


  1. 1.
    Abdelzad, V., Amyot, D., Lethbridge, Timothy C.: Adding a textual syntax to an existing graphical modeling language: experience report with GRL. In: Fischer, J., Scheidgen, M., Schieferdecker, I., Reed, R. (eds.) SDL 2015. LNCS, vol. 9369, pp. 159–174. Springer, Cham (2015). Scholar
  2. 2.
    Amyot, D., Mussbacher, G.: User requirements notation: the first ten years, the next ten years. J. Softw. (JSW) 6(5), 747–768 (2011).
  3. 3.
    Cicchetti, A., Di Ruscio, D., Eramo, R., Pierantonio, A.: JTL: a bidirectional and change propagating transformation language. In: Malloy, B., Staab, S., van den Brand, M. (eds.) SLE 2010. LNCS, vol. 6563, pp. 183–202. Springer, Heidelberg (2011). Scholar
  4. 4.
    Fleurey, F., Drey, Z., Vojtisek, D., Faucher, C., Mahé, V.: Kermeta Language, Reference Manual. IRISA (2006).
  5. 5.
    Forward, A., et al.: Model-driven rapid prototyping with Umple. Softw. Pract. Exper. 42(7), 781–797 (2012)CrossRefGoogle Scholar
  6. 6.
    Grönniger, H., Krahn, H., Rumpe, B., Schindler, M., Völkel, S.: Text-based modeling. In: 4th International Workshop on Software Language Engineering (2007)Google Scholar
  7. 7.
    ITU: Recommendation Z.151 (10/12), User Requirements Notation (URN) – Language definition (2012).
  8. 8.
    ITU: Recommendation Z.100 (04/16), Specification and Description Language – Overview of SDL-2010 (2016).
  9. 9.
    ITU: Recommendation Z.161 (10/17), Testing and Test Control Notation Version 3: TTCN-3 Core Language (2017).
  10. 10.
    ITU: Recommendation Z.120 (02/11), Message Sequence Chart (MSC) (2011).
  11. 11.
    Jackson, D.: Alloy: a lightweight object modelling notation. ACM Trans. Softw. Eng. Methodol. (TOSEM) 11(2), 256–290 (2002)CrossRefGoogle Scholar
  12. 12.
    Jouault, F., Bézivin, J., Kurtev, I.: TCS: a DSL for the specification of textual concrete syntaxes in model engineering. In: GPCE 2006, pp. 249–254. ACM Press (2006)Google Scholar
  13. 13.
    jUCMNav, version 7.0. University of Ottawa.
  14. 14.
    Kolovos, D.S., Paige, R.F., Polack, F.A.C.: The epsilon transformation language. In: Vallecillo, A., Gray, J., Pierantonio, A. (eds.) ICMT 2008. LNCS, vol. 5063, pp. 46–60. Springer, Heidelberg (2008). Scholar
  15. 15.
    Kolovos, D.S., Paige, R.F., Polack, F.A.C.: The epsilon object language (EOL). In: Rensink, A., Warmer, J. (eds.) ECMDA-FA 2006. LNCS, vol. 4066, pp. 128–142. Springer, Heidelberg (2006). Scholar
  16. 16.
    Kosslyn, S.M., Pomerantz, J.R.: Imagery, propositions, and the form of internal representations. Cogn. Psychol. 9(1), 52–76 (1977)CrossRefGoogle Scholar
  17. 17.
    Kurtev, I.: State of the art of QVT: a model transformation language standard. In: Schürr, A., Nagl, M., Zündorf, A. (eds.) AGTIVE 2007. LNCS, vol. 5088, pp. 377–393. Springer, Heidelberg (2008). Scholar
  18. 18.
    OMG: UML Human-Usable Textual Notation (HUTN). Version 1.0, formal/2004-08-01 (2004).
  19. 19.
    Syriani, E., Vangheluwe, H., LaShomb, B.: T-Core: a framework for custom-built transformation engines. Softw. Syst. Model. 14(3), 1215–1243 (2015)CrossRefGoogle Scholar
  20. 20.
    T3Tools, University of Göttingen.
  21. 21.
  22. 22.
    T-Rex – the TTCN-3 Refactoring and Metrics Tool, University of Göttingen.
  23. 23.
    Vojtisek, D.: BasicMTL realization guide. Inside the Carroll Research Program and part of the MOTOR project. Technical Report (2004).

Copyright information

© Springer Nature Switzerland AG 2018

Authors and Affiliations

  1. 1.Department of Electrical and Computer EngineeringMcGill UniversityMontréalCanada

Personalised recommendations