PROJET M1 SIGE (Inscription automatique au C2i) DOCUMENT D ANALYSE. Laurent BRIDELANCE Nicolas CAZIN Nicolas DOROTTE

Dimension: px
Commencer à balayer dès la page:

Download "PROJET M1 SIGE 2005-2006 (Inscription automatique au C2i) DOCUMENT D ANALYSE. Laurent BRIDELANCE Nicolas CAZIN Nicolas DOROTTE"

Transcription

1 PROJET M1 SIGE (Inscription automatique au C2i) DOCUMENT D ANALYSE Laurent BRIDELANCE Nicolas CAZIN Nicolas DOROTTE

2 2 Table des matières 1 Analyse Présentation du problème Environnement Contraintes Choix des technologies et outils Technologies Outils Modèle à 3 couches Conception et Modélisation Cas d utilisation Point de vue Etudiant (Figure 3) Point de vue Correspondant UFR (Figure 4) Point de vue Administrateur (Figure 5) Diagrammes d activité Diagrammes de classes Diagramme préliminaire (Figure 10) Diagramme final (Figures 11 et 12) Diagrammes entité/association Diagramme préliminaire Diagramme final Implémentation Base de données Passage du schéma conceptuel à la création de la base Gestion des droits Procédures stockées Sauvegarde/Restauration Noyau c2i mail db daemons utils Interface Web Plan du site Gestion des requêtes Gestion de session

3 Connexion sécurisée Tests et Intégration du système Tests Organisation Tests des guides utilisateurs et d installation Performance du système Corrections et mises au point Driver JDBC Utilitaires Déploiement Limitations - Evolutions Interface Serveur Web Base de données Noyau Project management Development platform Development platform Security Problems Communication Meetings Mails, IM Wiki Tasks distribution and Gantt chart Analysis and modelling Implementation Documentation and tests Encountered difficulties A Appendix 51 B References 65 B.1 Bases de données B.2 J2EE B.3 J2SE B.4 Méthodologie UML

4 Analyse 4 1 Analyse 1.1 Présentation du problème Il s agit de concevoir et d écrire une application web permettant l inscription en ligne d étudiants à l examen du C2I et la gestion des horaires des sessions d examens auxquels ils s inscriront Environnement L environnement dans lequel va fonctionner notre application est le réseau local de l université de Cergy-Pontoise et par extension, l Internet. Plus exactement, l application va être hébergée sur un serveur HTTP. Nous verrons plus loin que le choix des technologies utilisées pour le développement va nous amener à modifier de façon mineure cet environnement, en particulier, le côté serveur Contraintes 1. Réutilisabilité La principale contrainte à respecter est celle de réutilisabilité. En effet, il est stipulé dans le cahier des charges que le système développé sera maintenu par des développeurs internes à l UCP les années suivantes. On veillera donc à utiliser des noms de variables pertinents, commenter abondamment le code, rédiger des documents et manuels propres et fonctionnels. Il est également important de concevoir de manière ouverte cette application et de ne pas faire d hypothèses simplificatrices concernant son l utilisation future. 2. Modularité Ce projet est à réaliser en groupe. Il est donc évident qu une structure modulaire est plus appropriée. De plus, une telle structure permet une maintenance aisée et facilite grandement la réutilisation. 3. Généricité L application doit être utilisable par n importe quel navigateur web. Ceci implique certains choix concernant les technologies utilisées et ne permet aucune hypothèse côté client. Nous considérerons le plus petit diviseur commun de ce que peut être un client web, à savoir un terminal léger minimaliste (faible résolution, peu de mémoire, peu de puissance de calcul et faible débit de transmission de données). La seule hypothèse que nous ferons est celle concernant le support de SSL par le navigateur (cf. HTTPS) qui n en est pas vraiment une étant donné que la très grande majorité des navigateurs supportent SSL (même les anciennes version).

5 Analyse Choix des technologies et outils Technologies 1. Servlets JAVA L utilisation d un langage objet s est imposée tout naturellement. La preuve de l utilité et de l efficacité de la conception objet n est plus à faire. L interface de notre logiciel se devant d être une interface web, nous nous sommes tournés vers JAVA et ses classes utilisables rapidement. Nous aurions pu utiliser des Applets, mais ce choix trop coûteux et lourd pour une application aussi simple a vite été rejeté. D une manière plus pragmatique, les Applets nécessitent l installation d un environnement JAVA sur chaque poste client. Ce qui est en contradiction avec la contrainte selon laquelle l application doit être accessible à partir de n importe quel navigateur. Les Servlets JAVA et JSP nous permettent toute la flexibilité et l efficacité dont nous avons besoin. Tant au niveau de l écriture des classes que de celle des pages web de l interface. La navigation est alors transparente, tout se passe comme si la page visitée était une page ordinaire. Les CGI quant à eux, malgré le fait qu ils permettent d utiliser divers langages de programmation, possèdent toutefois certains désavantages par rapport aux Servlets : on retiendra le fait qu un CGI est exécuté à chaque requête et que les CGI ne permettent pas les optimisations mises en œuvre par les Servlets : Mettre en cache des calculs précédents, garder une connexion avec une base de donnée ouverte. Notons qu il est également possible de partager des données entre Servlets. Un dernier point : l exécution d un Servlet JAVA se fait à l intérieur d une SANDBOX. Lorsqu un Servlet ou un Applet exécute une opération potentiellement dangereuse, l environnement demande au gestionnaire de sécurité l autorisation d exécuter son code. Si le code n est pas en adéquation avec la politique de sécurité de l environnement, l accès aux ressources systèmes n est plus autorisé. 2. Base de données et JDBC Il est fondamental pour une telle application de pouvoir assurer d une part la pérennité des données et d autre part l efficacité du traitement de ces dernières. Il est en effet impensable qu une inscription validée se retrouve erronée ou que les performances de l application s effondrent à cause du nombre d inscrits. L utilisation des pilotes JDBC se justifie quant à elle par le fait que la base de donnée installée sur le serveur n est pas définie. Les requêtes sont donc exécutées de manière standard, via le driver JDBC installé sur le système. Si la base de donnée venait à changer pour une raison ou pour une autre, seule la base de donnée serait à configurer. Aucune modification de l application ne serait nécessaire. De cette manière, les contraintes de réutilisabilité et de modularité sont respectées. Il est important de noter que la persistence des données peut être gérée d une manière bien différente. Avec les EJB, il est possible d implementer des classes JAVA et de faire en sorte que l accès à la base de données sous-jacente se fasse de manière transparente. En interne, les attributs de la classe sont mis en correspondance avec des attributs d une table de base de données. Dès lors qu une modification est opérée sur la classe, elle est répercutée sur la base de données. Bien qu à priori élégante, cette solution à deux inconveneant majeurs : l extrême lourdeur de la mise en oeuvre

6 Analyse 6 L utilisation des EJB nécessite d installer un service de plus (JONAS pour n en citer qu un), 4 fichiers supplémentaires par classe (2 fichiers JAVA, 2 fichiers XML) les performances Du fait de l utilisation d un service supplémentaire, les performances se voient déjà diminuées. Vient à s ajouter à cela la mise à jour instantanée de la base de données. Si pour une utilisation simple ceci encore acceptable, il est en revanche hors de question d utiliser des méthodes de mise à jour de manière intensive. Utiliser exclusivement des classes impose de traiter toutes les données au sein même de ces classes, dans les méthodes (services proposés à l interface utilisateur). Nous verrons plus loin qu il existe une autre alternative bien plus performante, taillée sur mesure et pas forcement moins élégante ou générique (notamment grâce à JDBC, le mécanisme d héritage de JAVA et les procédures stockées SQL). On se reportera à la section implementation. Un dernier choix que nous avons examiné puis rejeté est celui d utiliser ZOPE. Ce serveur est en fait un serveur d applications, capable évidemment de fonctionner avec des pages statiques et des bases de données relationnelles, mais aussi avec des bases de données objet. Chaque objet est stocké directement dans la base interne de ZOPE et les pages se programment d un façon peu commune. Cette technologie repose sur le langage PYTHON et nécessite donc un certain temps voir un temps certain de prise en main. Étant donné que nous n avons absolument aucune experience de programmation, encore moins de debugging sous PYTHON et que le temps imparti est limité, nous avons rejeté cette solution. 3. HTTPS Les données traitées sont à caractère personnel. Il est donc nécessaire de sécuriser l accès aux données. HTTPS permet de créer un canal sécurisé entre le client et le serveur. L utilisation de HTTPS est transparente. Toutes les requêtes sont traitées comme des requêtes ordinaires alors que les données transmises sont chiffrées grâce à un système de clefs. De plus, HTTPS est supporté par la grande majorité des serveurs HTTP. L utilisation de ce protocole reste en accord avec la contrainte de modularité. Les pages web et les Servlets sont ainsi développées indépendamment de la sécurisation des données. Bien que sécurisé, le protocole HTTPS est tout de même vulnérable aux attaques du type Man in the Middle : Ce genre d attaque est connu depuis un certain nombre d années et il existe bien Fig. 1 Schéma de l attaque Man in the middle

7 Analyse 7 évidemment un moyen de contourner ce genre d attaque. Grâce au SSL, le serveur Web est authentifié via un certificat X509 (l équivalent d une identité numérique). Ce certificat est signé par une autorité de certification (Certification Authority ou CA) reconnue internationalement et surtout par les navigateurs. Ainsi lorsqu un certificat n est pas conforme ou signé par une CA connue, le navigateur émet une alerte. 4. UML L intérêt d un tel formalisme est tout d abord de concevoir une application sans se soucier des détails d implémentation inhérents au langage de programmation utilisé. UML permet aussi de décrire avec beaucoup de pertinence une application, aussi bien aux programmeurs, concepteurs et utilisateurs, ce qui est assez rare et très utile. UML va donc nous permettre de nous concentrer sur la conception de notre application, tout en allant à l essentiel concernant sa documentation. D un point de vue plus pratique, UML va nous permettre de créer des diagrammes : bullet de cas d utilisation pour structurer les besoins des utilisateurs et les objectifs correspondant du système bullet d activité pour représenter graphiquement le comportement d une méthode ou d un cas d utilisation. (variante des états transition) bullet de déploiement pour présenter l architecture technique retenue. bullet de classes pour passer facilement à l implémentation avec un langage objet. De plus, le diagramme UML complet devant figurer dans la documentation, il est d autant plus judicieux de s appuyer sur UML pour concevoir notre application Outils 1. NetBeans En plus d être un IDE moderne et libre, NetBeans permet d implémenter, documenter du code JAVA avec une grande aisance ainsi que de tester des Servlets sans configurer explicitement un serveur HTTP adapté. Aussi, NetBeans propose un système de greffons (plugins), qui permettent entre autre de générer certaines parties de code à partir de diagrammes UML (squelettes des classes). 2. Visual Paradigm Ce logiciel qui se présente aussi sous la forme d un plugin de NetBeans, permet de Créer des diagrammes UML, de transformer du code JAVA en diagramme UML et inversement. Ceci nous permet de nous concentrer sur la conception du logiciel et de ne pas s attarder sur des interminables déclarations de classes et de variables. Ceci ne change en rien l écriture des méthodes en général, si ce n est le fait que tous les cas d utilisation sont prévus et gérés. Ce genre d outil présente un intérêt indéniable pour la conception et la réalisation de logiciels robustes. 3. Ant Ant est un outil qui permet de compiler du code source de manière efficace en gérant les dépendances vis à vis des fichier entre eux et ne recompilant que si nécessaire. C est un outil à la Make, basé sur JAVA, avec un certain nombre d inconveneants en moins. Pour n en citer qu un, les extensions de Make se font via le shell, qui est lui même dependant du système hôte. Ant quant à lui s étend grâce aux classes JAVA qui sont portables par définition. Un autre avantage est la souplesse dont fait preuve le parser de fichiers de configuration à l égard des fichiers :

8 Analyse 8 ceux de Ant sont Basés sur XML, ce qui implique la souplesse d utilisation liée à XML ainsi que l absence d apprentissage d un nouveau format de fichier. Enfin, Ant est intégré à NetBeans ce qui nous confère une utilisation efficace et unifiée de l IDE que nous avons choisi. Nous nous servirons donc de Ant pour écrire des scripts de déploiement de notre application. 4. JMeter JMeter est un outil JAVA de tests de montées en charge bien connu et éprouvé depuis plusieurs années (1998). Afin de prouver que nos choix technologiques sont pertinents et que notre application est parfaitement utilisable dans un cas réel, nous avons utilisé JMeter pour simuler différents types d utilisations avec plusieurs utilisateurs qui sont autant de Threads (processus légers) 5. JCrontab JCrontab est ni plus ni moins une version webapp du célèbre daemon UNIX : CRON. Il fonctionne exactement de la même manière, à la difference prêt que le contexte d execution est le conteneur de Servlet Tomcat. JCrontab est donc une application web au même titre que la notre. Elle nous permet d executer des tâches périodiques (maintenance ou avertissements par mail) et ceci quelque soit le système sur lequel est déployée notre application. 1.3 Modèle à 3 couches Suite à la lecture du sujet, 3 grandes parties se sont dégagées. Une première partie faisant office d interface entre l utilisateur et le système. Le sujet spécifie que l application doit être accessible depuis un navigateur internet, nous avons décidé de monter un site web remplissant cette fonction. La deuxième partie regroupe le stockage et l accès aux informations du système. La solution la plus efficace et rapide pour ce type de traitement est la mise en place d une base de données. Enfin, il nous fallait un moyen d encapsuler les requêtes transitant entre le serveur web et la base de données, nous avons donc développer une API servant d interface entre ces deux entités. Le diagramme suivant résume ce modèle à 3 couches : A partir de là,la répartition des tâches devient évidente. Chaque niveau n accédant à un autre que par le biais d une interface, nous avons décider d implémenter un niveau par personne. Remarque : nous n avons utilisé qu une seule machine pour notre système, regroupant le serveur web et le serveur de base de données, mais on voit bien que ces deux entités sont indépendantes et peuvent très bien être déployées sur des machines différentes (pour faciliter la maintenance ou minimiser les inconvénients en cas de panne par exemple).

9 Conception et Modélisation 9 Fig. 2 Modèle à 3 couches 2 Conception et Modélisation Nous avons vu plus haut que nous avons choisi UML lors de la phase de conception. C est donc tout naturellement que nous allons présenter ici notre conception sous forme de diagrammes qui sont autant de vues différentes du problème. Nous avons utilisé une démarche que l on pourrait qualifier de hiérarchique. Nous allons vous en présenter les couches successives. 2.1 Cas d utilisation Après plusieurs lectures attentives de l énoncé, la première étape de conception à été de définir clairement et définitivement les besoins des utilisateurs et les relations d interdépendances entre fonctionnalités. C est ici qu interviennent les diagrammes de cas d utilisation (Use case). Dans le soucis d une meilleure lisibilité, le diagramme d utilisation à été découpé en trois parties (un diagramme par rôle d utilisateur). Ils ne sont volontairement pas exhaustif, le but étant d avoir une idée claire du problème et non une implémentation directe Point de vue Etudiant (Figure 3) Point de vue Correspondant UFR (Figure 4) Point de vue Administrateur (Figure 5)

10 Conception et Modélisation 10 Fig. 3 Cas d utilisation pour l étudiant

11 Conception et Modélisation 11 Fig. 4 Cas d utilisation pour le correspondant

12 Conception et Modélisation 12 Fig. 5 Cas d utilisation pour l administrateur

13 Conception et Modélisation 13 On voit déjà apparaître une certaine structure redondante en observant ces diagrammes : 1 acteur 1 système d inscription 1 base de données Détaillons maintenant quelques unes de ces activités et tentons de dégager les concepts importants. 2.2 Diagrammes d activité Nous allons détailler certains cas d utilisation vus plus haut afin de faire ressortir les informations pertinentes pour la suite de la modélisation et de la conception. Certaines de ces activités pourront servir de base à l implémentation des méthodes mais ne constituent en aucun cas une implémentation complète. L implémentation sera en effet par moment différente pour mieux utiliser les spécificités des technologies que nous utilisons. Remarque : Tous les diagrammes d activité ne sont pas présentés ici afin d éviter de prendre de la place inutilement. Pour plus de détails reportez vous à l annexe. Seuls les activités principales sont représentées ici. On classe les activités par type d utilisateur du système : 1. Administrateur (a) Déléguer les droits Voir Figure 7 (b) Définir étendue créneau (c) Déterminer une date 2. Correspondant (a) Définir créneau Voir Figure 8 (b) Envoyer relance (c) Supprimer créneau (d) Vérifier candidats (e) Consulter Date 3. Etudiant (a) Créer compte candidat Voir Figure 9 (b) Modifier mot de passe 4. Mailer Daemon (a) Envoyer mail périodique 5. Système (a) Session (b) Requête (c) Envoyer un mail

14 Conception et Modélisation 14 Fig. 6 Diagramme d activité : Envoi mail périodique

15 Conception et Modélisation 15 Fig. 7 Diagramme d activité : déléguer les droits

16 Conception et Modélisation 16 Fig. 8 Diagramme d activité : définir créneau

17 Conception et Modélisation 17 Fig. 9 Diagramme d activité : créer compte candidat

18 Conception et Modélisation 18 Clairement, à la vue de la structure des couloirs d activités et des activités utilisées de manière répétitive, on note déjà le besoin d un système qui fait usage de formulaires pour transmettre la saisie utilisateur au système, d une base de données pour stocker de manière pérenne et sûre les informations gérées par le système, et de mails pour notifier les utilisateurs des changements. Ce qui est cohérent avec nos choix technologiques. 2.3 Diagrammes de classes Nous allons maintenant voir la modélisation en diagramme de classe de notre application. Nous ne présenterons ici que la partie principale du noyau, à savoir le package c2i, pour les autres packages, veuillez vous referrer à l annexe. Nous verrons deux versions de ce diagramme. La première version ayant été réalisée après lecture de l énoncé, pendant la phase de modélisation. La seconde reflétant l état du package à la fin du développement Diagramme préliminaire (Figure 10) Fig. 10 Diagramme préliminaire

19 Conception et Modélisation 19 Le diagramme préliminaire comme on peut le voir est composé des principales ressources utilisées dans le système c est-à-dire : User, Student, Correspondent, Admin, Site, Classroom, Timeslot. Cela représente en fait une quasi-relation de un vers un avec la base de donnée. En effet, chaque entité du diagramme est un accès vers une table dans la base de donnée. Celles-ci sont composées principalement d accesseurs get et set vers un attribut de la table correspondante. De plus, leur contenu est implémenté à l aide de requête SQL. On note aussi d autres méthodes importantes telles que createtimeslot, logon,... qui correspondent elles à l implémentation des fonctions que doit réaliser notre système. Ce diagramme représente donc l objectif idyllique final que l on souhaite atteindre mais évidemment il ne tient pas compte de la réalité de l implémentation. C est ce que corrige le version final du diagramme suivant Diagramme final (Figures 11 et 12) Le diagramme final comme nous le disions auparavant tient compte lui de la réalité de l implémentation. Ceci se traduit tout d abord par le fait que la plupart des accesseurs set ont disparu puisqu ils n étaient pas utilisés. La classe Reminder a fait son apparition, elle gère le système d envoi de mail lorsqu une notification a lieu d être par exemple à la suite de la suppression d un créneau. Les classes Site, Classroom et Timeslot en dérivent. On a aussi un changement majeur : la classe Admin dérive de Correspondent car nous nous sommes aperçu qu un administrateur est aussi un correspondant du système. Pour conclure, le diagramme de classes final emploie pratiquement les mêmes entités et relations que le premier hormis deux changements, mais la plus grosse différence provient du contenu des classes qui a changé pour tenir compte des nouvelles fonctionnalités ajoutées au système.

20 Conception et Modélisation 20 Fig. 11 Package c2i (première partie)

21 Conception et Modélisation 21 Fig. 12 Package c2i (deuxième partie) 2.4 Diagrammes entité/association Cette partie présente la première phase de la conception de la base de donnée. Deux diagrammes sont présentés : Un diagramme préliminaire qui représente le premier schéma stable qui a été proposé. Un diagramme final qui tient compte des modifications qui ont été nécessaires pour l implémentation.

22 Conception et Modélisation Diagramme préliminaire Fig. 13 Diagramme ER Initial

23 Conception et Modélisation Diagramme final Fig. 14 Diagramme ER Final

24 Implémentation 24 3 Implémentation Après avoir modélisé notre système, il nous reste maintenant à l implémenter. Notre application étant divisée en 3 niveaux, nous allons voir 3 grandes parties expliquant ces différents niveaux, où chacun d entre nous expliquera le travail qu il a fourni. 3.1 Base de données Dans cette partie, nous allons introduire la mise en place de la base de données. Comme précédemment exposé, le choix s est porté sur une base PostgreSQL plutôt que MySQL car cette dernière ne supporte pas certaines caractéristiques intéressantes telles que les vues ou le support total des contraintes (clause CHECK). De plus PostgreSQL est très proche de la norme ANSI SQL, ce qui n est pas le cas de MySQL. En ce qui concerne les transactions, PostgreSQL les intègre automatiquement sur toutes les tables alors que dans MySQL celles-ci doivent être déclarées en innodb. De plus PostgreSQL supporte depuis longtemps les procédures stockées, alors que cette caractéristique vient juste d être implémentées dans MySQL et donc nous ne possèdons pas du recul suffisant. C est donc tout naturellement que le choix s est porté sur PostgreSQL Passage du schéma conceptuel à la création de la base La première étape du travail est de passer du schéma entité-relation à la création de la base de données. Un ensemble d utilitaires est fourni avec la distribution de PostgreSQL. En l occurrence une application createdb permet de concevoir la base facilement. Une fois ceci fait un script dbcreate.sql a été conçu à partir du modèle ER présenté plus haut. Maintenant, il s agit d envoyer ce script vers la base. Cela se fait simplement en utilisant la commande client psql de cette manière : psql nom de base -f nom du script A présent, nous possédons les outils pour concevoir physiquement notre base de données. Expliquons maintenant comme passer du schéma à un ensemble de commandes SQL : Chaque entité dans le modèle ER est convertie en une table dans la base de données à l aide de la commande SQL : CREATE TABLE nom entité ( liste attributs ) ; où liste attributs représente les attributs de l entité avec leurs types et d éventuelles contraintes.

25 Implémentation 25 Exemple : Création de la table USER C2I CREATE TABLE USER_C2I ( login VARCHAR(16) NOT NULL PRIMARY KEY, password VARCHAR(255) NOT NULL, VARCHAR(255) NOT NULL CHECK( LIKE ), rights CHAR(1) NOT NULL, logged BOOL NOT NULL DEFAULT FALSE, is_validated BOOLEAN NOT NULL DEFAULT FALSE, CHECK (rights IN ( A, S, C, 0 )) ); Sur cet exemple, on peut noter l emploi d un certain nombre de contraintes : Contrainte de domaine : Réaliser à l aide de CHECK pour vérifier si une valeur est bien dans un ensemble. Contrainte de non-nullité : Réaliser à l aide de NOT NULL. Cet attribut a toujours une valeur. Contrainte unicité de clé : Ici réaliser par la clé primaire login. On ne peut avoir deux utilisateurs avec le même login. Les relations sont traduites à l aide de tables dans la base de données. Ces tables contiennent des clés étrangères vers les entités qu elles relient, plus des attributs si nécessaire. Example : Relation USER IS STUDENT CREATE TABLE USER_IS_STUDENT ( nip VARCHAR(8) NOT NULL, login VARCHAR(16) NOT NULL, FOREIGN KEY (nip) REFERENCES STUDENT(nip) ON DELETE CASCADE, FOREIGN KEY (login) REFERENCES USER_C2I(login) ON DELETE CASCADE, UNIQUE(nip), UNIQUE(login) ); Ainsi cette relation lie les entités STUDENT et USER C2I. On ajoute donc deux clés étrangères qui pointent vers les clés primaires de chacune de ces deux tables. De plus, pour avoir l unicité de la relation on ajoute aussi deux contraintes de dépendances fonctionnelles sur les attributs nip et login Gestion des droits Création des utilisateurs Un travail important a été fourni sur la gestion des droits d accès à la base de données. Dans un premier temps quatre utilisateurs sont crées : user c2i, student, admin, correspondent. En effet, quand un utilisateur se connecte sur le site et qu il rentre son login/password,

26 Implémentation 26 le compte user c2i est utilisé pour vérifier l exactitude du compte. Ensuite s il s agit d un étudiant le compte student sera utilisé, de la même manière pour admin et correspondent. Cette méthode nous a permis de limiter les droits d accès à la base de données et éviter d éventuels piratages de la base de données. En effet, un compte student n a pas les mêmes privilèges * qu un compte admin. Pour créer un utilisateur, on utilise la commande suivante : CREATE USER nom utilisateur WITH PASSWORD mot de passe ; Attribution des droits Présentons les principaux type de droits : SELECT : Permet de faire des lectures sur des tables. INSERT : Permet de faire des ajouts de lignes dans une table. UPDATE : Permet de faire des modifications de lignes dans une table. DELETE : Permet de faire des suppressions de lignes dans une table. Pour mettre des droits à un utilisateur, on utilise la commande suivante : GRANT droits ON nom table TO nom utilisateur ; Procédures stockées Dans un premier temps, nous avons développé un certain nombre de fonctions dans le noyau. Mais au fil du temps, celle-ci se sont avérées compliquées à écrire et surtout de multiples requêtes étaient effectuées. Ce dernier point ralentissait considérablement le fonctionnement du système. Pour introduire le language à utiliser dans la base de données la commande createlang est utilisé : createlang plpgsql nom de base Ainsi, nous avons décidé d utiliser pleinement les fonctionnalités du SGBDR et de transposer les fonctions en procédures SQL dans le language pl/pgsql. Ce dernier n est autre qu un language composé des requêtes standards SELECT, IN- SERT, etc... augmenté des notions de variables, tests, et boucles. Du coté noyau, on appelle simplement la procédure qui fait le même travail mais coté base de données. D où un gain de performance énorme. Exemple : La procédure Logon /* This function is the base of the login system. It takes two parameters login and password. It returns a character which represents the rights of the user or # if the user is already connected */ CREATE OR REPLACE FUNCTION logon(varchar(16), VARCHAR(255)) RETURNS CHAR(1) AS $BODY$ DECLARE

Rapport Gestion de projet

Rapport Gestion de projet IN56 Printemps 2008 Rapport Gestion de projet Binôme : Alexandre HAFFNER Nicolas MONNERET Enseignant : Nathanaël COTTIN Sommaire Description du projet... 2 Fonctionnalités... 2 Navigation... 4 Description

Plus en détail

Mise en œuvre des serveurs d application

Mise en œuvre des serveurs d application Nancy-Université Mise en œuvre des serveurs d application UE 203d Master 1 IST-IE Printemps 2008 Master 1 IST-IE : Mise en œuvre des serveurs d application 1/54 Ces transparents, ainsi que les énoncés

Plus en détail

Les formations. Développeur Logiciel. ENI Ecole Informatique

Les formations. Développeur Logiciel. ENI Ecole Informatique page 1/5 Titre professionnel : Reconnu par l Etat de niveau III (Bac), inscrit au RNCP (arrêté du 12/10/07, J.O. n 246 du 23/10/07) (32 semaines) Unité 1 : Structurer une application 6 semaines Module

Plus en détail

Les formations. Développeur Logiciel. ENI Ecole Informatique

Les formations. Développeur Logiciel. ENI Ecole Informatique page 1/8 Titre professionnel : Inscrit au RNCP de Niveau III (Bac + 2) (J.O. du 19/02/13) 24 semaines + 8 semaines de stage (uniquement en formation continue) Développer une application orientée objet

Plus en détail

NFP111 Systèmes et Applications Réparties

NFP111 Systèmes et Applications Réparties NFP111 Systèmes et Applications Réparties 1 de 38 NFP111 Systèmes et Applications Réparties Cours 11 - Les Enterprise Java Beans (Introduction aux Enterprise Claude Duvallet Université du Havre UFR Sciences

Plus en détail

BTS SIO. Session 2013 2015

BTS SIO. Session 2013 2015 BTS SIO Services Informatiques aux Organisations Session 2013 2015 Collé Maxime Année 2013-2014 Option : SLAM Activité professionnelle N 1 NATURE DE L'ACTIVITE : DÉVELOPPEMENT DE L APPLICATION WEB «GESTION

Plus en détail

Unité de formation 1 : Structurer une application. Durée : 3 semaines

Unité de formation 1 : Structurer une application. Durée : 3 semaines PROGRAMME «DEVELOPPEUR LOGICIEL» Titre professionnel : «Développeur Logiciel» Inscrit au RNCP de niveau III (Bac+2) (JO du 23 Octobre 2007) (32 semaines) Unité de formation 1 : Structurer une application

Plus en détail

Gestion d une école. FABRE Maxime FOUCHE Alexis LEPOT Florian

Gestion d une école. FABRE Maxime FOUCHE Alexis LEPOT Florian Gestion d une école FABRE Maxime 2015 Sommaire Introduction... 2 I. Présentation du projet... 3 1- Lancement de l application... 3 Fonctionnalités réalisées... 4 A. Le serveur... 4 1 - Le réseau... 4 2

Plus en détail

JAVA PROGRAMMATION. Programme. 1. Java, HTML et World Wide Web

JAVA PROGRAMMATION. Programme. 1. Java, HTML et World Wide Web PROGRAMMATION PUBLIC Professionnels informatiques qui souhaitent développer des applications et «applets» Java DUREE 4 jours 28 heures OBJECTIF Créer divers «applets» à intégrer dans un site Web dynamique,

Plus en détail

TP J2EE GUIDE DE DEPLOIEMENT DE L APPLICATION WEB DE GESTION DES COMPTES

TP J2EE GUIDE DE DEPLOIEMENT DE L APPLICATION WEB DE GESTION DES COMPTES 2008 UFR Ingénieurs 2000 Vivien Boistuaud Julien Herr TP J2EE GUIDE DE DEPLOIEMENT DE L APPLICATION WEB DE GESTION DES COMPTES Ce document a été réalisé par V. Boistuaud et J. Herr dans le cadre des travaux

Plus en détail

Rapport d Étude Pratique : Site Web pour conférence scientifique

Rapport d Étude Pratique : Site Web pour conférence scientifique Rapport d Étude Pratique : Site Web pour conférence scientifique Quentin Dufour, Thomas Hareau, Laurent Aymard, Jean Chorin Encadrant : Jean-François Dupuy 2015 Site Web de conférence scientifique 2 Résumé

Plus en détail

Chapitre 4 Les Servlets. 1. Qu'est-ce qu'une Servlet? 1.1 Présentation. 1.2 Requêtes HTTP

Chapitre 4 Les Servlets. 1. Qu'est-ce qu'une Servlet? 1.1 Présentation. 1.2 Requêtes HTTP 210 Les Servlets 1. Qu'est-ce qu'une Servlet? 1.1 Présentation Les Servlets sont la base de la programmation Java EE. La conception d'un site Web dynamique en Java repose sur ces éléments. Une Servlet

Plus en détail

Application web de gestion de comptes en banques

Application web de gestion de comptes en banques Application web de gestion de comptes en banques Objectif Réaliser une application Web permettant à un client de gérer ses comptes en banque Diagramme de cas d'utilisation 1 Les cas d'utilisation Connexion

Plus en détail

ADMIN SGBD TP 1. Préliminaires. Dictionnaire des données. Utilisateurs, vues et autorisations

ADMIN SGBD TP 1. Préliminaires. Dictionnaire des données. Utilisateurs, vues et autorisations ADMIN SGBD TP 1 Préliminaires L'objectif de ce TP est de: installer l environnement (PostgreSQL, base, tables), créer des utilisateurs, des vues, et de gérer les privilèges, créer des triggers, utiliser

Plus en détail

D une part, elles ne peuvent faire table rase de la richesse contenue dans leur système d information.

D une part, elles ne peuvent faire table rase de la richesse contenue dans leur système d information. PACBASE «Interrogez le passé, il répondra présent.». Le Module e-business Les entreprises doivent aujourd hui relever un triple défi. D une part, elles ne peuvent faire table rase de la richesse contenue

Plus en détail

Projet d Etude et de Développement

Projet d Etude et de Développement Projet d Etude et de Développement PokerServer Guide d installation Auteurs: Lucas Kerdoncuff Balla Seck Rafik Ferroukh Xan Lucu Youga MBaye Clients: David Bromberg Laurent Réveillère March 28, 2012 Contents

Plus en détail

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)

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) 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) Module 1 : Programmer une application informatique Durée

Plus en détail

Exécution des applications réparties

Exécution des applications réparties Exécution des applications réparties Programmation des Applications Réparties Olivier Flauzac URCA Master STIC-Informatique première année Olivier Flauzac (URCA) PAR : Exécution des applications réparties

Plus en détail

Les procédures stockées et les fonctions utilisateur

Les procédures stockées et les fonctions utilisateur Les procédures stockées et les fonctions utilisateur Z Grégory CASANOVA 2 Les procédures stockées et les fonctions utilisateur [08/07/09] Sommaire 1 Introduction... 3 2 Pré-requis... 4 3 Les procédures

Plus en détail

TP Projet Informatique : Persistance en Php et prise en main GIT / Atlassian

TP Projet Informatique : Persistance en Php et prise en main GIT / Atlassian TP Projet Informatique : Persistance en Php et prise en main GIT / Atlassian Objectif : faire un site pour gérer des articles par catégorie. Chaque catégorie a un nom, chaque catégorie est constitué d

Plus en détail

Génération de codes. à partir d un modèle UML sous PowerAMC. La génération de code, ça n est pas immédiat : processus en 3 étapes

Génération de codes. à partir d un modèle UML sous PowerAMC. La génération de code, ça n est pas immédiat : processus en 3 étapes Génération de codes à partir d un modèle UML sous PowerAMC Véronique Deslandres, IUT, Département Informatique Université de Lyon MàJ: 8/10/2013 Introduction La génération de code, ça n est pas immédiat

Plus en détail

RAPPORT DE CONCEPTION UML :

RAPPORT DE CONCEPTION UML : Carlo Abi Chahine Sylvain Archenault Yves Houpert Martine Wang RAPPORT DE CONCEPTION UML : Bamboo Ch@t Projet GM4 Juin 2006 Table des matières 1 Introduction 2 2 Présentation du logiciel 3 2.1 Précisions

Plus en détail

Les architectures N-tiers

Les architectures N-tiers Les architectures N-tiers 1 SOMMAIRE DU COURS XML ET LES ARCHITECTURES N-TIER Introduction aux architectures N-tier Serveurs d applications Déploiement d applications J2EE Tiers applicatif : servlets Tiers

Plus en détail

PHP/MYSQL. Web Dynamique

PHP/MYSQL. Web Dynamique PHP/MYSQL Web Dynamique ENSG Juin 2008 Qui suis-je? Guillaume Gautreau Responsable projets Systèmes d information à l ENPC guillaume@ghusse.com http://www.ghusse.com Ces 6 jours de formation Jour 1 : présentations,

Plus en détail

Exemple de rapport simplifié de Test de charge

Exemple de rapport simplifié de Test de charge syloe.fr http://www.syloe.fr/conseil/test de charge/exemple de rapport simplifie de test de charge/ Exemple de rapport simplifié de Test de charge Contexte du test de charge Un client nous soumet une problématique

Plus en détail

Cours Bases de données

Cours Bases de données Informations sur le cours Cours Bases de données 9 (10) séances de 3h Polycopié (Cours + TD/TP) 3 année (MISI) Antoine Cornuéjols www.lri.fr/~antoine antoine.cornuejols@agroparistech.fr Transparents Disponibles

Plus en détail

FileMaker 12. Guide ODBC et JDBC

FileMaker 12. Guide ODBC et JDBC FileMaker 12 Guide ODBC et JDBC 2004-2012 FileMaker, Inc. Tous droits réservés. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker et Bento sont des marques commerciales de

Plus en détail

IBM Lotus Domino Designer 6.5.1

IBM Lotus Domino Designer 6.5.1 Créez rapidement des applications multi-plateformes pour automatiser les processus métier et améliorer l efficacité de votre workflow IBM Lotus Domino Designer 6.5.1 Créez, testez et déployez rapidement

Plus en détail

Créer et partager des fichiers

Créer et partager des fichiers Créer et partager des fichiers Le rôle Services de fichiers... 246 Les autorisations de fichiers NTFS... 255 Recherche de comptes d utilisateurs et d ordinateurs dans Active Directory... 262 Délégation

Plus en détail

Travailler avec des données de type XML

Travailler avec des données de type XML Travailler avec des données de type XML Version 1.0 Z Grégory CASANOVA 2 Travailler avec des données de type XML 28/07/2009 Sommaire 1 Introduction... 3 2 Pré requis... 4 3 XML typé et non typé... 5 3.1

Plus en détail

Introduction pratique au Développement orienté Modèle Pierre Parrend, Mars 2005

Introduction pratique au Développement orienté Modèle Pierre Parrend, Mars 2005 MDA : Un Tutoriel Introduction pratique au Développement orienté Modèle Pierre Parrend, Mars 2005 1 Sommaire Table des matières 1 Sommaire 1 2 Introduction 2 2.1 A qui s adresse ce tutoriel......................

Plus en détail

Cahier de charges (Source : "Java EE - Guide de développement d'applications web en Java" par Jérôme Lafosse) Module. Site Web dynamique JSP / Servlet

Cahier de charges (Source : Java EE - Guide de développement d'applications web en Java par Jérôme Lafosse) Module. Site Web dynamique JSP / Servlet Cahier de charges (Source : "Java EE - Guide de développement d'applications web en Java" par Jérôme Lafosse) Module Site Web dynamique JSP / Servlet Sujet : betaboutique Soutenance le 04 / 01 /2013 &

Plus en détail

Formation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand Centrale Réseaux

Formation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand <jpountz@via.ecp.fr> Centrale Réseaux Formation Webase 5 Ses secrets, de l architecture MVC à l application Web Adrien Grand Centrale Réseaux Sommaire 1 Obtenir des informations sur Webase 5 2 Composants de Webase 5 Un

Plus en détail

DUT Informatique Module JAVA Apprentis Département Informatique 2008 / 2009. Travaux Pratiques n o 7 : RMI

DUT Informatique Module JAVA Apprentis Département Informatique 2008 / 2009. Travaux Pratiques n o 7 : RMI iut ORSAY DUT Informatique Département Informatique 2008 / 2009 Travaux Pratiques n o 7 : RMI Nom(s) : Groupe : Date : Objectifs : savoir créer des applications client-serveur mettant en jeu des machines

Plus en détail

Lot 1 - Migration du serveur de base de données

Lot 1 - Migration du serveur de base de données Situation Rectiline Lot 1 - Migration du serveur de base de données Table des matières Lot 1 - Migration du serveur de base de données...1 Mise à jour du système Debian 6 :...2 Installation de PostgreSQL:...5

Plus en détail

Types d applications pour la persistance. Outils de développement. Base de données préexistante? 3 modèles. Variantes avec passerelles

Types d applications pour la persistance. Outils de développement. Base de données préexistante? 3 modèles. Variantes avec passerelles Types d applications pour la persistance Université de Nice Sophia-Antipolis Version 0.9 28/8/07 Richard Grin Toutes les applications n ont pas une complexité qui nécessite une architecture n- tiers Ce

Plus en détail

Gestion du parc informatique matériel et logiciel de l Ensicaen. Rapport de projet. Spécialité Informatique 2 e année. SAKHI Taoufik SIFAOUI Mohammed

Gestion du parc informatique matériel et logiciel de l Ensicaen. Rapport de projet. Spécialité Informatique 2 e année. SAKHI Taoufik SIFAOUI Mohammed 6, bd maréchal Juin F-14050 Caen cedex 4 Spécialité Informatique 2 e année Rapport de projet Gestion du parc informatique matériel et logiciel de l Ensicaen SAKHI Taoufik SIFAOUI Mohammed Suivi ENSICAEN

Plus en détail

Java et Objet. Amélie Lambert 2014-2015. Amélie Lambert 2014-2015 1 / 42

Java et Objet. Amélie Lambert 2014-2015. Amélie Lambert 2014-2015 1 / 42 Java et Objet Amélie Lambert 2014-2015 Amélie Lambert 2014-2015 1 / 42 Chapitre 8 Développement d applications Web Amélie Lambert 2014-2015 2 / 42 Plan du cours Typologie des applications Web Architecture

Plus en détail

ETNA Projet de Fin d Étude 2005-2007 RimElse Cahier des charges. c Copyleft 2006, ELSE Team

ETNA Projet de Fin d Étude 2005-2007 RimElse Cahier des charges. c Copyleft 2006, ELSE Team ETNA Projet de Fin d Étude 2005-2007 RimElse Cahier des charges c Copyleft 2006, ELSE Team 18 avril 2006 Table des matières 1 Introduction 2 2 Présentation du projet 3 2.1 Une distribution Évolulable..................

Plus en détail

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.

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. ASTRIUM - Toulouse JEE Formation 2013 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. Figure 1 Architecture

Plus en détail

CREATION WEB DYNAMIQUE

CREATION WEB DYNAMIQUE CREATION WEB DYNAMIQUE IV ) MySQL IV-1 ) Introduction MYSQL dérive directement de SQL (Structured Query Language) qui est un langage de requêtes vers les bases de données relationnelles. Le serveur de

Plus en détail

Objectifs. Maîtriser. Pratiquer

Objectifs. Maîtriser. Pratiquer 1 Bases de Données Objectifs Maîtriser les concepts d un SGBD relationnel Les modèles de représentations de données Les modèles de représentations de données La conception d une base de données Pratiquer

Plus en détail

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

Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage Technologies du Web Créer et héberger un site Web Page 1 / 26 Plan Planification Choisir une solution d hébergement Administration Développement du site Page 2 / 26 Cahier des charges Objectifs du site

Plus en détail

Instructions d installation de IBM SPSS Modeler Server 15 pour Windows

Instructions d installation de IBM SPSS Modeler Server 15 pour Windows Instructions d installation de IBM SPSS Modeler Server 15 pour Windows IBM SPSS Modeler Server peut être installé et configuré de manière à s exécuter en mode d analyse réparti, avec une ou plusieurs installations

Plus en détail

Installation d'un serveur Forefront Threat Management Gateway 2010 (TMG 2010)

Installation d'un serveur Forefront Threat Management Gateway 2010 (TMG 2010) Installation d'un serveur Forefront Threat Management Gateway 2010 (TMG 2010) Par LoiselJP Le 01/05/2013 1 Objectifs Ce document décrit le plus succinctement possible une manière, parmi d'autres, d installer

Plus en détail

PROJET D INFORMATISATION DE LA GESTION DES ABSENCES EN STARTER

PROJET D INFORMATISATION DE LA GESTION DES ABSENCES EN STARTER Année 2008/2009 PROJET D INFORMATISATION DE LA GESTION DES ABSENCES EN STARTER Licence Professionnelle Système informatique et logiciel Responsable du projet : Françoise GREFFIER SOMMAIRE I. PRESENTATION

Plus en détail

Projet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e :

Projet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e : CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE Projet 2 Gestion des services enseignants G r o u p e : B E L G H I T Y a s m i n e S A N C H E Z - D U B R O N T Y u r i f e r M O N T A Z E R S i

Plus en détail

gcaddy Suite Description du produit

gcaddy Suite Description du produit gcaddy Suite Description du produit Version 1.0 www.gweb.be @ info@gweb.be TVA : BE-863.684.238 SNCI : 143-0617856-67 1 / 8 1 Description de gcaddy gcaddy est le module E-commerce de Gweb. Il se présente

Plus en détail

1 Introduction et installation

1 Introduction et installation TP d introduction aux bases de données 1 TP d introduction aux bases de données Le but de ce TP est d apprendre à manipuler des bases de données. Dans le cadre du programme d informatique pour tous, on

Plus en détail

Bypass et filtre sur les requêtes destinées à la servlet W4

Bypass et filtre sur les requêtes destinées à la servlet W4 Note technique W4 Engine Bypass et filtre sur les requêtes destinées à la servlet W4 Cette note technique décrit le filtre de contrôle du bypass de la servlet W4. Versions de W4 Engine concernées : 5.0

Plus en détail

Vulnérabilités et sécurisation des applications Web

Vulnérabilités et sécurisation des applications Web OSSIR 09/09/2002 Vulnérabilités, attaques et sécurisation des applications Web Pourquoi les firewalls sont impuissants patrick.chambet@edelweb.fr http://www.edelweb.fr http://www.chambet.com Page 1 Planning

Plus en détail

Apache Tomcat 8 Guide d'administration du serveur Java EE 7 sous Windows et Linux

Apache Tomcat 8 Guide d'administration du serveur Java EE 7 sous Windows et Linux Avant-propos 1. À qui s adresse ce livre? 11 2. Les pré-requis 12 Préambule 1. Rappel sur les architectures Internet/Intranet/Extranet 13 1.1 Le protocole HTTP 14 1.1.1 Les méthodes HTTP 16 1.1.2 Les codes

Plus en détail

Traitement et navigation

Traitement et navigation 12 Traitement et navigation Au chapitre précédent, nous avons vu comment créer des pages web avec différentes technologies (HTML, JSP, JSTL, etc.) en insistant sur le fait que JSF est la spécification

Plus en détail

Le serveur X2Go. Procédure

Le serveur X2Go. Procédure Le serveur X2Go Les sessions X2Go sont destinées à permettre à l utilisateur d avoir son propre environnement dérivé d une plateforme commune sans cesse maintenue et renouvelée. Présentation : Lorsque

Plus en détail

1 Partie A : administration d une base de donnée à travers PhpMyAdmin

1 Partie A : administration d une base de donnée à travers PhpMyAdmin Ce TP se compose en 2 sections : une section de prise en main (sur ordinateur) et une section d exercice (sur papier) concernant l algèbre relationnelle. 1 Partie A : administration d une base de donnée

Plus en détail

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

Cours Base de données relationnelles. M. Boughanem, IUP STRI Cours Base de données relationnelles 1 Plan 1. Notions de base 2. Modèle relationnel 3. SQL 2 Notions de base (1) Définition intuitive : une base de données est un ensemble d informations, (fichiers),

Plus en détail

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

Devenez un véritable développeur web en 3 mois! Devenez un véritable développeur web en 3 mois! L objectif de la 3W Academy est de former des petits groupes d élèves au développement de sites web dynamiques ainsi qu à la création d applications web

Plus en détail

INTERSYSTEMS CACHÉ COMME ALTERNATIVE AUX BASES DE DONNÉES RÉSIDENTES EN MÉMOIRE

INTERSYSTEMS CACHÉ COMME ALTERNATIVE AUX BASES DE DONNÉES RÉSIDENTES EN MÉMOIRE I N T E RS Y S T E M S INTERSYSTEMS CACHÉ COMME ALTERNATIVE AUX BASES DE DONNÉES RÉSIDENTES EN MÉMOIRE David Kaaret InterSystems Corporation INTERSySTEMS CAChé CoMME ALTERNATIvE AUx BASES de données RéSIdENTES

Plus en détail

FileMaker Server 11. Publication Web personnalisée avec PHP

FileMaker Server 11. Publication Web personnalisée avec PHP FileMaker Server 11 Publication Web personnalisée avec PHP 2007-2010 FileMaker, Inc. Tous droits réservés. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, Californie 95054 FileMaker et Bento sont

Plus en détail

Guide d installation Des produits Salvia Développement

Guide d installation Des produits Salvia Développement Guide d installation Des produits Salvia Développement Salvia Développement s Tél. +33 (0)9 72 72 66 66 Tél. +33 (0)1 84 95 15 54 35 rue de la Gare 75019 Paris www.salvia-developpement.fr Manuel utilisateur

Plus en détail

Compte rendu d activité Fiche n 1

Compte rendu d activité Fiche n 1 Compte rendu d activité Fiche n 1 Alexandre K. (http://ploufix.free.fr) Nature de l activité Création d une base de connaissances avec PostgreSQL Contexte : Le responsable technique souhaite la mise en

Plus en détail

Compte Rendu d intégration d application

Compte Rendu d intégration d application ISMA 3EME ANNEE Compte Rendu d intégration d application Compte Rendu Final Maxime ESCOURBIAC Jean-Christophe SEPTIER 19/12/2011 Table des matières Table des matières... 1 Introduction... 3 1. Le SGBD:...

Plus en détail

Institut Paul Hankar

Institut Paul Hankar BES WEBDESIGNER ACTIVITE En utilisant des outils informatiques, le web designer réalise des éléments graphiques fixes ou animés, en 2 ou 3 dimensions, en respectant le schéma de navigation du site et sa

Plus en détail

Partie 2.2: Servlet et Tomcat

Partie 2.2: Servlet et Tomcat Partie 2.2: Servlet et Tomcat 1 Plan du cours Servlets Présentation Exemple 2 Plan du cours Tomcat Des servlets à Tomcat: pourquoi Tomcat? Architecture Tomcat Installation et configuration de Tomcat Configuration

Plus en détail

3.3. Installation de Cacti

3.3. Installation de Cacti Cacti comme beaucoup de programmes sous linux cacti s appuis sur d autres programmes pour fonctionner ainsi Cacti nécessite l installation d un serveur LAMP (Linux, Apache, Mysql, Php) pour fonctionner,

Plus en détail

Reporting Services - Administration

Reporting Services - Administration Reporting Services - Administration Comment administrer SQL Server Reporting Services Cet article a pour but de présenter comment gérer le serveur depuis le "portail" de Reporting Services. Nous verrons

Plus en détail

FileMaker Pro 13. Utilisation d une Connexion Bureau à distance avec FileMaker Pro 13

FileMaker Pro 13. Utilisation d une Connexion Bureau à distance avec FileMaker Pro 13 FileMaker Pro 13 Utilisation d une Connexion Bureau à distance avec FileMaker Pro 13 2007-2013 FileMaker, Inc. Tous droits réservés. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, Californie 95054

Plus en détail

Architecture technique

Architecture technique OPUS DRAC Architecture technique Projet OPUS DRAC Auteur Mathilde GUILLARME Chef de projet Klee Group «Créateurs de solutions e business» Centre d affaires de la Boursidière BP 5-92357 Le Plessis Robinson

Plus en détail

Introduction JOOMLA. Fonctionnalités. Avantages. Hainaut P. 2013 - www.coursonline.be 1. Joomla est un système de gestion de contenu CMS open source

Introduction JOOMLA. Fonctionnalités. Avantages. Hainaut P. 2013 - www.coursonline.be 1. Joomla est un système de gestion de contenu CMS open source JOOMLA Introduction Joomla est un système de gestion de contenu CMS open source Il permet la conception rapide de sites Web avec une présentation soignée et une navigation très simple C est l outil idéal

Plus en détail

CONDUITE & GESTION DE PROJET

CONDUITE & GESTION DE PROJET LES THEMES DU PROGRAMME PEDAGOGIQUE CONDUITE & GESTION DE PROJET Techniques de gestion de projets Connaître le rôle d un chef de projet dans la conduite de projet. Les méthodes, les techniques et les outils

Plus en détail

Premières applications. Web 2.0. avec Ajax et PHP. J e a n - M a r i e D e f r a n c e. Groupe Eyrolles, 2008, ISBN : 978-2-212-12090-5

Premières applications. Web 2.0. avec Ajax et PHP. J e a n - M a r i e D e f r a n c e. Groupe Eyrolles, 2008, ISBN : 978-2-212-12090-5 Premières applications Web 2.0 avec Ajax et PHP J e a n - M a r i e D e f r a n c e Groupe Eyrolles, 2008, ISBN : 978-2-212-12090-5 8 Applications Ajax-PHP synchrones Pour commencer simplement, je vous

Plus en détail

Sécurité Informatique

Sécurité Informatique Avertissements : Le contenu de ce document est sous licence GPL. Le document est librement diffusable dans le contexte de cette licence. Toute modification est encouragée et doit être signalée à olivier

Plus en détail

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

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation Base de données S. Lèbre slebre@unistra.fr Université de Strasbourg, département d informatique. Présentation du module Contenu général Notion de bases de données Fondements / Conception Utilisation :

Plus en détail

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

Refonte front-office / back-office - Architecture & Conception - Refonte front-office / back-office - Architecture & Conception - GLG204 - Architectures Logicielles Java 2008/2009 Nom : Cédric Poisson Matricule : 06-49012 Version : 1.0 Jeudi 28 mai 2009 1 / 23 Table

Plus en détail

Préparation à l installation d Active Directory

Préparation à l installation d Active Directory Laboratoire 03 Étape 1 : Installation d Active Directory et du service DNS Noter que vous ne pourrez pas réaliser ce laboratoire sans avoir fait le précédent laboratoire. Avant de commencer, le professeur

Plus en détail

UNIVERSITE du 7 NOVEMBRE à CARTHAGE. Institut National de Sciences Appliquées et de Technologie CONCEPTION DES BASES DE DONNEES PROJECT ADMIN

UNIVERSITE du 7 NOVEMBRE à CARTHAGE. Institut National de Sciences Appliquées et de Technologie CONCEPTION DES BASES DE DONNEES PROJECT ADMIN UNIVERSITE du 7 NOVEMBRE à CARTHAGE Institut National de Sciences Appliquées et de Technologie CONCEPTION DES BASES DE DONNEES PROJECT ADMIN 4éme Année Génie Logiciel REALISE PAR: ADOUANI NABIL LOUKIL

Plus en détail

Évaluation et implémentation des langages

Évaluation et implémentation des langages Évaluation et implémentation des langages Les langages de programmation et le processus de programmation Critères de conception et d évaluation des langages de programmation Les fondations de l implémentation

Plus en détail

Compte-Rendu SDL. «Reprise de l application de gestion de listes de présences des alternants»

Compte-Rendu SDL. «Reprise de l application de gestion de listes de présences des alternants» Compte-Rendu SDL Auteurs : BOUTROUILLE Alexis BAILLEUL Pierre Tuteur : Ioan Marius Bilasco «Reprise de l application de gestion de listes de présences des alternants» Master MIAGE 1 Année 2012/2013 1 Remerciements

Plus en détail

Guide de l utilisateur WebSeekurity

Guide de l utilisateur WebSeekurity SCRT Information Security Julia Benz Guide de l utilisateur WebSeekurity Version 1.0 Mars 2012 Table des matières Table des matières i 1 Introduction 1 1.1 Contributions.............................. 1

Plus en détail

NVU, Notepad++ (ou le bloc-note), MySQL, PhpMyAdmin. HTML, PHP, cas d utilisation, maquettage, programmation connaissances en HTML, PHP et SQL

NVU, Notepad++ (ou le bloc-note), MySQL, PhpMyAdmin. HTML, PHP, cas d utilisation, maquettage, programmation connaissances en HTML, PHP et SQL Prise en main de NVU et Notepad++ (conception d application web avec PHP et MySql) Propriétés Intitulé long Formation concernée Matière Présentation Description Conception de pages web dynamiques à l aide

Plus en détail

Base de données - Tableaux Query Rapport de projet

Base de données - Tableaux Query Rapport de projet Base de données - Tableaux Query Rapport de projet Xavier Dubuc 30 mars 2009 Table des matières 1 Introduction. 2 1.1 Qu est-ce qu un tableau query?................................. 2 1.2 Le tupple résumé..........................................

Plus en détail

Rapport de certification

Rapport de certification Rapport de certification Security Intelligence Platform 4.0.5 Préparé par : Le Centre de la sécurité des télécommunications à titre d organisme de certification dans le cadre du Schéma canadien d évaluation

Plus en détail

Dr. Djamel Benmerzoug. Email : djamel.benmerzoug@univ-constantine2.dz

Dr. Djamel Benmerzoug. Email : djamel.benmerzoug@univ-constantine2.dz Master 2 SITW Les services Web Dr. Djamel Benmerzoug Email : djamel.benmerzoug@univ-constantine2.dz Maitre de Conférences A, Département TLSI Faculté des NTIC Université Constantine 2 Abdelhamid Mehri

Plus en détail

Architecture Logicielle

Architecture Logicielle Architecture Logicielle Chapitre 3: UML pour la description et la documentation d une architecture logicielle Année universitaire 2013/2014 Semestre 1 Rappel L architecture d un programme ou d un système

Plus en détail

FileMaker Pro 12. Utilisation d une Connexion Bureau à distance avec FileMaker Pro 12

FileMaker Pro 12. Utilisation d une Connexion Bureau à distance avec FileMaker Pro 12 FileMaker Pro 12 Utilisation d une Connexion Bureau à distance avec FileMaker Pro 12 2007-2012 FileMaker, Inc. Tous droits réservés. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054

Plus en détail

Création d un catalogue en ligne

Création d un catalogue en ligne 5 Création d un catalogue en ligne Au sommaire de ce chapitre Fonctionnement théorique Définition de jeux d enregistrements Insertion de contenu dynamique Aperçu des données Finalisation de la page de

Plus en détail

EISTI. Oracle Toplink. Manuel d installation et d utilisation

EISTI. Oracle Toplink. Manuel d installation et d utilisation EISTI Oracle Toplink Manuel d installation et d utilisation VILLETTE Charles, BEQUET Pierre, DE SAINT MARTIN Cédric, CALAY-ROCHE Vincent, NAUTRE Francois 20/05/2010 Ce manuel d installation et d utilisation

Plus en détail

Rapport de Cryptographie

Rapport de Cryptographie Cryptographie [MIF30] / Année 2008-2009 Rapport de Cryptographie Les Injections SQL Sylvie Tixier & François-Xavier Charlet Page 1 20/05/2009 Sommaire Introduction...3 Définition d une injection SQL...3

Plus en détail

Consoles graphiques. Compléments Web. MySQL Workbench. Connexion

Consoles graphiques. Compléments Web. MySQL Workbench. Connexion 4055_xomplement web Page 1 Lundi, 31. août 2015 10:56 10 Compléments Web Consoles graphiques MySQL AB fournit deux outils d administration : MySQL Workbench et MySQL Enterprise. Le premier est gratuit

Plus en détail

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)

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) Quelques patterns pour la persistance des objets avec DAO Ce cours présente des modèles de conception utilisés pour effectuer la persistance des objets Université de Nice Sophia-Antipolis Version 1.4 30/8/07

