UTL: A Unified Language for Requirements Templates

Ikram Darif, Ghizlane El Boussaidi, Sègla Kpodjedo, Andrés Paz · 2025

Requirements specification is an important phase of the software development life cycle, especially for safety critical systems (SCS) due to their high number of requirements and certification constraints. The use of templates to specify requirements has been proposed in literature as they strike a balance between the ambiguity of natural language and the difficulty of using formal languages. However, existing template-based approaches use different notations, rarely provide tool support, and generally target specific types of requirements. Thus, it is often necessary to create new custom templates, but it is difficult to do so given that there is no well-defined process to follow and no unified notation to reuse. To fill this gap, we propose the Unified Templates Language (UTL), a unified language for the definition of requirements templates and a process for using the language. We leverage model-driven engineering (MDE) to build UTL. Using MDE supports the creation and evolution of templates, and it eases the extension, maintainability, and implementation of UTL. UTL was proposed to support an industrial partner in the certification of a SCS, and implemented within a requirements specification tool. In this paper, we introduce the abstract syntax, concrete syntax, well-formedness rules and the semantics of UTL. We also provide a systematic process for creating templates using UTL. We evaluate the ability of UTL to specify different types of templates, and its usability and usefulness through a user study. The results show that UTL covers different kinds of templates, and, together with its supporting tool, it eases the creation of templates.

Read the paper · More papers on PaperTik