Chapter

Applying a Model-Driven Approach for UML/OCL Constraints: Application to NoSQL Databases

Authors:
To read the full-text of this research, you can request a copy directly from the authors.

Abstract

Big Data have received a great deal of attention in recent years. Not only the amount of data is on a completely different level than before, but also we have different type of data including factors such as format, structure, and sources. This has definitely changed the tools we need to handle Big Data, giving rise to NoSQL systems. While NoSQL systems have proven their efficiency to handle Big Data, it’s still an unsolved problem how the automatic storage of Big Data in NoSQL systems could be done. This paper proposes an automatic approach for implementing UML conceptual models in NoSQL systems, including the mapping of the associated OCL constraints to the code required for checking them. In order to demonstrate the practical applicability of our work, we have realized it in a tool supporting four fundamental OCL expressions: Iterate-based expressions, OCL predefined operations, If expression and Let expression.

No full-text available

Request Full-text Paper PDF

To read the full-text of this research,
you can request a copy directly from the authors.

... Model-driven architecture (MDA) serves as a pivotal strategy in software design and development, emphasizing the use of models as core artifacts. By implementing MDA, the conversion of UML models into NoSQL database schemas can be automated [6] [7] [8] [9], thereby enhancing consistency and minimizing manual labor. This approach has found applications across numerous fields, including the development of web service platforms [10], web frameworks [6] [7] [8] [9], blockchain and IoT systems [15] [16] [17], artificial intelligence [18], mobile applications [19], and database generation [20] [21]. ...
... By implementing MDA, the conversion of UML models into NoSQL database schemas can be automated [6] [7] [8] [9], thereby enhancing consistency and minimizing manual labor. This approach has found applications across numerous fields, including the development of web service platforms [10], web frameworks [6] [7] [8] [9], blockchain and IoT systems [15] [16] [17], artificial intelligence [18], mobile applications [19], and database generation [20] [21]. ...
Article
Full-text available
Translating UML models into efficient NoSQL databases is a complex task within the domain of software engineering. This study addresses the problem of transforming UML models into MongoDB collections using the Model-Driven Architecture (MDA) approach. The research method involves defining metamodels for UML and MongoDB, followed by the development of QVTo transformation scripts to map UML class diagrams to MongoDB document structures. The transformation process was tested on a sample UML model, ensuring the correctness of the generated MongoDB schema. The findings demonstrate that the QVTo transformation scripts can accurately convert UML models into MongoDB collections, preserving the integrity and semantics of the original UML diagrams. The conclusions highlight the effectiveness of the MDA approach in bridging the gap between UML-based designs and NoSQL database implementations, providing a robust solution for data management in complex systems.
Article
Full-text available
The growth of structured, semi-structured, and unstructured data produced by the new applications is a result of the development and expansion of social networks, the Internet of Things, web technology, mobile devices, and other technologies. However, as traditional databases became less suitable to manage the rapidly growing quantity of data and variety of data structures, a new class of database management systems named NoSQL was required to satisfy the new requirements. Although NoSQL databases are generally schema-less, significant research has been conducted on their design. A literature review presented in this paper lets us claim the need to create modeling techniques to describe how to structure data in NoSQL databases. Key-value is one of the NoSQL families that has received too little attention, especially in terms of its design methodology. Most studies have focused on the other families, like column-oriented and document-oriented. This paper aims to present a design approach named KVMod (key-value modeling) specific to key-value databases. The purpose is to provide to the scientific community and engineers with a methodology for the design of key-value stores using the maximum automation and therefore the minimum human intervention, which equals the minimum number of errors. A software tool called KVDesign has been implemented to automate the proposed methodology and, thus, the most time-consuming database modeling tasks. The complexity is also discussed to assess the efficiency of our proposed algorithms.
Chapter
Autism Spectrum Disorder (ASD) or Autism is a complex developmental disability that typically appears during early childhood and can impact a person’s social skills, communication, relationships, and self-regulation. Early recognition, as well as behavioural, educational and family therapies may reduce symptoms and support development and learning. Parent as well as the affected child faces severe challenges. IAC system enables the autistic child to overcome such challenges. The main functionalities of this system includes Training parent, Communicator, ABA, Schools nearby, Apprisal Provision, Financial Resources and Emotional Analyser. For this system, StarUML an open source software modelling tool is used to develop UML diagrams and provide users with ready-to-use, expressive modelling. The interesting quality of IAC is that it provides services both to the parent as well as the child affected by ADS.
Conference Paper
Full-text available
Big Data has recently gained popularity and has strongly questioned relational databases as universal storage systems, especially in the presence of analytical workloads. As result, co-relational alternatives, commonly known as NOSQL (Not Only SQL) databases, are extensively used for Big Data. As the primary focus of NOSQL is on performance, NOSQL databases are directly designed at the physical level, and consequently the resulting schema is tailored to the dataset and access patterns of the problem in hand. However, we believe that NOSQL design can also benefit from traditional design approaches. In this paper we present a method to design databases for analytical workloads. Starting from the conceptual model and adopting the classical 3-phase design used for relational databases, we propose a novel design method considering the new features brought by NOSQL and encompassing relational and co-relational design altogether.
Conference Paper
Full-text available
The need to store and manipulate large volume of (unstructured) data has led to the development of several NoSQL databases for better scalability. Graph databases are a particular kind of NoSQL databases that have proven their efficiency to store and query highly interconnected data, and have become a promising solution for multiple applications. While the mapping of conceptual schemas to relational databases is a well-studied field of research, there are only few solutions that target conceptual modeling for NoSQL databases and none of them focusing in graph databases. This is specially true when dealing with the mapping of business rules and constraints in the conceptual schema. In this article we describe a possible mapping from UML/OCL conceptual schemas to Blueprints, an abstraction layer on top of a variety of graph databases, and Grem-lin, a graph traversal language via an intermediate Graph metamodel representing data structure. Tool support is fully available.
Article
Full-text available
In this paper, we examine a number of SQL and socalled "NoSQL" data stores designed to scale simple OLTP-style application loads over many servers. Originally motivated by Web 2.0 applications, these systems are designed to scale to thousands or millions of users doing updates as well as reads, in contrast to traditional DBMSs and data warehouses. We contrast the new systems on their data model, consistency mechanisms, storage mechanisms, durability guarantees, availability, query support, and other dimensions. These systems typically sacrifice some of these dimensions, e.g. database-wide transaction consistency, in order to achieve others, e.g. higher availability and scalability.
Conference Paper
It is widely accepted today that relational systems are not appropriate to handle Big Data. This has led to a new category of databases commonly known as NoSQL databases that were created in response to the needs for better scalability, higher flexibility and faster data access. These systems have proven their efficiency to store and query Big Data. Unfortunately, only few works have presented approaches to implement conceptual models describing Big Data in NoSQL systems. This paper proposes an automatic MDA-based approach that provides a set of transformations, formalized with the QVT language, to translate UML conceptual models into NoSQL models. In our approach, we build an intermediate logical model compatible with column, document and graph oriented systems. The advantage of using a unified logical model is that this model remains stable, even though the NoSQL system evolves over time which simplifies the transformation process and saves developers efforts and time. KeywordsUMLNoSQLBig dataMDAQVTModels transformation
Conference Paper
The traditional OLAP (On-Line Analytical Processing) systems store data in relational databases. Unfortunately, it is difficult to manage big data volumes with such systems. As an alternative, NoSQL systems (Not-only SQL) provide scalability and flexibility for an OLAP system. We define a set of rules to map star schemas and its optimization structure, a precomputed aggregate lattice, into two logical NoSQL models: column-oriented and document-oriented. Using these rules we analyse and implement two decision support systems, one for each model (using MongoDB and HBase).We compare both systems during the phases of data (generated using the TPC-DS benchmark) loading, lattice generation and querying.
Conference Paper
It is widely accepted today that Relational databases are not appropriate in highly distributed shared-nothing architectures of commodity hardware, that need to handle poorly structured heterogeneous data. This has brought the blooming of NoSQL systems with the purpose of mitigating such problem, specially in the presence of analytical workloads. Thus, the change in the data model and the new analytical needs beyond OLAP take us to rethink methods and models to design and manage these newborn repositories. In this paper, we will analyze state of the art and future research directions.
Article
In order to reduce the influence of requirement change for software development and improve the efficiency and portability of software development efficiently, this paper, based on the ideas of Model Driven Architecture (MDA), proposes a method that transforms UML class diagrams into HBase based on Meta-model. The method achieves the transformation from Platform Independent Model (PIM) to Platform Specific Model (PSM) on the meta-model level and is comprised of three phases. In the first phase, the meta-models of UML class diagram and HBase database are built. In the second phase, the mapping rules between the two meta-models are proposed. In the last phase, the UML class diagram is built and the HBase database model is generated by transformation. At last, the paper uses Atlas language to achieve a breakfast serving system to prove the feasibility of the MDA in the software development.
Conference Paper
With the proliferation of cloud service providers, the use of non-relational (NoSQL) data stores is increasing. In contrast to standard relational database schema design, which has its strong mathematical background in relational algebra and set theory, development with NoSQL data stores is largely based on empirical best practices. Furthermore, the huge variety of NoSQL variants may require different design considerations. In this paper, an algorithm is introduced to automatically derive cost and performance optimal schema in column-oriented data stores based on predefined queries and an initial relational database schema. Algorithms are given to perform database denormalization, as well as to transform the original queries to meet the newly created schemas.
Article
With the development of distributed system and cloud computing, more and more applications might be migrated to the cloud to exploit its computing power and scalability, where the first task is data migration. In this paper, we propose a novel approach that transforms a relational database into HBase, which is an open-source distributed database similar to BigTable. Our method is comprised of two phases. In the first phase, relational schema is transformed into HBase schema based on the data model of HBase. We present three guidelines in this phase, which could be further utilized to develop an HBase application. In the second phase, relationships between two schémas are expressed as a set of nested schema mappings, which would be employed to create a set of queries or programs that transform the source relational data into the target representation automatically.
NOSQL design for analytical workloads: variability matters
  • V Herrero
  • A Abelló
  • O Romero
  • I Comyn-Wattiau
  • K Tanaka
  • I-Y Song
  • S Yamamoto
  • M Saeki
Using the column oriented NoSQL model for implementing big data warehouses
  • K Dehdouh
  • F Bentayeb
  • O Boussaid
  • N Kabachi
MOFScript eclipse plug-in: metamodel-based code generation
  • J Oldevik