Simplification of UML/OCL schemas for efficient reasoning

Ensuring the correctness of a conceptual schema is an essential task in order to avoid the propagation of errors during software development. The kind of reasoning required to perform such task is known to be exponential for UML class diagrams alone and even harder when considering OCL constraints....

Descripción completa

Detalles Bibliográficos
Autores: Oriol Hilari, Xavier|||0000-0002-8845-8504, Teniente López, Ernest|||0000-0001-8890-9638
Tipo de recurso: artículo
Fecha de publicación:2017
País:España
Institución:Universitat Politècnica de Catalunya (UPC)
Repositorio:UPCommons. Portal del coneixement obert de la UPC
Idioma:inglés
OAI Identifier:oai:upcommons.upc.edu:2117/103942
Acceso en línea:https://hdl.handle.net/2117/103942
https://dx.doi.org/10.1016/j.jss.2017.03.015
Access Level:acceso abierto
Palabra clave:Computer software -- Development
UML
OCL
Reasoning
Simplification
Programari -- Desenvolupament
Àrees temàtiques de la UPC::Informàtica::Enginyeria del software
Descripción
Sumario:Ensuring the correctness of a conceptual schema is an essential task in order to avoid the propagation of errors during software development. The kind of reasoning required to perform such task is known to be exponential for UML class diagrams alone and even harder when considering OCL constraints. Motivated by this issue, we propose an innovative method aimed at removing constraints and other UML elements of the schema to obtain a simplified one that preserve the same reasoning outcomes. In this way, we can reason about the correctness of the initial artifact by reasoning on a simplified version of it. Thus, the efficiency of the reasoning process is significantly improved. In addition, since our method is independent from the reasoning engine used, any reasoning method may benefit from it.