In a study published in the Journal of Object Technology, researchers have developed a new validation technique for UML/OCL models that addresses a common problem. The new method introduces additional validation methods that make it easier to validate the model whenever a change is made. Rather than checking the model only at the end of the process, as is currently the case, it allows you to check it during development without having to start from scratch, making it easier to catch bugs early.
Any project requires the development of a series of initial plans prior to implementation, which serve as the basis and guidance for the entire process. A similar procedure is used in software development involving a specific step known as simulation.
Engineers use simulation to describe a program from a specific point of view, such as the data it will use, its components, or the way they expect to work. Going back to the construction project example, the plans will be “models” that can be used as a guide during the design phase, as well as for modeling and testing.
According to the researchers, the most commonly used type of model is the Unified Modeling Language (UML) class diagram notation, which is used to describe the structure of a software system. The advantage of working with these models is that they are more abstract than the source code, which contains many specific details about the technology used. And these models can be more concise, easier to manufacture, and understand.”
Thus, modeling could serve as a preliminary step rather than an alternative to the source code. Models make it easier to understand the system being developed, and can also be used to create specific implementation elements, automating the most repetitive parts of the programming process.
Engineers use validation tools to prevent bugs that could affect the code itself and, therefore, the final implementation of the system.
“We need to make sure the models are correct to minimize the potential software errors that can result.”
Professor of the University of Oberta de Catalonia, member of the SOM Research Lab Robert Clariso
Every time a change is made to the model, such as adding, deleting, or changing information, this means the entire system must be re-analyzed, so validation is usually only done after the final model has been created at the end of the process.
This method is also innovative in terms of the use of certificates, examples to illustrate the correct operation of the model. As the researcher noted, “When we modify the model, having a new certificate removes the need to validate it.
Certificate customization is much less expensive than rerunning the verification process. Explaining the process, the authors propose that instead of validating the new model, the certificate of the original model can be adapted to the new one. The biggest challenge they currently face is integrating these techniques into existing software modeling tools and environments.