An integration of semi-formal and formal specifications: from use cases to RSL signatures - Funes, Ana (2012)
At early stages of software system development, system requirements often are expressed in natural language. There are a number of techniques to extract useful information from these documents to construct a more precise –and formal– document that expresses the system requirements. Some of these techniques consist in identifying system use cases during requirement analysis work. Particularly, event0based techniques identify –from the elicited documents– the external events that a system must respond to and then related them to use cases and actors. These event lists are simpler than use cases –and are a first step in building them. Although use cases have been proven to be a useful tool for requirement specification and facilitate the interaction with end users, they lack formality, giving place to misinterpretations and misunderstandings. Having this in mind, we propose a technique that integrates the understandability of graphical notations provided by use case notation with the unambiguity of formal specifications, by supplementing identified use cases –initially as a list of external events– with an initial formal specification consisting of function signatures and sorts in the RAISE Specification Language (RSL). Taking as input the identified external events associated with each system use case, which are expressed in natural language, we process them using a natural language tool that produces as output a structured format from which, by applying a set of rules, we translate them into RSL function signatures.