Abstract
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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
A textual syntax for scenario definitions has already been defined that closely matches the URN standard. However, the textual syntax for scenario definitions has not yet been tested thoroughly enough to be included in this paper.
- 2.
The complete set of test cases and the TURN grammar are available at http://www.ece.mcgill.ca/~gmussb1/TURN.
References
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). https://doi.org/10.1007/978-3-319-24912-4_12
Amyot, D., Mussbacher, G.: User requirements notation: the first ten years, the next ten years. J. Softw. (JSW) 6(5), 747–768 (2011). http://www.jsoftware.us/vol6/jsw0605-1.pdf
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). https://doi.org/10.1007/978-3-642-19440-5_11
Fleurey, F., Drey, Z., Vojtisek, D., Faucher, C., Mahé, V.: Kermeta Language, Reference Manual. IRISA (2006). http://www.kermeta.org/docs/KerMeta-Manual.pdf
Forward, A., et al.: Model-driven rapid prototyping with Umple. Softw. Pract. Exper. 42(7), 781–797 (2012)
Grönniger, H., Krahn, H., Rumpe, B., Schindler, M., Völkel, S.: Text-based modeling. In: 4th International Workshop on Software Language Engineering (2007)
ITU: Recommendation Z.151 (10/12), User Requirements Notation (URN) – Language definition (2012). http://www.itu.int/rec/T-REC-Z.151/en
ITU: Recommendation Z.100 (04/16), Specification and Description Language – Overview of SDL-2010 (2016). http://www.itu.int/rec/T-REC-Z.100-201604-I/en
ITU: Recommendation Z.161 (10/17), Testing and Test Control Notation Version 3: TTCN-3 Core Language (2017). http://www.itu.int/rec/T-REC-Z.161-201710-I/en
ITU: Recommendation Z.120 (02/11), Message Sequence Chart (MSC) (2011). http://www.itu.int/rec/T-REC-Z.120-201102-I/en
Jackson, D.: Alloy: a lightweight object modelling notation. ACM Trans. Softw. Eng. Methodol. (TOSEM) 11(2), 256–290 (2002)
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)
jUCMNav, version 7.0. University of Ottawa. http://jucmnav.softwareengineering.ca/jucmnav
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). https://doi.org/10.1007/978-3-540-69927-9_4
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). https://doi.org/10.1007/11787044_11
Kosslyn, S.M., Pomerantz, J.R.: Imagery, propositions, and the form of internal representations. Cogn. Psychol. 9(1), 52–76 (1977)
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). https://doi.org/10.1007/978-3-540-89020-1_26
OMG: UML Human-Usable Textual Notation (HUTN). Version 1.0, formal/2004-08-01 (2004). http://www.omg.org/spec/HUTN/1.0/
Syriani, E., Vangheluwe, H., LaShomb, B.: T-Core: a framework for custom-built transformation engines. Softw. Syst. Model. 14(3), 1215–1243 (2015)
T3Tools, University of Göttingen. https://t3tools.informatik.uni-goettingen.de/trac
Test Architect, UniqueSoft. https://www.uniquesoft.com/automated-test-case-generation.php
T-Rex – the TTCN-3 Refactoring and Metrics Tool, University of Göttingen. https://www.trex.informatik.uni-goettingen.de/trac
Vojtisek, D.: BasicMTL realization guide. Inside the Carroll Research Program and part of the MOTOR project. Technical Report (2004). http://modelware.inria.fr/article.php3?id_article=45
Acknowledgement
We are indebted to Thomas Weigert for his insightful comments on the advantages and disadvantages of the textual syntax for Use Case Maps.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer Nature Switzerland AG
About this paper
Cite this paper
Kumar, R., Mussbacher, G. (2018). Textual User Requirements Notation. In: Khendek, F., Gotzhein, R. (eds) System Analysis and Modeling. Languages, Methods, and Tools for Systems Engineering. SAM 2018. Lecture Notes in Computer Science(), vol 11150. Springer, Cham. https://doi.org/10.1007/978-3-030-01042-3_10
Download citation
DOI: https://doi.org/10.1007/978-3-030-01042-3_10
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-01041-6
Online ISBN: 978-3-030-01042-3
eBook Packages: Computer ScienceComputer Science (R0)