4 research outputs found

    A method for the unified definition and treatment of conceptual schema quality issues

    Get PDF
    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 desenvolupa

    Inkrementelle Integritätsprüfung und Sichtenaktualisierung in SQL

    Get PDF
    Zentrales Problem der Implementierung von Integritätsbedingungen und materialisierten Sichten ist die effiziente Reaktion auf Basisfakten-änderungen. Ändert sich ein Basisfakt durch Einfügung, Löschung oder Modifikation, so müssen die Integritätsbedingungen geprüft und die abgeleiteten und gespeicherten Fakten materialisierter Sichten aktualisiert werden. Da die Dauer der Integritätsprüfung und Sichten-aktualisierung unmittelbar die Ausführungsdauer einer Transaktion beeinflußt, ist eine effiziente Durchführung von entscheidender Bedeutung. Effiziente Verfahren zur Integritätsprüfung und Aktualisierung materialisierter Sichten gehören seit mehr als 15 Jahren zu den wichtigsten Problemen der Forschungen zu deduktiven Datenbanken. Die im Kontext von Datalog und Relationaler Algebra entwickelten inkrementellen Verfahren haben jedoch bislang kaum Anwendung in SQL gefunden. Dies zeigt sich an den funktional sehr beschränkten Implementierungen beider Konzepte in SQL-basierten Datenbank-systemen kommerzieller Hersteller. Zentrale Idee inkrementeller Ansätze ist, dass Integritätsprüfung und Sichtenaktualisierung nur für die aktuell geänderten Fakten durchgeführt werden. Zu diesem Zweck werden im Rahmen eines Änderungspropagierungsprozesses die durch Basisfaktenänderungen induzierten Änderungen abgeleiteter Fakten ermittelt. Da bei den bisherigen inkrementellen Verfahren SQL-spezifische Konzepte wie das SQL-Transaktions- und Integritätskonzept nicht berücksichtigt wurden, ist eine Anwendung dieser Verfahren in SQL nicht direkt möglich. Aus diesem Grund werden im Rahmen der vorgelegten Dissertation inkrementelle Verfahren zur effizienten Integritätsprüfung und Sichtenaktualisierung im Kontext von SQL entwickelt. Bei den Verfahrensentwürfen werden SQL-spezifische Systemeigenschaften unverändert berücksichtigt. Die Implementierung dieser Verfahren in SQL-basierten, kommerziellen Datenbanksystemen würde diese Systeme funktional um leistungsfähige Komponenten zur Integritätsprüfung und zur Simulation und Aktualisierung materialisierter Sichten erweitern

    Semantic Change Computation Optimization in Active Databases

    No full text
    We extend here the Internal Events Method for change computation. This method derives a set of rules that incrementally compute the changes induced by an update, taking into account not only the update, but also the concept of event and the knowledge provided by the primary key integrity constraints. In this paper we further develop this idea by considering four additional integrity constraints: inclusion dependencies, exclusion dependencies, alternate keys and referential integrity constraints. We show that the knowledge provided by these integrity constraints allows us to save redundant checks and in some cases to remove whole rules. Thus, we obtain a significant improvement in performance. To the best of our knowledge there is no method for change computation with this capability. 1 Introduction Change computation refers to the process of computing the changes induced by an update. Efficient change computation has been recognized as a very important research area in active database..
    corecore