In Model-Driven Development, the main artefacts are conceptual schemas (models), and efforts are focused on their creation, testing and evolution at different levels of abstraction through transformations. If a conceptual schema has defects, these are passed on to the following stages, including coding. Therefore, techniques for improving the quality of conceptual schemas must be implemented to assure the correct generation of final software products. One of the challenges in Model-Driven Development is being able to generate test cases from the requirements not only to identify defects, as well as to validate requirements early on, at the level of conceptual schemas, so that appropriate decisions can be taken based on the results of the validation process, as this would help reduce development costs and improve software quality.
We have created a tool under the name of CoSTest (Conceptual Schema Testing) to generate in an automated way abstract test cases from an existing approach to communication-oriented Requirements Engineering in order to validate Conceptual Schemas. The figure below presents the flow of artefacts and the process that CoSTest uses to find defects in the conceptual schemas. This tool supports our Model-Driven approach: