Compléments sur Le M.O.T. modèle organisationnel de traitement 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
Modèle Organisationnel de Traitements (MOT) de Merise 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 ?)
MCT de Merise : Modèle conceptuel de traitement 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
évènements d’évolution 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
ENSGI 2A MSI - Démarche
Complémentarité MOT / diagramme états transitions ENSGI 2A MSI - Démarche Complémentarité MOT / diagramme états transitions
Architecture des SI répartition des traitements Interfaces Html ENSGI 2A MSI - Démarche Architecture des SI répartition des traitements Interfaces Html Base de données et Internet client / serveur
serveur de traitements ENSGI 2A MSI - Démarche Architecture des SI serveur de traitements poste client Réseaux poste client serveur de données
Authentification des utilisateurs ENSGI 2A MSI - Démarche Architecture des SI Internet Sécurité ? poste client Intranet / Internet serveur de données poste client ou système propriétaire ? Ldap Authentification des utilisateurs
Authentification des utilisateurs 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 serveur de données poste client Ldap Authentification des utilisateurs
Répartition des données et traitements 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 : Volume et format des données qui transitent Navigateur IE5 Page WEB perso sur ensgi5 Volume et format des contrôles qui transitent Logiciel Access BD Access partagée sur ensgi5 Volume et format des données qui transitent Navigateur IE5 ou Netscape BD MySQL partagée sur ensgi + php
Répartition des données et traitements 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 serveurs de données réparties
Répartition des données et traitements ENSGI 2A MSI - Démarche Répartition des données et traitements client …. Traitement 2 Access Traitement n serveur WEB Traitement 1 Access SQL et formulaires Liens ODBC Table 1 Table 2 …… Table 11 Table 12 …… serveurs de fichiers : Gros volumes (edition, PAO, CAE, CFAO) Données Access
Architecture 3-tier, n-tier ENSGI 2A MSI - Démarche Architecture 3-tier, n-tier serveur WEB 1er-tier client …. 2nd-tier Traitement 1 CRM Traitement n SRM Traitement 2 Gestion de prod Comment partager les gros fichiers ? Liens ODBC serveurs de fichiers : Gros volumes (edition, PAO, CAE, CFAO) 3eme-tier Table 1 Table 2 …… Table 11 Table 12 …… Données
Gestion de données, processus et fichiers ENSGI 2A MSI - Démarche Gestion de données, processus et fichiers Site 2 Accès controlé par le SGBD central par un check-out Contrôle des mécanismes de transfert FTP Site 1 SGBD métadonnées et processus Gestion centralisée des méta-données Réplication Réplication Réplication à la demande Réplication à la demande Serveur local de fichiers : Gros volumes (edition, PAO, CAE, CFAO) Serveur local de fichiers : Gros volumes (edition, PAO, CAE, CFAO) Serveur central de fichiers : Gros volumes (edition, PAO, CAE, CFAO)
LES TECHNOLOGIES DU WEB 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
1. LES PHASES D ’UN DEPLOIEMENT DE RESEAUX 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
2. LE LANGAGE HTML [1/2] LE LANGAGE HTML PERMET : 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> <BODY> <H3>voici la liste du personnel du laboratoire PL</H3> … </BODY> </HTML> 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 CORPS : description de la mise en page et du contenu de la page
2. LE LANGAGE HTML [2/2] CLIENT SERVEUR annuaire.html Scene.wrl 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 lecture Envoi de : annuaire.html
3. LE LANGAGE JAVASCRIPT [1/3] 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 PRENOM + 2368.5 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
3. LE LANGAGE JAVASCRIPT [2/3] ENSGI 2A MSI - Démarche 3. LE LANGAGE JAVASCRIPT [2/3] <HTML> <HEAD> <TITLE>Annuaire du labo PL</TITLE> <SCRIPT LANGUAGE=« JavaScript »> function traitement() { … } </SCRIPT> </HEAD> <BODY> <H3>voici la liste du personnel du laboratoire PL</H3> ... <INPUT TYPE=« button » VALUE=« ENVOYER » ONCLICK=« traitement() »> </BODY> </HTML> DECLARATION DE LA FONCTION APPEL DE LA FONCTION GRÂCE A UN ELEMENT HTML
3. LE LANGAGE JAVASCRIPT [3/3] 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
FICHIER « PRE- COMPILE » 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
Enrichissement de la page ENSGI 2A MSI - Démarche 4. LE LANGAGE JAVA [2/4] applications Enrichissement de la page 1 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
4. LE LANGAGE JAVA [3/4] <HTML> <HEAD> 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> ... </BODY> </HTML> APPEL DE L ’APPLET DEFINIE DANS LE FICHIER COURBE.CLASS
4. LE LANGAGE JAVA [4/4] CLIENT SERVEUR calcul.html courbe.class ENSGI 2A MSI - Démarche 4. LE LANGAGE JAVA [4/4] calcul.html courbe.class Requête : http://www.pl.ecp.fr/courbe.htm recherche CLIENT SERVEUR Interpréteur HTML Machine virtuelle java lecture Envoi de : calcul.html courbe.class
5. LES SERVLETS JAVA [1/2] CLIENT SERVEUR Index.shtml compteur.class ENSGI 2A MSI - Démarche 5. LES SERVLETS JAVA [1/2] Index.shtml compteur.class Requête : http://www.pl.ecp.fr/index.shtml 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
5. LES SERVLETS JAVA [2/2] <SERVLET NAME=« compteur.class »> 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> ... </BODY> </HTML> APPEL DE LA SERVLET COMPTEUR.CLASS PRESENTE SUR LE SERVEUR 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
6. L ’ACCES AUX BASES VIA ODBC [1/2] ENSGI 2A MSI - Démarche 6. L ’ACCES AUX BASES VIA ODBC [1/2] base.shtml dbCollect.class Requête : http://www.pl.ecp.fr/base.shtml recherche CLIENT SERVEUR Interpréteur HTML Envoi de : page générée par dbCollect.class Génération d ’une page Execution sur machine virtuelle PILOTE ODBC BASE DE DONNEES
6. L ’ACCES AUX BASES VIA ODBC [2/2] 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> ... </BODY> </HTML> APPEL DE LA SERVLET COMPTEUR.CLASS PRESENTE SUR LE SERVEUR 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)
7. Environnement PHP / MySQL ENSGI 2A MSI - Démarche 7. Environnement PHP / MySQL Bibliothèques Logiciels libres permettant le développement de contenus accessibles en Internet/ Intranet 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]
7. Environnement PHP / MySQL ENSGI 2A MSI - Démarche 7. Environnement PHP / MySQL
ENSGI 2A MSI - Démarche
ENSGI 2A MSI - Démarche
Gestion du projet (4h TD, 8h TP) ENSGI 2A MSI - Démarche Gestion du projet (4h TD, 8h TP) Livrables (quoi, quand) Ressources (2 étudiants/projet)
Cycle de vie d’un projet S.I. ENSGI 2A MSI - Démarche Cycle de vie d’un projet S.I. 1 Analyse de la demande 2 Spécification projet 3 Conception générale 4 Conception détaillée 5 Réalisation 6 Mise en oeuvre Déploiement 7 Maintenance Etapes ou phases Temps Schéma directeur Dossier d ’étude préalable Dossier de conception Dossier de conception fonctionnelle détaillée Code Documents Etude d ’ opportunité Dossier de planification Dossier d ’architecture Dossier de conception technique détaillée Manuels utilisateurs Capture des besoins Formation - Tutorat Décisions Accord sur l’inscription du projet Accord sur les procédures, l ’architecture ... Choix d’une organisation du projet Recette logicielle Réception système
Cycle en V dans le développement d’un SI 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 Plan de tests de recette Validation Spécification Spécifications Conceptuelles Plan de tests d ’intégration Conception générale Intégration Spécifications Logiques Plan de tests unitaires Conception détaillée Tests unitaires Dossiers de validation Spécications Techniques de Réalisation Codage des modules
Exemples : Quelques diagrammes ENSGI 2A MSI - Démarche Exemples : Quelques diagrammes : acteur (intéragissant avec VEGA2) Système (VEGA2) message Cas d’utilisation une fonctionnalité attendue du système (VEGA2) par les différents acteurs. Diagramme de Classes Diagramme de séquence Chaque cas d'utilisation apparaît comme un scénario, décrit par un ou plusieurs diagrammes de séquence. 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.
Modèles de cycle de développement ENSGI 2A MSI - Démarche Modèles de cycle de développement Cycle en V RAD
ENSGI 2A MSI - Démarche
Cycle en V dans le développement d’un SI 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 Plan de tests de recette Validation Spécification Spécifications Conceptuelles Plan de tests d ’intégration Conception générale Intégration I.H.M. Plan de tests unitaires Conception détaillée Tests unitaires Dossiers de validation Spécifications Logiques Spécications Techniques de Réalisation Codage des modules SQL
ENSGI 2A MSI - Démarche
ENSGI 2A MSI - Démarche
ENSGI 2A MSI - Démarche
ENSGI 2A MSI - Démarche
Exemple : gestion de ressources, salles, etc…. 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