Dbm (discuter | contributions) m |
Dbm (discuter | contributions) m |
||
Ligne 3 : | Ligne 3 : | ||
*'''Description''' | *'''Description''' | ||
:The development and the exploitation of data models are the basic processes that build the database engineeering domain. Models allow database structures to be described at the appropriate level of abstraction, so that schemas can be evaluated, transformed and reasoned about rigourously. They are at the core of design methodologies and CASE tools. The <b>conceptual models</b>, such as the Entity-relationship model and some interpretations of UML class diagrams aim at describing data/information structures at the conceptual, technology-independent level, while the many <b>logical models</b> (relational, object-relational, XML, and the like) currently available are intended to represent data structures as they are implemented by data managers (or by families thereof). | :The development and the exploitation of data models are the basic processes that build the database engineeering domain. Models allow database structures to be described at the appropriate level of abstraction, so that schemas can be evaluated, transformed and reasoned about rigourously. They are at the core of design methodologies and CASE tools. The <b>conceptual models</b>, such as the Entity-relationship model and some interpretations of UML class diagrams aim at describing data/information structures at the conceptual, technology-independent level, while the many <b>logical models</b> (relational, object-relational, XML, and the like) currently available are intended to represent data structures as they are implemented by data managers (or by families thereof). | ||
− | :*<b>The SPHINX data models</b>. The SPHINX DBMS was based on a hierarchy of two data | + | :*<b>The SPHINX data models</b>. The SPHINX DBMS was based on a hierarchy of two data models. The first one would be qualified, according to the current terminology, <i>conceptual</i> [P74-02] and the second one, <i>logical</i> [P74-01], though both were technology independent (I must confess that the titles of the paper are misleading!). The concept of technology-independent (PIM in the MDE vocabulary) logical model was popular in the seventies. This idea was later reused in the GAM, GER and DB-MAIN models. The SPHINX system and its data models are described in project reports [R78-01] to [R78-05]. |
− | :*<b>The Individual model</b>. Reference [P74-04] reports on the first version on the Individual model (a variant of the ER model), which was the main component of the MERISE methodology. This model emerged from hot discussions in a French-Belgian think tank [P74-03]. Hubert Tardieu, the architect of the Merise methodology, was a member of the team (though | + | :*<b>The Individual model</b>. Reference [P74-04] reports on the first version on the Individual model (a variant of the ER model), which was the main component of the MERISE methodology. This model emerged from hot discussions in a French-Belgian think tank [P74-03]. Hubert Tardieu, the architect of the Merise methodology, was a member of the team (though not a co-author of [P74-03] for reasons I can't remember any more). |
:*<b>The GAM</b>. The Generalized Access Model derived from the early work on technology-independent logical models [P74-01]. This binary model was the basis of three research lines: (1) database performance analysis [P76-02] [P77-01], (2) a first study on schema transformation [P81-02] and (3) logical design methodology [B86]. | :*<b>The GAM</b>. The Generalized Access Model derived from the early work on technology-independent logical models [P74-01]. This binary model was the basis of three research lines: (1) database performance analysis [P76-02] [P77-01], (2) a first study on schema transformation [P81-02] and (3) logical design methodology [B86]. | ||
− | :*<b>The GER model</b>. The Generic Entity-relationship model (GER) is a wide-spectrum information/data structure specification model. It encompasses the main concepts and constructs of most popular modeling formalisms, be they value-based or object-based, it has been given a precise semantics via an extended version of the NF2 (non-first normal form, or nested) relational model [P89-1] [P96-08]]. Through a specialization mechanism, such usual models as Entity-relationship, UML class diagrams and ORM can be rigourously specified and compared [ | + | :*<b>The GER model</b>. The Generic Entity-relationship model (GER) is a wide-spectrum information/data structure specification model. It encompasses the main concepts and constructs of most popular modeling formalisms, be they value-based or object-based, it has been given a precise semantics via an extended version of the NF2 (non-first normal form, or nested) relational model [P89-1] [P96-08]]. Through a specialization mechanism, such usual models as Entity-relationship, UML class diagrams and ORM can be rigourously specified and compared [P90-01]. Similarly, the GER can be used to define standard data models such as the relational, object-relational, CODASYL, IMS, XML or plain file structure models. The GER model has been used to study transformation-based database engineering processes [P06-10]. |
− | :*<b>The DB-MAIN model</b>. This model is a partial, graphical, implementation of the GER. It has been developed for the DB-MAIN CASE environment. A precise definition can be found in the DB-MAIN manuals [T09-01] | + | :*<b>The DB-MAIN model</b>. This model is a partial, graphical, implementation of the GER. It has been developed for the DB-MAIN CASE environment. A precise definition can be found in the DB-MAIN manuals [T09-01], in DB design tutorials [T02-01] [T02-02] and in text book [B09]. |
:*<b>Temporal data models</b>. The DB-MAIN model (conceptual, logical and physical) has been extended to express temporal aspects of data (transaction, valid, bi-temporal). A specific methodology has been designed and code generation rules have been implemented for active relational databases [P01-02] | :*<b>Temporal data models</b>. The DB-MAIN model (conceptual, logical and physical) has been extended to express temporal aspects of data (transaction, valid, bi-temporal). A specific methodology has been designed and code generation rules have been implemented for active relational databases [P01-02] | ||
− | :*<b>Relational model (theory)</b>. | + | :*<b>Relational model (theory)</b>. Some important theoretical aspects of the relational model, in particular the normalization process, have been developed in books [B09] and [B07]. The emphasis is on concepts and techniques applicable to database design problems solving by practitioners. |
− | :*<b>DBMS models</b>. Descriptions of data models specific to the most popular DBMS | + | :*<b>DBMS models</b>. Descriptions of data models specific to the most popular DBMS are available in various references. SQL2, SQL3 in [B09], hierarchical or IMS in [P09-02] and [B02-02], network or CODASYL DBTG in [P09-03], [R03-01] and [B02-02]. Elementary knowledge in legacy data models is important in database reverse engineering. Also, it can't be bad to show young IT professionals that database technology has not begun with their first i-Phone. On the contrary, it has a long history and many of the seemingly nice innovative data management features already existed in the seventies, and sometimes before! |
− | :*<b>UML data model</b>. UML class diagrams are often proposed to express database schemas. The ability of this formalism | + | :*<b>UML data model</b>. UML class diagrams are often proposed to express database schemas. The ability of this formalism to describe conceptual schemas has been studied in references [R02-01] and [B09]. It appears that by discarding some ill-designed constructs and by adding a small number of constructs (such as identifiers and other basic constraints) it is possible de define a variant of UML (called DB-UML) quite fitted to database schemas. DB-UML has also been implemented in the DB-MAIN CASE tool, together with bi-directional global schema transformations with the DB-MAIN GER model. |
*'''Keywords''' | *'''Keywords''' | ||
:ER model, Individual model, UML class diagrams, wide-spectrum model, GER model, logical data model, temporal model, relational model, network model, hierarchical model, OO model, OR model, XML model, large schema layout, semantic and statistical aspects of models, IS-A relations | :ER model, Individual model, UML class diagrams, wide-spectrum model, GER model, logical data model, temporal model, relational model, network model, hierarchical model, OO model, OR model, XML model, large schema layout, semantic and statistical aspects of models, IS-A relations |