Abstract

In software development, to obtain a precise specification of the software system's functional requirements is significant to ensure the software quality as well as to automate the development. Use cases are an effective way to capture functional requirements, however, the use of ambiguous or vague language in the use case can lead to imprecision. It is essential to ensure that use case specifications are clear, concise, and complete to avoid imprecision in requirements. This paper aims to develop a domain specific language called FRSL to precisely specify use cases and to provide a basis for transformations to generate software artifacts from the use case specification. We define a FRSL metamodel to capture the technical domain of use cases for FRSL's abstract syntax, and then provides a textual concrete syntax for this language. We also define a formal operational semantics for FRSL by characterizing the execution of a FRSL specification as sequences of system snapshot transitions. This formal semantics on the one hand allows us to precisely explain the meaning of use cases and their relationships, on the other hand provides a basis for transformations from the use case specification. We implement a tool support for this language and perform an evaluation of its expressiveness in comparison with current use case specification languages. This work brings out (1)~a DSL to specify use cases that is defined based on a formal semantics of use cases; and (2)~a tool support realized as an Eclipse plugin for this DSL. The use case specification language FRSL would help precisely specify the system's functional requirements and bring more automation in the software development.

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.