USL: A Domain-Specific Language for Precise Specification of Use Cases and Its Transformations

A use case model is often represented by a UML use case diagram and loosely structured  textual descriptions. The use case model expressed in such a form contains ambiguous  and imprecise parts. This prevents integrating it into model-driven approaches, where  use case models are often taken as the source of transformations. In this paper, we  introduce a domain-specific language named the Use case Specification Language (USL)  to precisely specify use cases. We define the abstract syntax of USL using a metamodel  together with OCL wellformedness rules and then provide a graphical concrete syntax for the usability goal. We also define a precise semantics for USL by mapping USL models  to Labelled Transition Systems (LTSs). It opens a possibility to transform USL models  to software artifacts such as test cases and design models. We focus on a transformation  from a USL model to a template-based use case description in order to illustrate our  method. A language evaluation of USL is also performed in this paper.