ift287 - Exploitation de bases de données relationnelles et orientées objet



Documents pareils
IT203 : Systèmes de gestion de bases de données. A. Zemmari zemmari@labri.fr

Bases de données relationnelles : Introduction

SIO Page 1 de 5. Applications Web dynamiques. Prof. : Dzenan Ridjanovic Assistant : Vincent Dussault

Bases de données avancées Introduction

INTRODUCTION AUX BASES de DONNEES

Information utiles. webpage : Google+ : digiusto/

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

Bases de données et environnements distribués Chapitre I : Architecture logicielle technologies de developpement en environnement

CQP Développeur Nouvelles Technologies (DNT)

Introduction aux bases de données

Développement des Systèmes d Information

Bases de données Page 1 de 11. Bases de données. Prof. : Dzenan Ridjanovic

Soutien technique en informatique

Initiation aux bases de données (SGBD) Walter RUDAMETKIN

Bases de données cours 1

A.E.C. GESTION DES APPLICATIONS TECHNOLOGIE DE L'INFORMATION LEA.BW

INF 1250 INTRODUCTION AUX BASES DE DONNÉES. Guide d étude

Bases de données - Modèle relationnel

Catalogue des Formations Techniques

Refonte front-office / back-office - Architecture & Conception -

Bases de données. Chapitre 1. Introduction

Bases de données et sites WEB Licence d informatique LI345

Module BD et sites WEB

Bases de données Cours 1 : Généralités sur les bases de données

Ecole des Hautes Etudes Commerciales HEC Alger. par Amina GACEM. Module Informatique 1ière Année Master Sciences Commerciales

Cours Base de données relationnelles. M. Boughanem, IUP STRI

Technologies Web. Ludovic Denoyer Sylvain Lamprier Mohamed Amine Baazizi Gabriella Contardo Narcisse Nya. Université Pierre et Marie Curie

Cours en ligne Développement Java pour le web

Avant-propos 1. Avant-propos Organisation du guide À qui s'adresse ce guide?...4

Hébergement de sites Web

Les Bases de Données et l Objet Introduction

UE 8 Systèmes d information de gestion Le programme

GPC Computer Science

Compte Rendu d intégration d application

PLAN DE COURS. GPA750 Ordonnancement des systèmes de production aéronautique

Cours Bases de données

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

Java et les bases de données

Plan de cours. 1. Mise en contexte. 2. Place du cours dans le programme. 3. Descripteur du cours

Master CCI. Compétences Complémentaires en Informatique. Livret de l étudiant

PRIMAVERA P6 ENTERPRISE PROJECT PORTFOLIO MANAGEMENT WEB SERVICES

Ingénieur Développement Nouvelles Technologies

CESI Bases de données

Expert technique J2EE

Programme scientifique Majeure ARCHITECTURE DES SYSTEMES D INFORMATION. Mentions Ingénierie des Systèmes d Information Business Intelligence

TP JEE Développement Web en Java. Dans ce TP nous commencerons la programmation JEE par le premier niveau d une application JEE : l application web.

Java et les bases de données: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java. Michel Bonjour

Alpha PRIMO 58 boulevard baron du Marais Roanne / / contact@alphaprimo.fr

Introduction aux Bases de Données Relationnelles Conclusion - 1

10. Base de données et Web. OlivierCuré

Devenez un véritable développeur web en 3 mois!

Business Intelligence avec Excel, Power BI et Office 365

Architecture N-Tier. Ces données peuvent être saisies interactivement via l interface ou lues depuis un disque. Application

Introduction à la conception de systèmes d information

Quelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)

Mercredi 15 Janvier 2014

INGÉNIEUR LOGICIEL JAVAEE / GROOVY 8 ANS D EXPÉRIENCE

BASES DE DONNÉES. CNAM Centre associé de Clermont-Ferrand Cycle A Année J. Darmont I. INTRODUCTION II. LES SYSTÈMES HIÉRARCHIQUES

Présentation du module Base de données spatio-temporelles

W4 - Workflow La base des applications agiles

Logiciel de gestion de caisse et d ardoises

Catalogue des Formations

Architecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués

Page 1 Domaine commercial filière informatique de gestion 2 sur 16

A.E.C. - Gestion des Applications, TI LEA.BW

LICENCE PROFESSIONNELLE

PostgreSQL. Formations. SQL avancé Calendrier... 18

INFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09

Formation en Logiciels Libres. Fiche d inscription

Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage

Bases de Données. Stella MARC-ZWECKER. Maître de conférences Dpt. Informatique - UdS

LEA.C5. Développement de sites Web transactionnels

webmestre : conception de sites et administration de serveurs web 42 crédits Certificat professionnel CP09

CHARGÉE DE COURS : Catherine Pelletier, MBA, chargée de communication, Service des communications et des relations avec le milieu, FSA

PostgreSQL. Formations. Calendrier... 14

Formation : WEbMaster

Brique BDL Gestion de Projet Logiciel

Systèmes d information et bases de données (niveau 1)

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

Application web de gestion de comptes en banques

La problématique de la Préservation des Bases de Données. Olivier ROUCHON CINES Groupe PIN Jeudi 7 Octobre

ANALYSTE PROGRAMMEUR DIPLÔME D ÉTABLISSEMENT

MRK A : Méthodes d Analyse de Données en Marketing Automne 2010

Pratique et administration des systèmes

LICENCE PROFESSIONNELLE SYSTEMES INFORMATIQUES & LOGICIELS

Université du Québec à Chicoutimi. Département d informatique et de mathématique. Plan de cours. Titre : Élément de programmation.

Master Informatique Aix-Marseille Université

Gestion d Epargne de Crédit & Comptabilité

Séance 1 Introduction aux bases de données

BIRT (Business Intelligence and Reporting Tools)

La persistance des données dans les applications : DAO, JPA, Hibernate... COMPIL 2010 francois.jannin@inp-toulouse.fr 1

Formations qualifiantes pour demandeurs d emploi

PLAN DE COURS DÉPARTEMENT ÉLECTRONIQUE INDUSTRIELLE. TITRE DU COURS Ordinateur Outil RA 1-4-2

PLAN DE COURS. Reconnaître le rôle des mathématiques ou de l informatique dans la société contemporaine (0011)

7 villa de la citadelle Né le 13 mai Arcueil Nationalité : Française. Développeur Web JEE COMPÉTENCES

LE CENTRE DE RÉFÉRENCE PROFESSIONNELLE TIC DE BRUXELLES TAKE I.T. EASY FORMATION TECHNIQUES IT & WEB POUR INFORMATICIENS

Introduction à ORACLE WAREHOUSE BUILDER Cédric du Mouza

PROSOP : un système de gestion de bases de données prosopographiques

Transcription:

Département d informatique ift287 - Exploitation de bases de données relationnelles et orientées objet Plan de cours Hiver 2012 Enseignant : Marc Frappier Courriel : marc.frappier@usherbrooke.ca Téléphone : (819) 821-8000 poste 62096 Site : http://www.dmi.usherb.ca/ frappier/ift287/ift287.html Disponibilité : sur rendez-vous par courriel Horaire Cours théoriques : mardi 13h30 à 15h20 salle D7-2016 jeudi 13h30 à 15h20 salle D7-2016 Exercices/laboratoires : jeudi 13h30 à 15h20 salle Description Crédits : 3 Organisation : Cours théoriques : 3 heures/semaine Exercices/laboratoires : 1 heure(s)/semaine Travail personnel : 5 heures/semaine Préalable : ift187 Fiche signalétique Particularités : http://www.usherbrooke.ca/fiches-cours/ift287 Aucune 22 décembre 2011 1 ift287

1 Présentation 1.1 Mise en contexte Les bases de données jouent un rôle central dans le développement des systèmes informatiques. Elles permettent de stocker l information relative à un domaine d application, d en préserver l intégrité, de l extraire en utilisant un langage de haut niveau, de traiter plusieurs transactions simultanément, de répartir les données, et d assurer la sécurité et le recouvrement des données. Le modèle relationnel prédomine dans l industrie. Il s agit d une des plus belles réussites de la recherche en informatique. On y retrouve l élégance des mathématiques appliquée de manière efficace à un problème concret. Le modèle relationnel mérita à son auteur, E. F. Codd, le ACM Turing Award, l équivalent du prix Nobel pour les informaticiens. De par sa puissance, sa simplicité, son niveau d abstraction, ses fondements mathématiques, et son degré de pénétration du marché qui illustre son adéquation, le modèle relationnel constitue un cas de figure intéressant pour l étude des bases de données. Le modèle orienté objet est en pleine croissance. D usage plus simple que le modèle relationnel dans un contexte de programmation orientée objets, il constituera sûrement une alternative efficace et souple dans le futur, avec l amélioration des SGBD le supportant. Il sera donc notre deuxième cas de figure. XML est devenu un norme de facto dans l industrie pour l échange électronique de données. Nous étudierons la structure du langage XML ainsi que les outils existants en Java pour manipuler des données avec XML. Nous aborderons finalement la conception d interfaces graphiques simples basées sur des navigateurs web (HTML, JSP, servlet). Le langage Java, largement utilisé dans l industrie pour le développement d applications distribuées utilisant internet et des bases de données, sera notre principal outil de développement, avec bien sûr le langage SQL. Des modèles plus anciens de bases de données, tels les modèles réseaux et hiérarchiques, sont encore en utilisation en industrie. Toutefois, ils sont rarement choisis pour développer de nouveaux systèmes. L étudiant pourra se référer au livre de base du cours, s il désire approfondir ses connaissances à leur sujet. Ce cours fait suite au cours IFT187 Éléments de bases de données. Il permettra à l étudiant d appliquer et de connaître de manière approfondie les concepts de traitement de données et de savoir exploiter une base de données. Dans le cours suivant, IFT487 Modélisation avancée de bases de données, les concepts de modélisation de données, de concurrence, de recouvrement, de gestion et d implantation des bases de données seront traités. 1.2 Objectifs généraux À la fin de ce cours, l étudiant devrait être capable : 1. de connaître les composantes de base d un système de gestion de base de données; 2. de savoir utiliser des patrons de conception pour une application interactive de base de données multiutilisateurs. 3. de savoir exploiter une base de données relationnelle et une base de données orientée objets; 4. de connaître et appliquer les principes de bases du langage XML pour l échange électronique de données; 5. de développer une interface graphique web simple; 6. de parfaire sa connaissance des bases de données de manière autonome. 1.3 Objectifs spécifiques À la fin de l étude de chacun des thèmes suivants et pour atteindre les objectifs spécifiques l étudiant devrait être capable: 1. manipulation de bases de données relationnelles de créer, de modifier et d interroger une base de données relationnelle en mode client-serveur; de développer une application simple, dans un langage de programmation orienté objets, exploitant une base de données relationnelle, en utilisant les patrons de conception présentés. 22 décembre 2011 2 ift287

2. manipulation de bases de données orientées objets de créer, de modifier et d interroger une base de données orientée objets; d utiliser une base de données orientée objets; de développer une application simple, dans un langage de programmation orienté objets, exploitant une base de données orientée objets, en utilisant les patrons de conception présentés. 3. interface de créer une description de fichier XML; de créer et d interroger un fichier XML à partir d une application; de développer une interface graphique web simple pour une application. 1.4 Contenu détaillé Thème Contenu Heures Chapitre Travaux 1 Rappel sur SQL (au besoin) 3 1 1 Introduction à Java : 3 1 tp1 Différences avec C++, types primitifs, vecteurs, classes, visibilité, exception, représentation des classes en UML 2 L approche client-serveur avec JDBC et Java : 12 9, 25.6, notes tp2, tp3 Connexion, Statement, PreparedStatement, ResultSet, transaction, étude d une architecture OO d une application, gestion des dates et heures 3 Les bases de données orientées objet : 9 20, 21, notes tp4 Modélisation OO des données, BD OO, persistance, persistance transitive, postprocesseur, Collection, Set, List, Map, Iterator, Query, survol des complexités algorithmiques des collections, brève introduction au polymorphisme avec le tri, étude d une architecture d une application 4 XML 6 27, notes tp5 Introduction au langage (balise, element, attribut), DTD, XML schema, SAXP, DOM, JAXB 5 Interface web 6 notes tp6 HTML, JSP, Servlet, Application, Session, Request, Traitement de la concurrence 6 Conclusion 2 Organisation 2.1 Méthode pédagogique Une semaine comprend 4 heures de présence en classe: 3 heures de cours dit théorique constituées d un exposé magistral et une heure d exercices. La séance d exercices aura lieu soit en laboratoire, soit en classe, en fonction du sujet à voir. Les étudiants doivent lire les chapitres du livre ou les notes avant le cours. Les étudiants travaillent en équipe de 2 (premier travail) à 4 (travaux suivants); Le cours comporte 6 travaux pratiques. Les travaux seront remis électroniquement le vendredi à 16h. 22 décembre 2011 3 ift287

2.2 Calendrier du cours semaine au remise tps du lundi vendredi Sujet vendredi 16h 2012-01-09 2012-01-13 Introduction à Java & Revue de SQL 2012-01-16 2012-01-20 Introduction à Java & Revue de SQL tp1 java 2012-01-23 2012-01-27 Client-serveur and Java et JDBC 2012-01-30 2012-02-03 Client-serveur and Java et JDBC tp2 jdbc-1 2012-02-06 2012-02-10 Client-serveur and Java et JDBC 2012-02-13 2012-02-17 BD OO tp3 jdbc-2 2012-02-20 2012-02-24 intra 2012-02-27 2012-03-02 BD OO 2012-03-05 2012-03-09 relâche 2012-03-12 2012-03-16 XML tp4 OS 2012-03-19 2012-03-23 XML 2012-03-26 2012-03-30 interface web avec JSP-Servlet tp5 XML 2012-04-02 2012-04-06 interface web avec JSP-Servlet 2012-04-09 2012-04-13 révision / finalisation en classe du tp6 tp6 servlet 2012-04-16 2012-04-20 final 2012-04-23 2012-04-27 final 2.3 Évaluation travaux pratiques 30 % examen intra 30 % examen final 40 % 2.3.1 Pénalité pour retard Les travaux pratiques remis en retard sont sujets à une pénalité. Les travaux seront remis électroniquement. La note sera réduite de 33% pour chaque tranche de 24h de retard. En conséquence, la note attribuée après 2 jours de retard est zéro. Si votre travail n est pas terminé à temps, vous devrez le soumettre par courrier électronique à l adresse marc.frappier@usherbrooke.ca sous format d un fichier.zip contenant tous les fichiers à soumettre en respectant la structure de répertoire déterminée dans l énoncé du travail. 2.3.2 Votre programme doit fonctionner Pour qu un travail pratique soit comptabilisé, le programme doit réussir les tests utilisés pour la correction. Après la remise d un travail, le fichier de test utilisé pour la correction sera publié sur le site web du cours ainsi que les résultats attendus (au besoin). L étudiant aura alors deux semaines pour corriger son programme afin qu il réussisse les tests en faisant une démonstration auprès d un correcteur lors d une séance d exercices ou sur rendez-vous. La note attribuée sera celle déterminée sur le programme soumis (et non pas sur la version corrigée). 2.3.3 Soumission des travaux Il est de votre responsabilité de débuter votre travail le plus tôt possible et de pouvoir le soumettre électroniquement avant l heure d échéance pour la soumission du travail. L incapacité de trouver un poste de travail ou de se connecter à distance quelques minutes avant l heure d échéance ne sont pas des raisons valables pour justifier un retard. 22 décembre 2011 4 ift287

2.3.4 Logiciels utilisés pour la correction Les travaux soumis seront corrigés avec les logiciels du DI fournis dans une machine virtuelle Linux (Java, Postgres, ObjectStore, Tomcat, XML). Il est de votre responsabilité de vous assurer que vos travaux fonctionnent sous cette architecture. 3 Références Matériel obligatoire [1] R. Elmasri and S.B. Navathe. Fundamentals of Database Systems. Addison-Wesley, 4e, 5e ou 6e edition. [2] Benoit Fraikin. Connexion par SSH et la soumission par turnin, 2005. http ://www.dmi.usherb.ca/ fraikin/cours/ssh-turnin/ [3] Marc Frappier. Norme de documentation des programmes, 2004. http ://www.dmi.usherb.ca/ frappier/normes/norme-programmation.pdf [4] Marc Frappier. IFT287 : notes de cours, 2011. http ://www.dmi.usherb.ca/ frappier/ift287/notes-de-cours.pdf Bibliographie [1] S. Abiteboul, R. Hull, and V. Vianu. Fondements des bases de données. Vuibert, 2000. [2] H. Bergsten. JavaServer Pages, 3e édition. O Reilly & Associates, 2003. [3] F. Berqué, S. Frezefond, and L. Sorriaux. Java/XML et Oracle : e-commerce, EAI, portails d entreprise, applications mobiles. Eyrolles, 2001. [4] C. Cavaness. Programming Jakarta Struts. O Reilly, 2004. [5] C. date. Introduction aux bases de données, 6e édition. Vuibert, 1998. [6] S.W. Dietrich and S. D. Urban. An Advanced Course in Database Systems : Beyond Relational Databases. Prentice Hall, 2005. [7] R. Fleury, C. Vasson, F. Baudequin, and G. Thomas. Java/XML. Eyrolles, 2005. [8] G. Gardarin. Bases de données objet & relationnel. Eyrolles, 1999. [9] M. Hall and L. Brown. Core Servlets and JavaServer Pages. Prentice Hall, 2003. [10] Cay Horstman. Big Java, 3e édition. John Wiley, 2008. [11] Cay Horstman. Java Concepts, 5e édition. John Wiley, 2008. [12] G. Reese. JDBC et Java : guide du programmeur. O Reilly & Associates, 2001. [13] G. Ricardi. Principles of Database Systems with Internet and Java Applications. Addison-Wesley, 2001. [14] A. Silberschatz, H. Korth, and S. Sudarshan. Database Systems Concepts, 3e édition. McGraw-Hill, 1997. [15] J.D. Ullman. Principles of Database and Knowledge-Base Systems, volume I. Computer science Press, 1988. [16] J.D. Ullman. Principles of Database and Knowledge-Base Systems, volume II. Computer science Press, 1989. [17] J.D. Ullman and J. Widow. A First Course in Database Systems. Prenctice-Hall, 1994. 22 décembre 2011 5 ift287