Plus en détail

Projet : site web de gestion d itinéraires de voyage

Projet : site web de gestion d itinéraires de voyage Projet : site web de gestion d itinéraires de voyage Partie 1 (modélisation et architecture du site) UCBL - Département Informatique de Lyon 1 LIF4 - automne 2014 1 Description générale du projet Le projet

Plus en détail

Pasquier Barthelémy Ticula Omont

Pasquier Barthelémy Ticula Omont Pet Store Un magasin de vente en ligne générique basé sur: Le Kit de Développement Logiciel de Java 2, Edition Entreprise (J2EE) Pasquier Barthelémy Ticula Omont lundi 9 mars 2009 1/16 1) Objectif de l

Plus en détail

Modèle relationnel Création et modification des relations en SQL

Modèle relationnel Création et modification des relations en SQL Modèle relationnel Création et modification des relations en SQL ENT - Clé sql2009 BD - Mírian Halfeld-Ferrari p. 1 Insertion dans une relation Pour insérer un tuple dans une relation: insert into Sailors

Plus en détail

MEMOIRE DE PROJET. Dahmane BILEK Alain DONADINI

MEMOIRE DE PROJET. Dahmane BILEK Alain DONADINI MINISTÈRE DE L ÉDUCATION NATIONALE, DE LA RECHERCHE ET DE LA TECHNOLOGIE CONSERVATOIRE NATIONAL DES ARTS ET MÉTIERS DÉPARTEMENT INFORMATIQUE CHAIRE INFORMATIQUE D'ENTREPRISE LICENCE PROFESSIONNELLE «ANALYSTE

Plus en détail

Calendrier des Formations

Calendrier des Formations Systèmes et Réseaux IPV6 980,00 HT Jan. Fév. Mar. Avr. Mai Juin Jui. Août Sept. Oct. Nov. Déc. Comprendre IPV6 et explorer les méthodes pour migrer 14-15 23-24 1-2 26-27 Configuration et Maintenance des

Plus en détail

HighPush. document 3.0 18/06/2009 Révision pour version 3.0 2.0 20/11/2008 Revision pour la 2.0 1.0 01/10/2008 Documentation initiale.

HighPush. document 3.0 18/06/2009 Révision pour version 3.0 2.0 20/11/2008 Revision pour la 2.0 1.0 01/10/2008 Documentation initiale. Version du Date document 3.0 18/06/2009 Révision pour version 3.0 2.0 20/11/2008 Revision pour la 2.0 1.0 01/10/2008 Documentation initiale Commentaires 1 Table des matières 1 Introduction / Identification...

Plus en détail

Du monde réel à SQL la modélisation des données

Du monde réel à SQL la modélisation des données ANF «Comment concevoir une base de données en archéométrie» Réseau CAI-RN & rbdd - 05/06/2014 au 06/06/2014 Du monde réel à SQL la modélisation des données Marie-Claude Quidoz (CEFE/CNRS) Ce document est

Plus en détail

Laboratoire SSL avec JSSE

Laboratoire SSL avec JSSE Applications et Services Internet Rapport de laboratoire IL2008 20 janvier 2008 TABLE DES MATIÈRES I Table des matières 1 Introduction 1 2 Utilisation du serveur web 1 3 Clé publique générée 1 4 Réponses

Plus en détail

JXDVDTek - UNE DVDTHEQUE EN JAVA ET XML

JXDVDTek - UNE DVDTHEQUE EN JAVA ET XML BALLOTE Nadia FRIULI Valerio GILARDI Mathieu IUT de Nice Licence Professionnelle des Métiers de l Informatique RAPPORT DU PROJET : JXDVDTek - UNE DVDTHEQUE EN JAVA ET XML Encadré par : M. CRESCENZO Pierre

Plus en détail