A Constructive Approach for Conceptual Database Design

A Constructive Approach for Conceptual Database Design

Elvira Locuratolo (ISTI Consiglio Nazionale delle Ricerche, Italy)
DOI: 10.4018/978-1-4666-3679-8.ch002
OnDemand PDF Download:
No Current Special Offers


The chapter focuses on the conceptual database design evolution, by introducing concepts which are common to both information systems and software engineering researches. An optimization algorithm of partitioning, based on the decomposition of objects and on the inheritance of attributes, is proposed and extended. The extended algorithm, which defines a formal constructive mapping from conceptual to logical database models, aims to show how some updates reflecting modifications occurring in real life can affect the conceptual database design. The chapter evidences the idea that model design, which retains quality aspects, such as maintainability and re-usability over a long lifetime, also suggests appropriate implementations which can be characterized by innovation and productivity. Algorithms of partitioning have been exploited within a database design methodology for quality, a method of re-engineering, and recently, in concept theory for digital preservation.
Chapter Preview


Before creating an information system, the business and organizational domain in which the information system is used must be represented. This representation, called conceptual model, is a critical point for the success of the information system development. Databases and database systems play a pre-eminent role in supporting data management and in implementing engineering information (Ma, 2006). Conceptual Database Design (Elmasri & Navathe, 2003), defined by approaches of mappings from conceptual to logical database models, is essential in researches on information systems and software engineering. Graphs of classes representing conceptual/logical database models are based on concepts which are common to both these areas. New engineering requirements and current technologies favor the conceptual database design evolution.

This chapter focuses on graphs of classes representing conceptual/logical database models, on methods for their construction and on algorithms of mapping from conceptual data models to logical data models. When a method engineer creates a methodology, he or she usually utilizes a given meta-model to create a specific instance, in our case to create a specific conceptual/logical database model and a corresponding mapping. Meta-models are adequate means to understand how design, development and implementation of systems concerned with different disciplines can be affected to reflect evolutions occurring in real life. In this chapter, starting from the formal approach exploited to design the model of a conceptual database design methodology (Locuratolo, 2011); a formal constructive approach of mappings from conceptual database models to logical database models is provided. The following motivations justify the approach.

Semantic data models and object database systems (Cardenas & McLeod, 1990) have similar mechanisms of abstraction; however, while semantic data models have never been implemented efficiently (Nixon & Mylopoulos, 1990), object database systems have reached a remarkable level of efficiency. On the contrary, while semantic data models are adequate for conceptual design, object database systems can display serious shortcomings in their ability to describe the dynamic nature of the real world entities. Semantic data models enhance flexibility, whereas object models enhance efficiency. The mapping from semantic data models to object systems is a means to achieve both the conflicting desiderata of flexibility and efficiency. Model correctness is also desired for conceptual design. Correctness can be appropriately preserved designing formal mappings based on model equivalence. Many classifications of mappings are presented in the literature, however formal methods for creating mappings are scant (Yuan, 2006).

By partitioning (Spagnolo, 2000; Locuratolo & Palomäki, 2008) we mean a set of properties enjoyed by algorithms which map semantic data models to object systems. Each map provides as output the same set of disjoint classes. These classes are then recomposed to define a graph of object classes. Many equivalent graphs of classes can be defined. The choice of the specific partitioning algorithm, as well as the choice of the specific graph of object classes is related with an objective to be reached. The partitioning algorithms guarantee the design correctness.

Complete Chapter List

Search this Book: