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

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

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

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

RAPPORT DU PREMIER MINI PROJET «FORUM DE CHAT» Novembre 2005

RAPPORT DU PREMIER MINI PROJET «FORUM DE CHAT» Novembre 2005 Oussama ELKACHOINDI Wajdi MEHENNI RAPPORT DU PREMIER MINI PROJET «FORUM DE CHAT» Novembre 2005 Sommaire I. Préliminaire : Notice d exécution et mode opératoire...4 II. Architecture globale de l application...5

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

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

Document d évaluation système

Document d évaluation système CODAZZI Rama DAMOTTE Alan GUI Kai HAMMERER Jérémy TORCK Quentin RICM5 Document d évaluation système Groupe 2 Site de vente de stickers personnalisés My Stick It ETAT DE CHAQUE COMPOSANT : NON REALISE,

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

PG208, Projet n 3 : Serveur HTTP évolué

PG208, Projet n 3 : Serveur HTTP évolué PG208, Projet n 3 : Serveur HTTP évolué Bertrand LE GAL, Serge BOUTER et Clément VUCHENER Filière électronique 2 eme année - Année universitaire 2011-2012 1 Introduction 1.1 Objectif du projet L objectif

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

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

Cours CCNA 1. Exercices

Cours CCNA 1. Exercices Cours CCNA 1 TD3 Exercices Exercice 1 Enumérez les sept étapes du processus consistant à convertir les communications de l utilisateur en données. 1. L utilisateur entre les données via une interface matérielle.

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

Gestion des accès aux ressources à l aide des groupes

Gestion des accès aux ressources à l aide des groupes Gestion des accès aux ressources à l aide des groupes Un groupe est un ensemble de comptes d utilisateur. Les groupes permettent de simplifier la gestion de l accès des utilisateurs et des ordinateurs

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

CONFIGURATION P 2 P 3 P 3 P 10 P 11 P 13 P 14 P 16

CONFIGURATION P 2 P 3 P 3 P 10 P 11 P 13 P 14 P 16 CONFIGURATION 1 Présentation 2 Topologie du projet 3 Installation 4 Configuration 4.1 Création de la DMZ publique 4.2 Accès vers l Internet 4.3 Publication d Exchange 4.4 Rapports d activité et alertes

Plus en détail

Solutions de gestion de la sécurité Livre blanc

Solutions de gestion de la sécurité Livre blanc Solutions de gestion de la sécurité Livre blanc L intégration de la gestion des identités et des accès avec l authentification unique Objectif : Renforcer la politique de sécurité et améliorer la productivité

Plus en détail

LES NOUVEAUTES DE COST AND PROFITABILITY MANAGEMENT 8.1

LES NOUVEAUTES DE COST AND PROFITABILITY MANAGEMENT 8.1 LES NOUVEAUTES DE COST AND PROFITABILITY MANAGEMENT 8.1 SAS Cost and Profitability Management, également appelé CPM (ou C&P), est le nouveau nom de la solution SAS Activity-Based Management. Cette version

Plus en détail

Projet MVC-CD. Comportement de VP lors du déploiement itératif et incrémental du MPD vers la base de données cible

Projet MVC-CD. Comportement de VP lors du déploiement itératif et incrémental du MPD vers la base de données cible Projet MVC-CD Comportement de VP lors du déploiement itératif et incrémental du MPD vers la base de données cible Créé par S. Berberat, le 23 octobre.2014 Modifié par S. Berberat, le 29 octobre 2014 Page

Plus en détail

Dossier Technique. Détail des modifications apportées à GRR. Détail des modifications apportées à GRR Le 17/07/2008. Page 1/10

Dossier Technique. Détail des modifications apportées à GRR. Détail des modifications apportées à GRR Le 17/07/2008. Page 1/10 Dossier Technique Page 1/10 Sommaire : 1. REPONSE TECHNIQUE A LA DEMANDE 3 1.1. Prise en compte de la dernière version de phpcas 3 1.2. Gestion de la connexion à GRR 3 1.2.1. Récupération des attributs

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

Manuel du revendeur. version 2.0-r1

Manuel du revendeur. version 2.0-r1 Manuel du revendeur version 2.0-r1 Table des matières 1 Explication des termes 3 2 Sections du tableau d administration dédié au revendeur 3 3 Généralités 4 3.1 Aperçu............................... 4

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

CAHIER DES CHARGES D IMPLANTATION

CAHIER DES CHARGES D IMPLANTATION CAHIER DES CHARGES D IMPLANTATION Tableau de diffusion du document Document : Cahier des Charges d Implantation EVRP Version 6 Etabli par DCSI Vérifié par Validé par Destinataires Pour information Création

Plus en détail

Installer Joomla. 2013 Pearson France Joomla! Le guide officiel Jennifer Marriott, Elin Waring

Installer Joomla. 2013 Pearson France Joomla! Le guide officiel Jennifer Marriott, Elin Waring 3 Installer Joomla Dans ce chapitre, nous procéderons au téléchargement et à l installation manuelle de Joomla, et nous expliquerons la configuration de base. Les captures d écran et les instructions font

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

CREER ET FORMATER UNE PARTITION DE DISQUE DUR 1 QUE SONT LES PARTITIONS ET LES LECTEURS LOGIQUES? 6

CREER ET FORMATER UNE PARTITION DE DISQUE DUR 1 QUE SONT LES PARTITIONS ET LES LECTEURS LOGIQUES? 6 Table des matières. CREER ET FORMATER UNE PARTITION DE DISQUE DUR 1 QUE SONT LES PARTITIONS ET LES LECTEURS LOGIQUES? 6 QUE SONT LES DISQUES DE BASE ET LES DISQUES DYNAMIQUES? 6 FORMATAGE DES DISQUES ET

Plus en détail

et dépannage de PC Configuration Sophie Lange Guide de formation avec exercices pratiques Préparation à la certification A+

et dépannage de PC Configuration Sophie Lange Guide de formation avec exercices pratiques Préparation à la certification A+ Guide de formation avec exercices pratiques Configuration et dépannage de PC Préparation à la certification A+ Sophie Lange Troisième édition : couvre Windows 2000, Windows XP et Windows Vista Les Guides

Plus en détail

Bien programmer. en Java 7. 10 000 ex. couleur. Avec plus de 50 études de cas et des comparaisons avec C++ et C# Emmanuel Puybaret.

Bien programmer. en Java 7. 10 000 ex. couleur. Avec plus de 50 études de cas et des comparaisons avec C++ et C# Emmanuel Puybaret. Bien programmer en Java 7 Avec plus de 50 études de cas et des comparaisons avec C++ et C# Plus de 10 000 ex. vendus! Édition en couleur Emmanuel Puybaret, ISBN : 978-2-212-12974-8 chapitre1 Présentation

Plus en détail

Installation et utilisation de SSH. .et

Installation et utilisation de SSH. .et Installation et utilisation de SSH.et.soumission de travail SSH est un protocole de communication qui permet de communiquer à distance entre deux ordinateurs. Pour cela, il faut qu un des deux ordinateurs

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

Le client/serveur repose sur une communication d égal à égal entre les applications.

Le client/serveur repose sur une communication d égal à égal entre les applications. Table des matières LES PRINCIPES DE BASE... 1 Présentation distribuée-revamping...2 Présentation distante...3 Traitements distribués...3 données distantes-rd...4 données distribuées-rda distribué...4 L'ARCHITECTURE

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

Accès au serveur SQL. Où ranger les accès au serveur SQL?

Accès au serveur SQL. Où ranger les accès au serveur SQL? 150 requête SQL, cela aura un impact sur un nombre limité de lignes et non plus sur l ensemble des données. MySQL propose une clause originale en SQL : LIMIT. Cette clause est disponible avec les différentes

Plus en détail

GED MARKETING. Page 1 sur 18

GED MARKETING. Page 1 sur 18 GED MARKETING I. Présentation du produit... 2 II. Page principale de l application... 3 L arbre... 3 Le menu... 4 La fenêtre de navigation... 4 III. La recherche de documents... 4 Rechercher tous les documents...

Plus en détail

Chap. III : Le système d exploitation

Chap. III : Le système d exploitation UMR 7030 - Université Paris 13 - Institut Galilée Cours Architecture et Système Le système d exploitation (ou O.S. de l anglais Operating System ) d un ordinateur est le programme qui permet d accéder

Plus en détail

arcopole Studio Annexe 4 Intégration LDAP et processus d authentification Site du programme arcopole : www.arcopole.fr

arcopole Studio Annexe 4 Intégration LDAP et processus d authentification Site du programme arcopole : www.arcopole.fr arcopole Studio Annexe 4 Intégration LDAP et processus d authentification Site du programme arcopole : www.arcopole.fr Auteur du document : ESRI France Version de la documentation : 1.2.0.0 Date de dernière

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

Procédure pas à pas de découverte de l offre. Service Cloud Cloudwatt

Procédure pas à pas de découverte de l offre. Service Cloud Cloudwatt Procédure pas à pas de découverte de l offre Service Cloud Cloudwatt Manuel Utilisateur 03/07/2014 Cloudwatt - Reproduction et communication sont interdites sans autorisation 1/45 Contenu 1. Introduction...

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

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

Description et illustration du processus unifié

Description et illustration du processus unifié USDP Description et illustration du processus unifié Définit un enchaînement d activités Est réalisé par un ensemble de travailleurs Avec des rôles, des métiers Avec pour objectifs de passer des besoins

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

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

Introduction aux systèmes d exploitation

Introduction aux systèmes d exploitation Introduction aux systèmes d exploitation Le système d exploitation est un ensemble de logiciels qui pilotent la partie matérielle d un ordinateur. Les principales ressources gérées par un système d exploitation

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

TD2-1 : Application client-serveur V2.3.0

TD2-1 : Application client-serveur V2.3.0 TD2-1 : Application client-serveur V2.3.0 Cette œuvre est mise à disposition selon les termes de la licence Creative Commons Attribution Pas d'utilisation Commerciale Partage à l'identique 3.0 non transposé.

Plus en détail

Dream Report. Dream Report vs Reporting Services

Dream Report. Dream Report vs Reporting Services Dream Report Dream Report vs Reporting Services Date : Mars 2015 A propos de Dream Report Dream Report est le 1 er logiciel d édition de rapport prêt à l emploi offrant aux utilisateurs la possibilité

Plus en détail

Philosophie des extensions WordPress

Philosophie des extensions WordPress 8 Philosophie des extensions WordPress Le concept L une des forces de WordPress dans la jungle CMS, c est la simplicité de création d extensions. Il y a plusieurs raisons à cela. Des raisons techniques

Plus en détail

Applications orientées données (NSY135)

Applications orientées données (NSY135) Applications orientées données (NSY135) 2 Applications Web Dynamiques Auteurs: Raphaël Fournier-S niehotta et Philippe Rigaux (philippe.rigaux@cnam.fr,fournier@cnam.fr) Département d informatique Conservatoire

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

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

Manuel du logiciel PrestaTest.

Manuel du logiciel PrestaTest. Manuel du logiciel. Ce document décrit les différents tests que permet le logiciel, il liste également les informations nécessaires à chacun d entre eux. Table des matières Prérequis de PrestaConnect :...2

Plus en détail

La Clé informatique. Formation Access XP Aide-mémoire

La Clé informatique. Formation Access XP Aide-mémoire La Clé informatique Formation Access XP Aide-mémoire Septembre 2003 Définitions de termes Base de données : Se compare à un énorme classeur ayant plusieurs tiroirs où chacun d eux contient des informations

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

A. Architecture du serveur Tomcat 6

A. Architecture du serveur Tomcat 6 Administration du serveur A. Architecture du serveur Tomcat 6 La compréhension de l architecture interne du serveur Tomcat 6 est un pré-requis indispensable pour bien en maîtriser l administration et la

Plus en détail

Interface O2m-SPB / Axalot. Thierry Brémard, tb@axalot.com 14 Juin 2010 Table des matières. 1 Récupération des données sur outils Axalot...

Interface O2m-SPB / Axalot. Thierry Brémard, tb@axalot.com 14 Juin 2010 Table des matières. 1 Récupération des données sur outils Axalot... Interface O2m-SPB / Axalot Thierry Brémard, tb@axalot.com 14 Juin 2010 Table des matières 1 Récupération des données sur outils Axalot... 2 1.1 Sondeur... 2 1.2 Serveur tampon... 2 1.3 Serveur de production...

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

Use Cases. Introduction

Use Cases. Introduction Use Cases Introduction Avant d aborder la définition et la conception des UC il est bon de positionner le concept du UC au sein du processus de développement. Le Processus de développement utilisé ici

Plus en détail

LINQ to SQL. Version 1.1

LINQ to SQL. Version 1.1 LINQ to SQL Version 1.1 2 Chapitre 03 - LINQ to SQL Sommaire 1 Introduction... 3 1.1 Rappels à propos de LINQ... 3 1.2 LINQ to SQL... 3 2 LINQ to SQL... 3 2.1 Importer des tables... 3 2.1.1 Le concepteur

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

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

BOUYGUES TELECOM ENTREPRISES - CLOUD

BOUYGUES TELECOM ENTREPRISES - CLOUD BOUYGUES TELECOM ENTREPRISES - CLOUD PARTIE CLIENT Version 1.4. 21/06/2013 Partie client Page 1 Sommaire 1 FONCTIONS CLES DU PORTAIL 3 1.1 Pré-requis d utilisation des services Cloud 3 1.2 Principes de

Plus en détail

TP 2 : programmation côté serveur À rendre pour le mardi 6 mai 2008

TP 2 : programmation côté serveur À rendre pour le mardi 6 mai 2008 Université Claude Bernard Lyon 1 UFR d informatique avril 2006 MIAG soir Systèmes d Information Méthodes Avancées TP 2 : programmation côté serveur À rendre pour le mardi 6 mai 2008 Introduction Dans ce

Plus en détail

Les solutions de paiement CyberMUT (Crédit Mutuel) et P@iement CIC. Qui contacter pour commencer la mise en place d une configuration de test?

Les solutions de paiement CyberMUT (Crédit Mutuel) et P@iement CIC. Qui contacter pour commencer la mise en place d une configuration de test? Les solutions de paiement CyberMUT (Crédit Mutuel) et P@iement CIC Qui contacter pour commencer la mise en place d une configuration de test? CyberMUT Paiement - Paiement CIC Commerce Electronique mailto:centrecom@e-i.com

Plus en détail

Le langage PHP permet donc de construire des sites web dynamiques, contrairement au langage HTML, qui donnera toujours la même page web.

Le langage PHP permet donc de construire des sites web dynamiques, contrairement au langage HTML, qui donnera toujours la même page web. Document 1 : client et serveur Les ordinateurs sur lesquels sont stockés les sites web sont appelés des serveurs. Ce sont des machines qui sont dédiées à cet effet : elles sont souvent sans écran et sans

Plus en détail

Programmation PHP Septembre 2010

Programmation PHP Septembre 2010 IFT1147 Programmation Serveur Web avec PHP Plan La POO en PHP Lecture du chapitre 20. Programmation par objets Introduction à la POO Objets et classes Propriétés Méthodes Private Héritage Polymorphisme

Plus en détail

Enseignant: Lamouchi Bassem Cours : Système à large échelle et Cloud Computing

Enseignant: Lamouchi Bassem Cours : Système à large échelle et Cloud Computing Enseignant: Lamouchi Bassem Cours : Système à large échelle et Cloud Computing Les Clusters Les Mainframes Les Terminal Services Server La virtualisation De point de vue naturelle, c est le fait de regrouper

Plus en détail

Le service pack 6 (SP6) est le dernier disponible pour visual studio 6. Ce dernier devrait être maintenu par Microsoft jusqu en 2008.

Le service pack 6 (SP6) est le dernier disponible pour visual studio 6. Ce dernier devrait être maintenu par Microsoft jusqu en 2008. 1 CONCEPT DE BASE 1.1 Visual Basic 6 1.1.1 Pour quoi faire? VB est un langage de type RAD : «Rapid Application Development». Il permet de créer des applications rapidement grâce à une conception simple

Plus en détail

