A method for the unified definition and treatment of conceptual schema quality issues
Authors:   , Aguilera Moncusí David 
Published: October 2023

The modern world is software-intensive. National infrastructures, smartphones and computers, health-care systems, e-commerce... everything is run by software. Therefore, developing high-quality software solutions is essential for our society.
Conceptual modeling is an early activity of the software development process whose aim is to define the conceptual schema of a domain. As the role played by conceptual schemas in software development becomes more relevant---because of, for example, the emergence of model-driven approaches---, their quality becomes crucial too. The quality of a conceptual schema can be analyzed in terms of ``quality properties''. All conceptual schemas should have the fundamental properties of syntactic and semantic correctness, relevance and completeness, as well as any other quality property that has been proposed in the literature and that may be required or recommended in particular projects.
It is a fact that only a few quality properties have been integrated into the development environments used by professionals and students, and thus enforced in the conceptual schemas developed by them. A possible explanation of this unfortunate fact may be that the proposals have been defined in the literature in disparate ways, which makes it difficult to integrate them into those environments. The goal of this thesis is to ease the integration of those quality properties that can be evaluated using the conceptual schema itself.
We propose a method that permits the unified definition and treatment of conceptual schema quality issues, which we understand as ``important quality topics or problems for debate or discussion''. Our work includes, on the one hand, a characterization and formalization of conceptual schema quality issues, and, on the other hand, the creation of a catalog of quality issues obtained from the literature and defined using the aforementioned formalization.
We also provide a prototype implementation of our method, which integrates the catalog of quality issues on top of a real modeling tool. This implementation provides assistance to conceptual modelers during the development of a conceptual schema in a non-disruptive manner. Moreover, our thesis discusses incremental methods for the efficient evaluation of OCL expressions in the context of quality issues and integrates one of them into our prototype tool.

El món actual funciona a través del programari. Les infraestructures nacionals, els ordinador i telèfons inte¿ligents, els sistemes de salut, de comerç electrònic... tot depèn del programari. És, doncs, per aquest motiu que cal dissenyar solucions de programari d'alta qualitat. La modelització conceptual és una de les etapes inicials en el procés de desenvolupament de programari. El seu objectiu és definir l'esquema conceptual d'un domini. A mesura que el rol que juguen els esquemes conceptuals esdevé més i més rellevants dins d'aquest context (degut a, per exemple, l'aparició de metodologies de disseny de programari dirigides per models), la seva qualitat també esdevé un requisit elemental. La qualitat d'un esquema conceptual es pot analitzar a través de diferents "propietats de qualitat". Així, tenim que tots els esquemes conceptuals haurien de satisfer les propietats fonamentals de correctesa sintàctica i semàntica, rellevància i completesa, així com altres propietats que s'han proposat a la literatura i que el projecte on s'estigui desenvolupant l'esquema requereixi o recomani. Malauradament, ens trobem que només algunes propietats de qualitat s'han integrat als entorns de desenvolupament que utilitzen els professionals i els estudiants i, per tant, les propietats que podem assegurar se satisfaran són poques. Una possible explicació d'aquest fet és que les propostes existents es defineixen de maneres força diferents, cosa que en dificulta la integració a aquests entorns. L'objectiu de la tesi és pa¿liar aquesta situació i simplificar la integració d'aquelles propietats de qualitat que avaluen un esquema conceptual utilitzant la informació disponible al propi esquema. El mètode que proposem permet la definició i el tractament unificat de "quality issues" per a la modelització conceptual, els quals entenem com "tot allò que pot ser rellevant considerar per assegurar la qualitat d'un esquema". La feina inclou, per una banda, la caraterització i formalizació dels "quality issues" i, per l'altra, la creació d'un catàleg d'issues disponibles a la literatura i expressats mitjançant la nostra formalizació. A més a més, la tesi també inclou la implementació d'un prototipus que demostra com funciona el mètode. El prototipus integra el catàleg de "quality issues" dins una eina de modelització conceptual real i permet assistir als modeladors durant el desenvolupament d'esquemes. Finalment, la nostra feina també ofereix una breu discussió sobre la importància que tenen els mètodes incrementals d'avaluació d'expressions OCL, com es poden adaptar a la nostra definició de "quality issues" i descriu la seva integració a l'eina prototipus que hem desenvolupat