LIBD:OUVRAGES-WEB

Affichages
De LIBD.
(Différences entre les versions)
m
(Introduction pratique à la théorie relationnelle des bases de données [B07])
 
(10 révisions intermédiaires par un utilisateur sont masquées)
Ligne 5 : Ligne 5 :
  
  
==='''1. Introduction to Database Reverse Engineering'''===
+
==='''Introduction to Database Reverse Engineering [<span id="B02-02">B02-02</span>]'''===
 
'''Jean-Luc Hainaut, May, 2002, 140 pages, English'''  
 
'''Jean-Luc Hainaut, May, 2002, 140 pages, English'''  
[[http://www.info.fundp.ac.be/~dbm/Documents/Ouvrages/Dunod-2009/Chapitres/Chapitre-22/DBRE-2008.pdf full text]]
+
[[http://www.info.fundp.ac.be/~dbm/Documents/Publications-LIBD/Ouvrages-Web/Database-Reverse-Engineering/DBRE-2002.pdf full text]]
:Description.
+
:This text is an extended abstract for a future book devoted to database reverse engineering (DBRE), considered as a specific, but general purpose, activity of information system engineering, and particularly system reengineering. To give it as large a scope as possible, we have developed general principles that can easily be specialized for any actual data management system, ranging from simple file managers (COBOL or RPG) to modern DB managers such as relational systems and OO DBMS. These principles are organized as a general DBRE methodology that is built in a systematic way. This methodology can be specialized according to specific DBMS models. It can be used to compare methodologies proposed in the literature and through reverse engineering CASE tools.
  
:Description.
+
:'''Contents'''. 1. ''Introduction''. 2. ''Data schema specification''. 3. ''Database development revisited''. 4. ''A general database reverse engineering methodology''. 5. ''The data structure extraction process''. 6. ''The data structure conceptualization process''. 7. ''DMS-oriented DBRE methodologies''. 8. ''CASE technology for DBRE''. 9. ''A case study: Database Migration''. 10. ''State of the art and conclusion''. 11. ''References''.  
  
:'''Contents'''.
+
==='''Introduction pratique à la théorie relationnelle des bases de données [<span id="B07">B07</span>]'''===
 +
'''Jean-Luc Hainaut, février 2012, 260 pages, French'''
 +
[[http://www.info.fundp.ac.be/~dbm/Documents/Publications-LIBD/Ouvrages-Web/Intro-theorie-relationnelle/Theorie-Relationnelle-2012.pdf full text]]
 +
:Il est pratiquement impossible aujourd’hui de développer une application informatique ou un site web professionnel qui ne s’appuient sur une base de données, à la fois par nécessité et en raison de la disponibilité d’outils de gestion de données faciles à déployer et à utiliser, et de surcroît financièrement accessibles, voire même gratuit (MySQL, Postgres, Interbase et Firebird par exemple). Jadis réservés aux professionnels en raison de leur complexité, de leurs exigence en puissance de calcul et de leur coût, les systèmes de gestion de bases de données sont devenus des composants de plus en plus populaires des applications informatiques de toute taille.
 +
:Conséquence naturelle et témoin de cette tendance, la prolifération actuelle d’ouvrages consacrés aux bases de données, qu’on trouvera jusque dans les rayonnages des grandes surfaces. L’utilisation des bases de données pose deux problèmes, qui déliminent clairement deux catégories d’ouvrages proposés au lecteur.
 +
:La première, objectivement la plus importante, comprend des ouvrages généralement dédiés à une technologie spécifique, telle qu’Oracle, SQL Server, Access, .Net, ASP, ou PHP, dont ils développent les aspects techniques et la programmation. Ouvrages pratiques par excellence, ils s’adressent au programmeur d’application, voire au développeur amateur.
 +
:Cependant, tout comme la maîtrise d’une langue ne fait pas automatiquement de nous des écrivains, ces ouvrages n’abordent que de manière très superficielle, voire inadéquate, les questions qui se posent aux analystes et aux concepteurs confrontés aux problèmes de la construction d’une base de données. D’où la deuxième catégorie d’ouvrages. De nature plus conceptuelle, ceux-ci suivent généralement un canevas assez standard : rappel des principes des bases de données (relationnelles surtout), démarche générale de conception d’une base de données, description d’un modèle conceptuel (Entité-association, Entité-relation ou diagrammes de classes UML). Suit alors une description des principaux processus : analye conceptuelle, conception logique, conception physique et codage. Ces ouvrages décrivent parfois un atelier de génie logiciel dédié à la conception de bases de données et incluent au moins une étude de cas représentative.  Le public de ces ouvrages est mixte, puisque, d’une part, les problèmes abordés concernent directement les professionnels, et par ailleurs cette matière fait partie intégrante de la plupart des programmes d’enseignement supérieur d’informatique, voire même de gestion.
 +
:Les ouvrages de la deuxième catégorie incluent généralement une introduction plus ou moins étendue à la théorie des bases de données relationnelles. On y trouve en particulier les définitions élémentaires des relations, une description des opérateurs de l’algèbre relationnelle, un exposé sur les formes normales et sur le processus de normalisation. Cette matière est en effet l’un des fondements essentiels du domaine des bases de données, et il n’est pas imaginable d’espérer maîtriser ce domaine sans posséder les éléments de cette théorie.
 +
:C’est précisément l’un des objectifs du présent ouvrage que d’approfondir l’étude des structures et des propriétés des bases de données relationnelles, et par cette voie, aborder les problèmes fondamentaux de l’ingénierie des bases de données en général.
 +
:Cet ouvrage, qui s'appuie sur les résultats de la théorie relationnelle des bases de données telle qu’elle s’est développée depuis 1970, mais aussi sur des travaux toujours en cours, est consacré à l'étude de propriétés universelles des structures de données, indépendantes de toute technologie. On n’y fera pas référence, sauf à titre exceptionnel, et en général dans un but illustratif, à des SGBD, des langages, des modèles d’ingénierie ou à des domaines applicatifs spécifiques.
 +
:Ces structures et ces propriétés ont été choisies pour leur applicabilité dans les processus d’ingénierie tels que l’analyse conceptuelle, la conception logique, l’optimisation ou la rétro-ingénierie. De ce fait, cet ouvrage ne constitue pas à proprement parler une introduction classique à la théorie relationnelle : certaines parties ont en effet été réduites (telle la théorie des dépendances multivaluées) tandis que d’autres ont été plus développées que dans d’autres ouvrages traitant du même thème (calcul des identifiants et normalisation par exemple).
 +
:Ce texte, qui s’adresse à un public de praticiens, suit une approche intuitive, basée sur la mise en évidence de problèmes pratiques et le développement, parfois itératif, de solutions concrètes.  Il est accompagné de nombreux exercices. Cet objectif pratique nous a amené à inclure dans cet ouvrage des résultats originaux qui se démarquent de ceux qui sont proposés dans la littérature scientifique, et qui sont difficilement applicables. Ainsi en est-il de la procédure intuitive de détermination des identifiants d’une relation, qui remplace avantageusement les algorithmes actuellement disponibles, particulièrement complexes et qui s’appuient sur des connaissances en mathématique qu’on ne peut exiger des professionnels de l’informatique.
 +
:En général, nous éviterons les raisonnements axiomatiques, certes élégants et concis (un exposé formel de la théorie relationnelle développée dans cet ouvrage pourrait tenir en dix pages !), mais qui risquent de faire perdre de vue l’objectif utilitaire de l’exposé, et de rebuter certains lecteurs.  Nous chercherons en revanche à justifier rigoureusement les techniques et procédés que nous serons amenés à développer.
 +
:Nous renverrons le lecteur intéressé par une approche plus fondamentale à des références telles que  [Abiteboul, 1994], [Maier, 1983] ou [Ullman, 1988].
 +
:Ajoutons enfin que ce texte suppose acquise une connaissance minimale du langage SQL.
  
 +
:'''Contents'''. 1. ''Introduction et motivations''. 2. ''Les concepts du modèle relationnel''. 3. ''Les opérateurs algébriques''. 4. ''Identifiants et dépendances fonctionnelles''. 5. ''Calcul des identifiants d’une relation''. 6. ''Contraintes d'inclusion''. 7. ''Formes normales d'une relation''. 8. ''Normalisation d'un schéma relationnel''. 9. ''Dépendances multivaluées et 4ème forme normale''. 10. ''Les relations non en 1FN (N1FN)''. 11. ''Bibliographie''.
  
==='''2. Integration of Legacy and Heterogeneous Databases'''===
+
<!--
 +
==='''Integration of Legacy and Heterogeneous Databases'''===
 
'''Philippe Thiran, Jean-Luc Hainaut, 2002, 204 pages, English'''
 
'''Philippe Thiran, Jean-Luc Hainaut, 2002, 204 pages, English'''
[[http://www.info.fundp.ac.be/~dbm/publication/2002/interdbreport-intro.pdf full text]]
+
[[http://www.info.fundp.ac.be/~dbm/Documents/Publications-LIBD/Ouvrages-Web/InterDB-2002/InterDB-2002.pdf full text]]
:Description.
+
:Accessing and managing data from several existing independent databases pose complex problems that can be classified into platform, DMS, location and semantic levels. The platform level copes with the fact that databases reside on different brands of hardware, under different operating systems, and interacting through various network protocols. Leveling these differences leads to platform independence. DMS level independence allows programmers to ignore the technical details of data implementation in a definite family of models. It can also hide the model that the DMS implements by providing a more abstract model. Location independence isolates the user from knowing where the data reside. Finally, semantic level independence solves the problem of multiple, replicated and conflicting representations of similar facts.The InterDB project proposes a general architecture, a methodology and a CASE environment intended to address the problem of providing users and programmers with an abstract interface to independent, heterogeneous and distributed databases.  
 
+
:'''Architecture'''. The architecture comprises a hierarchy of mediators that dynamically transform actual data into a virtual homogeneous database. Each layer of mediators provides a certain kind of independence. DMS independence is provided by wrappers dedicated to each database. Location and semantic independence’s are ensured by a mediator. Finally, platform independence is ensured by both the wrappers and ad hoc middleware such as commercial ORB.
:Description.
+
:'''Methodology'''. Such an architecture involves controlling complex mappings. The problem is complicated by the fact that the databases have been developed independently, and naturally suffer from sever problems of replication and semantic conflicts. In addition, most legacy databases have no documentation any more, just like programs. Recovering the conceptual schemas form an existing database is the main goal of database reverse engineering, an important software engineering that can now be considered mature. Solving the syntactic and semantic conflicts of independent schemas has long been studied in the database realm. However, coping with conceptual schemas form populated databases brings new problems. A complete methodology, encompassing conceptual schema recovery and database integration is provided to practitioners.
 +
:'''Case support'''. Deriving a common, abstract and conflict-free image of independent databases and defining the mappings between the specification layers are complex tasks. Building the wrappers and the mediators are also two complex and error-prone activities. All these processes are supported by the DB-MAIN CASE tool. This graphical, repository-based, software engineering environment includes, among others, a sophisticated reverse engineering toolkit, schema mapping specification facilities and a generator development environment.
  
 
:'''Contents'''.
 
:'''Contents'''.
 +
:1 ''Introduction''
 +
:Part I: Generic Integration Framework. 2. ''Integration Architecture''. 3. ''Generic Data Model''. 4. ''Mapping Definition''.
 +
:Part II: Wrapper Technology. 5. ''Wrapper Architecture''. 6. ''Wrapper Development (Methodology)''. 7. ''Wrapper Development Support''.
 +
:Part III: Mediator Technology. 8. ''Mediator Architecture''. 9. ''Mediator Development (Methodology)''. 10. ''Meditator Development Support''.
 +
:References.
 +
-->
  
 +
==='''Introduction pratique aux bases de données temporelles [<span id="B02-01">B02-01</span>]'''===
  
==='''Introduction pratique aux bases de données temporelles'''===
 
 
'''Jean-Luc Hainaut, Virginie detienne, novembre 2002, 116 pages, français'''
 
'''Jean-Luc Hainaut, Virginie detienne, novembre 2002, 116 pages, français'''
 
[[http://www.info.fundp.ac.be/~dbm/Documents/Tutorials/Intro-BD-temporelles/IntroPratique-BDT.pdf full text]]
 
[[http://www.info.fundp.ac.be/~dbm/Documents/Tutorials/Intro-BD-temporelles/IntroPratique-BDT.pdf full text]]

Version actuelle en date du 27 mai 2012 à 16:20

Ouvrages publiés sur le web / Web Books


<Retour à la page des publications / Back>


Introduction to Database Reverse Engineering [B02-02]

Jean-Luc Hainaut, May, 2002, 140 pages, English [full text]

This text is an extended abstract for a future book devoted to database reverse engineering (DBRE), considered as a specific, but general purpose, activity of information system engineering, and particularly system reengineering. To give it as large a scope as possible, we have developed general principles that can easily be specialized for any actual data management system, ranging from simple file managers (COBOL or RPG) to modern DB managers such as relational systems and OO DBMS. These principles are organized as a general DBRE methodology that is built in a systematic way. This methodology can be specialized according to specific DBMS models. It can be used to compare methodologies proposed in the literature and through reverse engineering CASE tools.
Contents. 1. Introduction. 2. Data schema specification. 3. Database development revisited. 4. A general database reverse engineering methodology. 5. The data structure extraction process. 6. The data structure conceptualization process. 7. DMS-oriented DBRE methodologies. 8. CASE technology for DBRE. 9. A case study: Database Migration. 10. State of the art and conclusion. 11. References.

Introduction pratique à la théorie relationnelle des bases de données [B07]

Jean-Luc Hainaut, février 2012, 260 pages, French [full text]

Il est pratiquement impossible aujourd’hui de développer une application informatique ou un site web professionnel qui ne s’appuient sur une base de données, à la fois par nécessité et en raison de la disponibilité d’outils de gestion de données faciles à déployer et à utiliser, et de surcroît financièrement accessibles, voire même gratuit (MySQL, Postgres, Interbase et Firebird par exemple). Jadis réservés aux professionnels en raison de leur complexité, de leurs exigence en puissance de calcul et de leur coût, les systèmes de gestion de bases de données sont devenus des composants de plus en plus populaires des applications informatiques de toute taille.
Conséquence naturelle et témoin de cette tendance, la prolifération actuelle d’ouvrages consacrés aux bases de données, qu’on trouvera jusque dans les rayonnages des grandes surfaces. L’utilisation des bases de données pose deux problèmes, qui déliminent clairement deux catégories d’ouvrages proposés au lecteur.
La première, objectivement la plus importante, comprend des ouvrages généralement dédiés à une technologie spécifique, telle qu’Oracle, SQL Server, Access, .Net, ASP, ou PHP, dont ils développent les aspects techniques et la programmation. Ouvrages pratiques par excellence, ils s’adressent au programmeur d’application, voire au développeur amateur.
Cependant, tout comme la maîtrise d’une langue ne fait pas automatiquement de nous des écrivains, ces ouvrages n’abordent que de manière très superficielle, voire inadéquate, les questions qui se posent aux analystes et aux concepteurs confrontés aux problèmes de la construction d’une base de données. D’où la deuxième catégorie d’ouvrages. De nature plus conceptuelle, ceux-ci suivent généralement un canevas assez standard : rappel des principes des bases de données (relationnelles surtout), démarche générale de conception d’une base de données, description d’un modèle conceptuel (Entité-association, Entité-relation ou diagrammes de classes UML). Suit alors une description des principaux processus : analye conceptuelle, conception logique, conception physique et codage. Ces ouvrages décrivent parfois un atelier de génie logiciel dédié à la conception de bases de données et incluent au moins une étude de cas représentative. Le public de ces ouvrages est mixte, puisque, d’une part, les problèmes abordés concernent directement les professionnels, et par ailleurs cette matière fait partie intégrante de la plupart des programmes d’enseignement supérieur d’informatique, voire même de gestion.
Les ouvrages de la deuxième catégorie incluent généralement une introduction plus ou moins étendue à la théorie des bases de données relationnelles. On y trouve en particulier les définitions élémentaires des relations, une description des opérateurs de l’algèbre relationnelle, un exposé sur les formes normales et sur le processus de normalisation. Cette matière est en effet l’un des fondements essentiels du domaine des bases de données, et il n’est pas imaginable d’espérer maîtriser ce domaine sans posséder les éléments de cette théorie.
C’est précisément l’un des objectifs du présent ouvrage que d’approfondir l’étude des structures et des propriétés des bases de données relationnelles, et par cette voie, aborder les problèmes fondamentaux de l’ingénierie des bases de données en général.
Cet ouvrage, qui s'appuie sur les résultats de la théorie relationnelle des bases de données telle qu’elle s’est développée depuis 1970, mais aussi sur des travaux toujours en cours, est consacré à l'étude de propriétés universelles des structures de données, indépendantes de toute technologie. On n’y fera pas référence, sauf à titre exceptionnel, et en général dans un but illustratif, à des SGBD, des langages, des modèles d’ingénierie ou à des domaines applicatifs spécifiques.
Ces structures et ces propriétés ont été choisies pour leur applicabilité dans les processus d’ingénierie tels que l’analyse conceptuelle, la conception logique, l’optimisation ou la rétro-ingénierie. De ce fait, cet ouvrage ne constitue pas à proprement parler une introduction classique à la théorie relationnelle : certaines parties ont en effet été réduites (telle la théorie des dépendances multivaluées) tandis que d’autres ont été plus développées que dans d’autres ouvrages traitant du même thème (calcul des identifiants et normalisation par exemple).
Ce texte, qui s’adresse à un public de praticiens, suit une approche intuitive, basée sur la mise en évidence de problèmes pratiques et le développement, parfois itératif, de solutions concrètes. Il est accompagné de nombreux exercices. Cet objectif pratique nous a amené à inclure dans cet ouvrage des résultats originaux qui se démarquent de ceux qui sont proposés dans la littérature scientifique, et qui sont difficilement applicables. Ainsi en est-il de la procédure intuitive de détermination des identifiants d’une relation, qui remplace avantageusement les algorithmes actuellement disponibles, particulièrement complexes et qui s’appuient sur des connaissances en mathématique qu’on ne peut exiger des professionnels de l’informatique.
En général, nous éviterons les raisonnements axiomatiques, certes élégants et concis (un exposé formel de la théorie relationnelle développée dans cet ouvrage pourrait tenir en dix pages !), mais qui risquent de faire perdre de vue l’objectif utilitaire de l’exposé, et de rebuter certains lecteurs. Nous chercherons en revanche à justifier rigoureusement les techniques et procédés que nous serons amenés à développer.
Nous renverrons le lecteur intéressé par une approche plus fondamentale à des références telles que [Abiteboul, 1994], [Maier, 1983] ou [Ullman, 1988].
Ajoutons enfin que ce texte suppose acquise une connaissance minimale du langage SQL.
Contents. 1. Introduction et motivations. 2. Les concepts du modèle relationnel. 3. Les opérateurs algébriques. 4. Identifiants et dépendances fonctionnelles. 5. Calcul des identifiants d’une relation. 6. Contraintes d'inclusion. 7. Formes normales d'une relation. 8. Normalisation d'un schéma relationnel. 9. Dépendances multivaluées et 4ème forme normale. 10. Les relations non en 1FN (N1FN). 11. Bibliographie.


Introduction pratique aux bases de données temporelles [B02-01]

Jean-Luc Hainaut, Virginie detienne, novembre 2002, 116 pages, français [full text]

Présentation et discussion, au travers d'une étude de cas construite pas à pas, des principes des bases de données temporelles. On étudie la représentation de la dimension temporelle des données (monotemporel physique et logique, le bitemporel est simplement évoqué), la gestion de données temporelle sous la forme d'une base de données active en SQL2 and l'exploitation de données temporelle (y compris la projection, la jointure et l'agrégation temporelles).
Presentation and discussion, through a case study developed step-by-step, of the basics in temporal databases. The tutorial studies the temporal dimension of data (transaction time and valid time are developed but bitemporal is just mentioned), the management of temporal data through an SQL2 active database and its exploitation (including temporal projection, join and agregation).
Contenu. 1. Introduction. 2. Description du projet. 3. Représentation des données historiques. 4. Gestion des données historiques (temps physique ou transaction time). 5. Gestion des données historiques (temps logique ou valid time). 6. Interrogation d’une base de données historiques. 7. Projection temporelle d’une table historique (version simplifiée). 8. Projection temporelle généralisée. 9. Jointure de tables historiques. 10. L’agrégation temporelle. 11. Normalisation d’une table historique. 12. Variantes d’historiques. 13. Historique d’associations. 14. Suggestions d’extension. 15. PROJET : Les composants du projet. 16. PROJET : Les structures de données. 17. PROJET : La gestion des données. 18. PROJET : Quelques applications représentatives. 19. Bibliographie.


<Retour à la page des publications / Back>

Outils personnels