BTS INFORMATIQUE DE GESTION ISE4D SESSION 2010 E4R : ÉTUDE DE CAS. Durée : 5 heures Coefficient : 5 CAS NOIXCOOP ÉLÉMENTS DE CORRECTION

BTS INFORMATIQUE DE GESTION ISE4D SESSION 2010 E4R : ÉTUDE DE CAS. Durée : 5 heures Coefficient : 5 CAS NOIXCOOP ÉLÉMENTS DE CORRECTION E4R : ÉTUDE DE CAS Durée : 5 heures Coefficient : 5 CAS NOIXCOOP ÉLÉMENTS DE CORRECTION Barème Dossier 1 : Distribution de noix 32 points Dossier 2 : Commercialisation de plants de noyers 16 points Dossier

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

Une ergonomie intuitive

Une ergonomie intuitive Une ergonomie intuitive Les solutions de la ligne PME offrent une interface de travail proche des usages quotidiens en informatique. Leur ergonomie intuitive facilite la prise en main du logiciel. Une

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

L approche Bases de données

L approche Bases de données L approche Bases de données Cours: BD. Avancées Année: 2005/2006 Par: Dr B. Belattar (Univ. Batna Algérie) I- : Mise à niveau 1 Cours: BDD. Année: 2013/2014 Ens. S. MEDILEH (Univ. El-Oued) L approche Base

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

Conception et Implémentation

Conception et Implémentation I. INTRODUCTION Dans ce chapitre on va définir la conception de notre site web dynamique et nous expliquons les étapes de réalisation, les outils utilisés et l interface principale ainsi que les différentes

Plus en détail

6761 Validation de la conformité 21.03.2007

6761 Validation de la conformité 21.03.2007 6761 Validation de la conformité 21.03.2007 Peter DAEHNE 1 Tests de stress Les tests de stress permettent d étudier le comportement du logiciel lorsque celui-ci est mis dans des situations extrêmes, aux

Plus en détail

Internet statique et dynamique Programmation côté Serveur. Programmation de sites web statiques et dynamiques. Programmation côté serveur

Internet statique et dynamique Programmation côté Serveur. Programmation de sites web statiques et dynamiques. Programmation côté serveur Programmation de sites web statiques et dynamiques Programmation côté serveur Jean CARTIER MASTER INI jcartier@laposte.net 1 SOMMAIRE Internet statique et dynamique Côté Client Le HTML : Principe de fonctionnement

Plus en détail

Gestion de stock facturation : openstock 1.02 juin 2006

Gestion de stock facturation : openstock 1.02 juin 2006 Introduction Gestion de stock facturation : openstock 1.02 juin 2006 Le rapport de stage de Laurent POUCHOULOU décrivant son travail sur la période d Avril à Juin 2006 a été transformé en documentation

Plus en détail

TP WEBSERVICES. 1 Pré-requis. 1.1 L environnement de développement. 1.2 Les librairies nécessaires 1.3 SOAPUI

TP WEBSERVICES. 1 Pré-requis. 1.1 L environnement de développement. 1.2 Les librairies nécessaires 1.3 SOAPUI Institut Galilée Année 2014-2015 TP WEBSERVICES Programmation et Logiciels sûrs Master 2 PLS Résumé Ce TP s appuie sur le cours de C. Fouqueré traitant des Environnements et Langage Évolués, ainsi que

Plus en détail

Introduction au Makefile

Introduction au Makefile Introduction au Makefile Nicolas Kielbasiewicz 3 mars 2009 Le développement d un programme et plus généralement d un logiciel demande au(x) programmeur(s) de gérer plusieurs fichiers, voire plusieurs langages.

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

Dossier I Découverte de Base d Open Office

Dossier I Découverte de Base d Open Office ETUDE D UN SYSTEME DE GESTION DE BASE DE DONNEES RELATIONNELLES Définition : Un SGBD est un logiciel de gestion des données fournissant des méthodes d accès aux informations. Un SGBDR permet de décrire

Plus en détail

Base de donnée relationnelle. Exemple de table: Film. Exemple de table: Acteur. Exemple de table: Role. Contenu de la table Role

