ENSGI 2A MSI - Démarche Compléments sur Le M.O.T. modèle organisationnel de traitement L’architecture des SI La démarche et les livrables du projet. http://gilco.inpg.fr/~tollenaere/msi/diaporamas/cours2005-11-29.ppt version 1.1 du 27 novembre 2005 1 Michel Tollenaere ENSGI 2A MSI - Démarche Modèle Organisationnel de Traitements (MOT) de Merise • • • • Enchaînement des opérations ou taches condition d’enchaînement acteur affecté (qui ?) période de traitement (quand ?) version 1.1 du 27 novembre 2005 2 Michel Tollenaere ENSGI 2A MSI - Démarche MCT de Merise : Modèle conceptuel de traitement • Définition des activités et conditions d’enchaînement • définition des évènements • définition des données ou objets échangés • conditions de déclenchement des activités • alternatives d’exécution version 1.1 du 27 novembre 2005 3 Michel Tollenaere ENSGI 2A MSI - Démarche • évènements d’évolution • activités et conditions d’enchaînement conditions de déclenchement des activités • alternatives d’exécution version 1.1 du 27 novembre 2005 4 Michel Tollenaere ENSGI 2A MSI - Démarche version 1.1 du 27 novembre 2005 5 Michel Tollenaere ENSGI 2A MSI - Démarche Complémentarité MOT / diagramme états transitions Disponible Emprunt Ramenée empruntée Voile OK version 1.1 du 27 novembre 2005 En vérification Voile abimée En réparation Rebut Voile OK 6 Michel Tollenaere ENSGI 2A MSI - Démarche Architecture des SI • • • • répartition des traitements Interfaces Html Base de données et Internet client / serveur version 1.1 du 27 novembre 2005 7 Michel Tollenaere ENSGI 2A MSI - Démarche Architecture des SI poste client Réseaux serveur de traitements poste client serveur de données version 1.1 du 27 novembre 2005 8 Michel Tollenaere ENSGI 2A MSI - Démarche Architecture des SI Internet Sécurité ? poste client Intranet / Internet poste client serveur de données Ldap version 1.1 du 27 novembre 2005 Authentification des utilisateurs ou système propriétaire ? 9 Michel Tollenaere ENSGI 2A MSI - Démarche Architecture des SI Internet Les capacités et débits réseaux sont très hétérogènes. poste client Intranet / Internet poste client serveur de données Ldap version 1.1 du 27 novembre 2005 Authentification des utilisateurs 10 Michel Tollenaere ENSGI 2A MSI - Démarche Répartition des données et traitements client serveur Certains traitements Au moins écran, souris … Les données pour partage Certains traitements Exemple : Navigateur IE5 Logiciel Access Navigateur IE5 ou Netscape Volume et format des données qui transitent Volume et format des contrôles qui transitent Volume et format des données qui transitent version 1.1 du 27 novembre 2005 Page WEB perso sur ensgi5 BD Access partagée sur ensgi5 BD MySQL partagée sur ensgi + php 11 Michel Tollenaere ENSGI 2A MSI - Démarche Répartition des données et traitements …. client Certains traitements Au moins écran, souris … serveurs de traitements Liens ODBC serveurs de fichiers version 1.1 du 27 novembre 2005 serveurs de données réparties 12 Michel Tollenaere ENSGI 2A MSI - Démarche Répartition des données et traitements …. client Traitement 1 Access SQL et formulaires • Table 1 • Table 2 • …… serveurs de fichiers : Gros volumes (edition, PAO, CAE, CFAO) version 1.1 du 27 novembre 2005 Traitement 2 Access Traitement n serveur WEB Liens ODBC • Table 11 • Table 12 • …… Données Access 13 Michel Tollenaere ENSGI 2A MSI - Démarche Architecture 3-tier, n-tier serveur WEB 1er-tier client …. Traitement 1 CRM 2nd-tier Traitement n SRM Traitement 2 Gestion de prod Liens ODBC serveurs de fichiers : Gros volumes (edition, PAO, CAE, CFAO) • Table 1 • Table 2 • …… • Table 11 • Table 12 • …… Données version 1.1 du 27 novembre 2005 3eme-tier 14 Michel Tollenaere ENSGI 2A MSI - Démarche Gestion de données, processus et fichiers Site 2 Contrôle des mécanismes de transfert FTP Site 1 Accès controlé par le SGBD central par un check-out SGBD métadonnées et processus Gestion centralisée des méta-données Réplication Serveur local de fichiers : Gros volumes (edition, PAO, CAE, CFAO) Réplication Serveur local de fichiers : Gros volumes (edition, PAO, CAE, CFAO) Serveur central de fichiers : Gros volumes (edition, PAO, CAE, CFAO) version 1.1 du 27 novembre 2005 15 Michel Tollenaere ENSGI 2A MSI - Démarche LES TECHNOLOGIES DU WEB 1. LES PHASES D ’UN DEPLOIEMENT DE RESEAUX 2. LE LANGAGE HTML 3. LE LANGAGE JAVASCRIPT 4. LE LANGAGE JAVA ET LES APPLETS 5. LES SERVLETS 6. L ’ACCES AUX BASES DE DONNEES VIA ODBC version 1.1 du 27 novembre 2005 16 Michel Tollenaere ENSGI 2A MSI - Démarche 1. LES PHASES D ’UN DEPLOIEMENT DE RESEAUX Source : « Lyon Consultants » INFRASTRUCTURE : RESEAU, MESSAGERIE, FORUMS, ACCES @ PUBLICATION D ’ INFORMATIONS STATIQUES Présentations des produits, Catalogues, Annuaires, Résultats etc PUBLICATION : INFORMATIONS DYNAMIQUES Connexion aux systèmes d ’informations de l ’entreprise : base produits, stocks TRAVAIL EN GROUPE : APPLICATIONS DE COMMUNICATION, DE COORDINATION OU DE COLLABORATION DE GROUPES Gestion des projets, gestion de la qualité, affectation des ressources, procédures élémentaires etc APPLICATION METIER : APPLICATIONS A COMPOSANTS REPARTIS Applications répondant à des logiques « métiers » utilisant une approche distribuée COMMERCE ELEC. : APPLICATIONS ACCESSIBLES AUX CLIENTS/FOURNISSEURS version 1.1 du 27 novembre 2005 17 Michel Tollenaere ENSGI 2A MSI - Démarche 2. LE LANGAGE HTML [1/2] LE LANGAGE HTML PERMET : - de définir la mise en page statique de différents éléments multimédias : textes, tableaux, images, sons etc - de définir le contenu « texte » de la page LE LANGAGE HTML NE PERMET PAS : - de dissocier mise en page et contenu d ’une page - d ’utiliser explicitement les ressources du client - d ’utiliser les ressources du serveur - d ’accéder directement aux informations disponibles sur le client ou sur le serveur <HTML> <HEAD> <TITLE>Annuaire du labo PL</TITLE> </HEAD> EN-TETE : permettant de déclarer le titre de la page, la langue, le jeu de caractères utilisé, les mots-clefs utilisés lors d ’une indexation par un moteur de recherche etc <BODY> <H3>voici la liste du personnel du laboratoire PL</H3> … CORPS : description de la mise en page et du contenu de la page </BODY> </HEAD> </HTML> version 1.1 du 27 novembre 2005 18 Michel Tollenaere ENSGI 2A MSI - Démarche 2. LE LANGAGE HTML [2/2] annuaire.html Scene.wrl Image.gif Requête : http://www.pl.ecp.fr/annuaire.htm recherche CLIENT SERVEUR Interpréteur HTML Plug-In Envoi de : annuaire.html version 1.1 du 27 novembre 2005 lecture 19 Michel Tollenaere ENSGI 2A MSI - Démarche 3. LE LANGAGE JAVASCRIPT [1/3] mini-applications Enrichissement de la page Pré-traitement des données NOM 1 Élément réactif à un survol + 2368.5 PRENOM ENVOI 2369.5 (avec contrôle des champs) Zône de texte défilante LE LANGAGE JAVASCRIPT PERMET : - d ’avoir accès à certaines variables d ’environnement du client : type de navigateur, historique de la connexion - de réaliser des traitements sur les éléments d ’un formulaire : contrôle d ’une entrée, concaténation - de réaliser des programmes avec tests, itération etc LE LANGAGE JAVASCRIPT NE PERMET PAS : - de définir des types de variables ou des structures de données - de définir des variables globales accessibles tout au long de la connexion (une variable est associée à une page) - d ’accéder directement aux ressources ou informations du client ou du serveur - n’est pas compatible avec TOUS les navigateurs version 1.1 du 27 novembre 2005 20 Michel Tollenaere ENSGI 2A MSI - Démarche 3. LE LANGAGE JAVASCRIPT [2/3] <HTML> <HEAD> <TITLE>Annuaire du labo PL</TITLE> <SCRIPT LANGUAGE=« JavaScript »> function traitement() { DECLARATION DE LA FONCTION … } </SCRIPT> </HEAD> <BODY> <H3>voici la liste du personnel du laboratoire PL</H3> ... <INPUT TYPE=« button » VALUE=« ENVOYER » ONCLICK=« traitement() »> APPEL DE LA FONCTION GRÂCE A UN ELEMENT HTML ... </BODY> </HEAD> </HTML> version 1.1 du 27 novembre 2005 21 Michel Tollenaere ENSGI 2A MSI - Démarche 3. LE LANGAGE JAVASCRIPT [3/3] Envoi de : calcul.html Requête : http://www.pl.ecp.fr/calcul.htm recherche CLIENT SERVEUR Interpréteur HTML Interpréteur JavaScript lecture Envoi de : calcul.html version 1.1 du 27 novembre 2005 22 Michel Tollenaere ENSGI 2A MSI - Démarche 4. LE LANGAGE JAVA [1/4] CLASSE JAVA « COMPILATEUR JAVA » FICHIER « PRE- COMPILE » MACHINE VIRTUELLE JAVA MACHINE VIRTUELLE JAVA MACHINE VIRTUELLE JAVA WINDOWS MAC - OS UNIX PC MAC SUN version 1.1 du 27 novembre 2005 23 Michel Tollenaere ENSGI 2A MSI - Démarche 4. LE LANGAGE JAVA [2/4] applications 1 + Enrichissement de la page ANIMATION 2368.5 2369.5 LE LANGAGE JAVA EST : - un langage orienté objet dérivé du C++ (mais pas d’héritage multiple, pas d’arithmétique sur les pointeurs) - un langage sécurisé UNE APPLET JAVA NE PERMET PAS : - d ’accéder directement aux ressources ou informations du client ou du serveur version 1.1 du 27 novembre 2005 24 Michel Tollenaere ENSGI 2A MSI - Démarche 4. LE LANGAGE JAVA [3/4] <HTML> <HEAD> <TITLE>Annuaire du labo PL</TITLE> </HEAD> <BODY> … <APPLET CODE=« courbe.class » WIDTH=200 HEIGHT =50> </APPLET> APPEL DE L ’APPLET DEFINIE DANS LE FICHIER COURBE.CLASS ... </BODY> </HEAD> </HTML> version 1.1 du 27 novembre 2005 25 Michel Tollenaere ENSGI 2A MSI - Démarche 4. LE LANGAGE JAVA [4/4] Requête : http://www.pl.ecp.fr/courbe.htm calcul.html courbe.class recherche CLIENT SERVEUR Interpréteur HTML Machine virtuelle java lecture Envoi de : calcul.html courbe.class version 1.1 du 27 novembre 2005 26 Michel Tollenaere ENSGI 2A MSI - Démarche 5. LES SERVLETS JAVA [1/2] Index.shtml Requête : http://www.pl.ecp.fr/index.shtml compteur.class recherche CLIENT SERVEUR Interpréteur HTML Envoi de : page générée par compteur.cgi Génération d ’une page Execution sur machine virtuelle version 1.1 du 27 novembre 2005 27 Michel Tollenaere ENSGI 2A MSI - Démarche 5. LES SERVLETS JAVA [2/2] <HTML> <HEAD> <TITLE>Annuaire du labo PL</TITLE> </HEAD> <BODY> … <SERVLET NAME=« compteur.class »> <PARAM NAME=« numero » VALUE=« 1 »> </SERVLET> ... APPEL DE LA SERVLET COMPTEUR.CLASS PRESENTE SUR LE SERVEUR </BODY> </HEAD> </HTML> LES SEVLETS JAVA PERMETTENT : - d ’accèder aux paramètres de la connexion : numéro IP, types MIME supportés etc - d ’utiliser les ressources du serveur - de définir des applications multi-plateformes - de prendre en charge les problèmes de sécurité LES SERVLES JAVA NE PERMETTENT PAS: - d ’utiliser les ressources ou informations du client version 1.1 du 27 novembre 2005 28 Michel Tollenaere ENSGI 2A MSI - Démarche 6. L ’ACCES AUX BASES VIA ODBC [1/2] base.shtml Requête : http://www.pl.ecp.fr/base.shtml dbCollect.class recherche CLIENT SERVEUR Interpréteur HTML Envoi de : page générée par Génération d ’une page dbCollect.class Execution sur machine virtuelle PILOTE ODBC BASE DE DONNEES version 1.1 du 27 novembre 2005 29 Michel Tollenaere ENSGI 2A MSI - Démarche 6. L ’ACCES AUX BASES VIA ODBC [2/2] <HTML> <HEAD> <TITLE>Annuaire du labo PL</TITLE> </HEAD> <BODY> … <SERVLET NAME=« dbCollect »> <PARAM NAME=« DBNAME » VALUE=«jdbc:odbc:mabase» > <PARAM NAME=« TABLE> VALUE=« matable »> </SERVLET> ... APPEL DE LA SERVLET COMPTEUR.CLASS PRESENTE SUR LE SERVEUR </BODY> </HEAD> </HTML> LES PILOTES ODBC PERMETTENT : - de consulter ou de modifier des bases via des requêtes SQL - de créer des applications portables (Oracle & Access proposent des pilotes ODBC) version 1.1 du 27 novembre 2005 30 Michel Tollenaere ENSGI 2A MSI - Démarche 7. Environnement PHP / MySQL Logiciels libres permettant le développement de contenus accessibles en Internet/ Intranet version 1.1 du 27 novembre 2005 Bibliothèques Scripts [527] Administration BDD [23] Agenda / Calendrier [9] Annuaire de liens [19] Audio [2] Authentification [14] Bannières [9] Cartes Postales [2] Chat [9] Clients Mail [5] Commentaires [3] Compteurs [42] Convertisseurs [5] Dates / Heures [11] Divers [29] E-Commerce [6] Education [2] FAQ / Docs [6] Formulaires / Email [21] Forums [38] Galeries / Images [27] Gestion [21] Gestion de fichiers / FTP [16] Groupware [4] ICQ [4] Jeux / Détente [8] Librairies / Classes [25] Livres d'or [25] MailingList / NewsLetter [11] Menus [5] Messageries internes [3] Moteurs de recherche [14] News [32] Petites Annonces [5] Portails [23] Recommander un site [5] Sondage / Vote [21] Statistiques [12] Top Sites [7] Vidéo [2] Web Rings [2] 31 Michel Tollenaere ENSGI 2A MSI - Démarche 7. Environnement PHP / MySQL version 1.1 du 27 novembre 2005 32 Michel Tollenaere ENSGI 2A MSI - Démarche version 1.1 du 27 novembre 2005 33 Michel Tollenaere ENSGI 2A MSI - Démarche version 1.1 du 27 novembre 2005 34 Michel Tollenaere ENSGI 2A MSI - Démarche Gestion du projet (4h TD, 8h TP) • Livrables (quoi, quand) • Ressources (2 étudiants/projet) version 1.1 du 27 novembre 2005 35 Michel Tollenaere ENSGI 2A MSI - Démarche Cycle de vie d’un projet S.I. Etapes ou phases 1 Analyse de la demande 2 Spécification projet Documents Schéma directeur Dossier d ’étude préalable Etude d ’ opportunité Dossier de planification 3 Conception générale 4 Conception détaillée Dossier de conception Dossier de conception fonctionnelle détaillée Dossier de Dossier conception d ’architecture technique détaillée Capture des besoins 5 Réalisation 6 Mise en oeuvre Déploiement 7 Maintenance Temps Code Manuels utilisateurs Formation - Tutorat Décisions Accord sur l’inscription du projet Choix d’une organisation du projet Accord sur les procédures, l ’architecture ... version 1.1 du 27 novembre 2005 Recette logicielle Réception système 36 Michel Tollenaere ENSGI 2A MSI - Démarche Cycle en V dans le développement d’un SI Branche conception Branche réalisation Etude d’opportunité Plan de tests en service Mise en charge Spécifications de domaine Spécification Plan de tests de recette Spécifications Conceptuelles Conception générale Plan de tests d ’intégration Spécifications Logiques Conception détaillée Plan de tests unitaires Validation Intégration Tests unitaires Dossiers de validation Spécications Techniques de Réalisation Codage des modules version 1.1 du 27 novembre 2005 37 Michel Tollenaere ENSGI 2A MSI - Démarche Exemples : Quelques diagrammes Système (VEGA2) cas d'utilisation : acteur (intéragissant avec VEGA2) Cas d’utilisation message une fonctionnalité attendue du système (VEGA2) par les différents acteurs. message message Diagramme de Classes message objet 1 Diagramme de séquence lien exprimant que "objet 2 est une sorte de objet 1" objet 2 lien exprimant que "objet 2 a une relation avec objet 4" Chaque cas d'utilisation apparaît comme un scénario, décrit par un ou plusieurs diagrammes de séquence. objet 4 lien exprimant que "objet 2 est composé de objet 3" objet 3 version 1.1 du 27 novembre 2005 Un diagramme de séquences montre les interactions entre les acteurs et le système selon un point de vue temporel pour accomplir une fonctionnalité attendue du système (un cas d ’utilisation). C’est une ensemble de messages échangés entre les acteurs et le système, ordonnés chronologiquement. 38 Michel Tollenaere ENSGI 2A MSI - Démarche Modèles de cycle de développement • Cycle en V • RAD version 1.1 du 27 novembre 2005 39 Michel Tollenaere ENSGI 2A MSI - Démarche version 1.1 du 27 novembre 2005 40 Michel Tollenaere ENSGI 2A MSI - Démarche Cycle en V dans le développement d’un SI Branche conception Spécifications de domaine Branche réalisation Etude d’opportunité Plan de tests en service Spécification Plan de tests de recette Spécifications Conceptuelles Conception générale Spécifications Logiques SQL Plan de tests d ’intégration Conception détaillée Spécications Techniques de Réalisation version 1.1 du 27 novembre 2005 Mise en charge Plan de tests unitaires Validation Intégration Tests unitaires Dossiers de validation Codage des modules 41 Michel Tollenaere ENSGI 2A MSI - Démarche version 1.1 du 27 novembre 2005 42 Michel Tollenaere ENSGI 2A MSI - Démarche version 1.1 du 27 novembre 2005 43 Michel Tollenaere ENSGI 2A MSI - Démarche version 1.1 du 27 novembre 2005 44 Michel Tollenaere ENSGI 2A MSI - Démarche version 1.1 du 27 novembre 2005 45 Michel Tollenaere ENSGI 2A MSI - Démarche Exemple : gestion de ressources, salles, etc…. Les rôles : • utilisateur de ressources (avec possibilité de réservation) • programmateur de maintenance • utilisateur de ressources disponibles • gestionnaire des utilisateurs, des priorités et des droits Les cas d’utilisation : • réserver type de ressources (dates, heures) • recopie d’une demande de réservation version 1.1 du 27 novembre 2005 46 Michel Tollenaere