USE CASE SPECIFICATION LANGUAGE
Use cases have achieved wide use for capturing and structuring software requirements. Nowadays, the use case model usually is presented by the use case diagrams in UML and use cases specification is documented in text format. Use case specifications are created in during the analysis phase to specify software system’s requirements and can also be used for creating system level test cases and construction of the design model such as interactive models in UML. Using use cases to get system tests has several benefits including test design at early stages of software development life cycle that reduces over all development cost of the system. It is usually documented by natural language. So there is a large gap to bridge between use case specification and concrete test cases. In this paper, we propose a method to specify use case by a model and guide automatically generated test cases from this model. In which, we propose a language to modeling use case specification USL for modeling the use case specification and automatic generate test cases. USL are extended form the UML activity diagram and add Contract concept, which allows specify details a action and a guard condition in a flow. With this approach, we develop a metamodel for presenting the abstract syntax of USL. Our approach allows to tranform directly from the use case specification to test case scenario, test cases or design models.