Base de donnée relationnelle. Exemple de table: Film. Exemple de table: Acteur. Exemple de table: Role. Contenu de la table Role IFT7 Programmation Serveur Web avec PHP Introduction à MySQL Base de donnée relationnelle Une base de données relationnelle est composée de plusieurs tables possédant des relations logiques (théorie des

Plus en détail

L informatique en BCPST

L informatique en BCPST L informatique en BCPST Présentation générale Sylvain Pelletier Septembre 2014 Sylvain Pelletier L informatique en BCPST Septembre 2014 1 / 20 Informatique, algorithmique, programmation Utiliser la rapidité

Plus en détail

Projet Magistère: SSL

Projet Magistère: SSL Université Joseph Fourier, IMA Janvier 2010 Table des matières 1 Introduction 2 Qu est ce que SSL? 3 Historique de SSL/TLS 4 Théorie à propos du fonctionnement de SSL 5 Structure d un certificat 6 SSL

Plus en détail

Encryptions, compression et partitionnement des données

Encryptions, compression et partitionnement des données Encryptions, compression et partitionnement des données Version 1.0 Grégory CASANOVA 2 Compression, encryption et partitionnement des données Sommaire 1 Introduction... 3 2 Encryption transparente des

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

Projet de Base de données

Projet de Base de données Julien VILLETORTE Licence Informatique Projet de Base de données Année 2007-2008 Professeur : Marinette Savonnet Sommaire I) Introduction II) III) IV) Diagrammes a. Diagramme Use Case b. Diagramme de classes

Plus en détail

Travaux pratiques 9.1.1 Organisation des objectifs CCENT par couche du modèle OSI

Travaux pratiques 9.1.1 Organisation des objectifs CCENT par couche du modèle OSI Travaux pratiques 9.1.1 Organisation des objectifs CCENT par couche du modèle OSI Objectifs Organiser les objectifs CCENT en fonction de la ou des couches auxquelles ils s adressent Contexte / Préparation

Plus en détail

PHP et MySQL : notions de sécurité

PHP et MySQL : notions de sécurité PHP et MySQL : notions de sécurité Jean-Baptiste.Vioix@u-bourgogne.fr Dans ces quelques lignes des notions de sécurité élémentaires vont être présentées. Elles sont insuffisantes pour toute application

Plus en détail

Ecole Nationale Supérieure des Télécommunications Les outils XML

Ecole Nationale Supérieure des Télécommunications Les outils XML Ecole Nationale Supérieure des Télécommunications Les outils XML Page 1 sur 13 SOMMAIRE 1 Introduction 3 2 Parseur XML et processeur XSLT 4 2.1 Le Parseur XML v2 4 2.1.1 Les API DOM et SAX 4 2.1.2 Le parseur

Plus en détail

TD n 1 : Architecture 3 tiers

TD n 1 : Architecture 3 tiers 2008 TD n 1 : Architecture 3 tiers Franck.gil@free.fr 27/10/2008 1 TD n 1 : Architecture 3 tiers 1 INTRODUCTION Ce TD, se propose de vous accompagner durant l installation d un environnement de développement

Plus en détail

Traduction des Langages : Le Compilateur Micro Java

Traduction des Langages : Le Compilateur Micro Java BARABZAN Jean-René OUAHAB Karim TUCITO David 2A IMA Traduction des Langages : Le Compilateur Micro Java µ Page 1 Introduction Le but de ce projet est d écrire en JAVA un compilateur Micro-Java générant

Plus en détail

Instruction d installation de GIMACO

Instruction d installation de GIMACO IDENTIFICATION DU DOCUMENT Objet Procédure d installation de l application GIMACO Référence IN 1258 INF XXX VB - Installation de GIMACO.doc Numéro de version 3.0 Statut Valide Auteur(s) David Pujol, Stéphane

Plus en détail

Salvia Liaison Financière. Manuel d installation version 15.00 Pour les professionnels des collectivités locales et de l habitat social

Salvia Liaison Financière. Manuel d installation version 15.00 Pour les professionnels des collectivités locales et de l habitat social Salvia Liaison Financière Manuel d installation version 15.00 Pour les professionnels des collectivités locales et de l habitat social Sommaire 1. Préambule... 3 2. Introduction... 3 3. Création de la

Plus en détail