Académique Documents
Professionnel Documents
Culture Documents
Cours dAnalyse et Conception des Systmes dInformation (dOutils et Modles pour le Gnie Logiciel)
7 novembre 2007 Olivier Guibert
Plan
Bibliographie Dfinitions Intervenants Cycles de vie du logiciel Taxinomie des mthodes dinformatisation Dmarche Modles Mthodes et langages de modlisation + Gestion de Projet, Qualit, Interface HommeMachine, etc.
Bibliographie
Bibliographie : systmique
J-L. LE MOIGNE, Les systmes d'information dans les organisations, Presses Universitaires de France, 1973 J-L. LE MOIGNE, Les systmes de dcision dans les organisations, Presses Universitaires de France, 1974 J-L. LE MOIGNE, La thorie du systme gnral - Thorie de la modlisation, Presses Universitaires de France, 1977 J. MLSE, Analyse modulaire des systmes, ditions Hommes et Techniques, 1977 J. MLSE, Approche systmique des organisations, ditions Hommes et Techniques, 1979
Bibliographie : MERISE
CGI (Compagnie Gnrale d'Informatique), MERISE ou l'informatique avec mthode, Nathan, 1986 H. TARDIEU, A. ROCHFELD et R. COLLETTI, La mthode MERISE, tome 1 : principes et outils, Les ditions d'Organisation, 1983 H. TARDIEU, A. ROCHFELD, R. COLLETTI, G. PANET et G. VAHEE, La mthode MERISE, tome 2 : dmarches et pratiques, Les ditions d'Organisation, 1985 A. ROCHFELD et J. MOREJON, La mthode MERISE, tome 3 : gamme opratoire, Les ditions d'Organisation, 1989 G. PANET et R. LETOUCHE, MERISE/2, modles et techniques MERISE avancs, Les ditions d'Organisation, 1994 D. NANCI et B. ESPINASSE, Ingnierie des Systmes dInformations : MERISE Deuxime gnration, Vuibert, 2001
Bibliographie : SADT
D. T. ROSS, Structured Analysis : A language for Communicating Ideas, IEEE Transactions, Software engineering, vol. SE-3, n 1 D. T. ROSS et K. E. SCHOMAN, Structured Analysis for Requirements Definition, IEEE Transactions, Software engineering , vol. SE-3, n 1 IGL Technology, SADT, un langage pour communiquer, Eyrolles, 1989, 1993 (3me dition) M. LISSANDRE, Matriser SADT, Colin, 1990 P. JAULENT, Gnie logiciel : les mthodes, Armand Colin, 1990
Bibliographie : UML
P.-A. MULLER, Modlisation objet avec UML, Eyrolles, 1998 C. MORLEY, B. LEBLANC et J. HUGUES, UML pour l'analyse d'un systme d'information Le cahier des charges du matre d'ouvrage, Dunod, 2000 C. SOUTOU, Objet-Relationnel sous Oracle8, Modlisation avec UML, Eyrolles, 1999 P. ROQUES et F. VALLE, UML en action De lanalyse des besoins la conception en Java, Eyrolles, 2000 M. LAI, Penser objet avec UML et Java, Interditions, 1998 M. LAI, UML : La notation unifie de modlisation objet De Java aux EJB, Dunod, 2000 G. BOOCH, J. RUMBAUGH et I. JACOBSON, The Unified Modeling Language User Guide, Addison-Wesley, 1999 I. JACOBSON, G. BOOCH et J. RUMBAUGH, The Unified Software Development Process, Addison-Wesley, 1999 J. RUMBAUGH, I. JACOBSON et G. BOOCH, The Unified Modeling Language Reference Manual, Addison-Wesley, 1999
Bibliographie : B
M. SPIVEY, La notation Z, Masson - Prentice Hall, 1992 D. LIGHTFOOT, Spcification formelle avec Z, TEKNEA, 1994 J.-R. ABRIAL, The B-book: Assigning Programs to Meanings, Cambridge University Press, 1996 J.-R. ABRIAL, Introduction la mthode B, 6 vido-cassettes, IUT de Nantes J.-R. ABRIAL, La mthode B - tudes de cas, 6 vido-cassettes, IUT de Nantes H. HABRIAS, Introduction la spcification, Masson, 1993 H. HABRIAS, Spcification formelle avec B, ditions Herms Lavoisier, 2001
Dfinitions
Dfinitions : OMGL
OMGL = Outils et Modles pour le Gnie Logiciel Outil : logiciel supportant une mthode Modle : reprsentation schmatique de la ralit Logiciel selon l'arrt du 22 dcembre 1981 : ensemble des programmes, procds et rgles, et ventuellement de la documentation, relatifs au fonctionnement d'un ensemble de traitements de l'information Gnie Logiciel (ou l'ingnierie des systmes d'information) selon l'arrt du 30 dcembre 1983 : ensemble des activits de conception et de mise en uvre des produits et des procdures tendant rationaliser la production du logiciel et de son suivi
Dfinitions : ACSI
ACSI = Analyse et Conception des Systmes d'Information Analyse : processus d'examen de l'existant Conception : processus de dfinition de la future application informatique Systmes d'Information : ensemble des moyens (humains et matriels) et des mthodes se rapportant au traitement de l'information d'une organisation
Dfinitions : BD
BD = Bases de Donnes Bases de Donnes [dfinition des informaticiens] : ensemble des donnes (de l'organisation) structures et lies entre elles :
stock sur support accs direct (disque magntique) gr par un SGBD (Systme de Gestion de Bases de Donnes) accessible par un ensemble d'applications
Dfinitions (complments)
Informatique : science du traitement automatique et rationnel de l'information [acadmie franaise, 1966] Informatique de Gestion : informatisation des systmes d'information AGL = Atelier de Gnie Logiciel (CASE = Computer Aided Software Engineering) : ingnierie du logiciel assist par ordinateur
Cohrence (dunit, de temps, etc.) Rentabilit : cot dobtention gain, meilleur service
Types d'information
Niveau d'agrgation
brutes labores
Flux
logistique montaire de personnel de l'actif
Utilisation
planification stratgique gestion administrative rgulation oprationnelle
Nature du support
oral documentaire informatique
Dfinitions : systmique
Analyse systmique : analyse qui envisage les lments d'une conformation complexe, les faits (notamment les faits conomiques), non pas isolment mais globalement, en tant que parties intgrante d'un ensemble dont les diffrents composants sont dans une relation de dpendance rciproque [P.L.I. 2003] Neuf niveaux imbriqus de complexit selon cette thorie : l'objet passif, l'objet actif, l'objet actif rgul, l'objet s'informe, l'objet dcide son activit, l'objet actif a une mmoire, l'objet actif se coordonne, l'objet actif imagine (et donc s'auto-organise), l'objet actif s'auto-finalise L'organisation correspond au dernier niveau
Dfinitions : systme
Systme : ensemble d'lments en interaction dynamique, dont les lments sont organiss et coordonns en vue d'atteindre un objectif, qui volue dans un environnement
Systme d'Information
Intermdiaire entre les systmes de dcision et oprationnel, par qui transite toute information :
mmorise linformation (conservation de l'information pour des besoins ultrieurs), traite linformation (rapprochements, calculs, comparaisons), fait circuler linformation (accs la mmoire, change entre acteurs)
Remarque : un mme employ peut tre un acteur de chacun des trois sous-systmes
systme dinformation
Traitement
Demandes de traitements issues de lchange entre le systme informatique et son environnement Pilotage des traitements proposs par le systme informatique en grant les appels aux processus permettant de les raliser
Mmorisation
Gestion des donnes par diffrents modes daccs (et stockage aux niveaux logique et physique)
Qualit
Informatique de management
Systme dcisionnel Plus rcent Forte complexit des traitements Consultation en temps partag Information significative, rapidement disponible SQL
Intervenants
Expertise
Administrateur ou expert en systme (dexploitation), rseau, base de donnes, mthodes, qualit, scurit, technologies diverses
tudes - Dveloppement
Chef de projet ; Analyste ; Concepteur ; Dveloppeur (ou programmeur)
Production - Exploitation
Oprateur - Pupitreur ; Analyste dexploitation ; Contrleur rseau ; Technicien (micro-informatique, rseau, messagerie, tlphonie)
Support et assistance
Assistant technique clientle Autre mtier : Consultant en systmes d'information
Dveloppement
Ralisation de modules (objets et composants logiciels) ; Assemblage de ces lments ; Rdaction de documentations ; Industrialisation de composants et dapplications
Qualification
laboration de jeux dessais (tests unitaires dintgration) ; Tests ; Identification et traitement des dysfonctionnements
Maintenance
Maintenance corrective ; Maintenance volutive ; Administration des composants logiciels rutilisables et gestion de la nomenclature de ces composants
Matrise
Conception, modlisation et architecture dapplications [Conception] Algorithmique [Dveloppement] Techniques de dveloppement (maquettage et prototypage, client-serveur, objet, RAD) [Dveloppement] Charte dutilisation et de scurit des SI [Scurit informatique]
Notions
Architecture de systmes dexploitation [Architecture technique] Administration de bases de donnes [Gestion de donnes Bases de donnes] Intgration de systmes dexploitation [Intgration] Environnements dexploitation [Production - Exploitation] Logiciels et matriels rseaux [Tlcom - Rseaux]
Application
Comprhension des clients de la DSI (utilisateurs fonctionnels) et de leurs besoins [Connaissances des mtiers de lentreprise] Techniques de lassurance qualit [Qualit] Capacit rdactionnelle [Savoirs de base]
Notions
Culture gnrale I&T [Connaissances des mtiers de lentreprise] Pratique de langlais technique lu, crit et parl [Langue]
Utile
Logique [Comptences de rsolution de problmes] Adaptabilit [Comptences defficacit personnelle] Gestion de situation [Comptences defficacit personnelle] Pragmatisme [Comptences defficacit personnelle] coute et communication [Comptences relationnelles] Travail en quipe [Comptences relationnelles]
Cycle de vie
Critiques :
Recouvrement de phases Avances et retours dune seule phase du cycle de dveloppement la fois Impact de la maintenance sur toutes les phases du dveloppement Contacts avec lutilisateur restreints la phase danalyse
Cycles de dveloppement en V
Systme signifie ici systme d'information (manuel et informatis) Modle de l'AFCIQ (Association Franaise pour le Contrle Industriel de Qualit) avec le vocabulaire suivant : Spcification fonctionnelle \ Conception prliminaire \ Conception dtaille \ Codage / Tests unitaires / Tests d'intgration / Recette
Cycles de dveloppement en M
Cycles de dveloppement en W
Maquette : dfilement d'crans donnant une ide de ce que sera la future application (sans accs aux donnes) Les maquettes sont labores par les informaticiens et valides par les utilisateurs Avantages du maquettage
Gain de temps sur les phases en aval (2nd V) Limitation des erreurs lors de la recette
Chiffres : cot moyen relatif de chaque phase (du cycle de dveloppement du logiciel) pour une application de gestion
Analyse et Conception : Ralisation : Tests : 44 % 28 % 28 %
Chiffres : cot relatif de correction d'une erreur selon la phase (du cycle de vie du logiciel) au cours de laquelle elle a t dtecte
Analyse : 1 Conception : 2 Ralisation : 5 Tests : 10 Exploitation et Maintenance : plus de 100 Remarque : plus de 80 % des erreurs sont introduites durant les phases d'analyse et de conception Les cots de la maintenance corrective (ni adaptative, ni volutive) peuvent aller jusqu' deux fois ceux du dveloppement
Exemple pathologique (systme avionique) : cot de dveloppement de 30$ par instruction mais cot de maintenance de 4000$ par instruction
Chiffres divers
Productivit moyenne d'un programmeur d'une application de gestion simple : moins de 600 lignes de code par mois Application moyenne (en 1985) : 100 000 lignes de code pour 600 000
Ex. : suivi de production pour 3000 personnes, entreprise commerciale de 2 milliards de chiffre d'affaires
Mthode d'informatisation
Quatrime gnration ?
Intgration des technologies orientes objets, client/serveur
Partiel
Description et ordonnancement de travaux relativement une dmarche d'informatisation partielle Ex. : CORIG pour la conception et la ralisation du systme informatique, SADT et IA-NIAM pour la conception du systme d'information et du systme informatique
Global
Processus d'informatisation complet (de l'introduction de l'informatique dans une organisation la maintenance des applications) : description et ordonnancement de tous les travaux Ex. : MERISE, AXIAL, SSADM, OOA, HOOD, OMT, OOSE, B
Non linaire
Analyse ascendante par intgration progressive des rsultats
Descendante
Recensement des informations du systme d'information existant (sans oubli ni rptition) et des nouvelles fonctionnalits des utilisateurs Ex. : CORIG, MERISE, etc. (la plupart des mthodes actuelles)
MERISE et MERISE/2 (Mthode d'tude et de ralisation informatique pour les systmes dentreprise)
H. TARDIEU pour Sma-Matra et Gamma International, France, 1983 Informatisation complte
Z
D. LIGHTFOOT, 1992 Conception du systme d'information et du systme informatique N. B. : cest un langage de notation et non pas une mthode
B
H. HABRIAS, 1993
Dmarche
Analyse fonctionnelle
Conception (modles de communication, des traitements et des donnes) Validation schma conceptuel
Analyse organique
Progiciel ou Dveloppement spcifique solution informatique
Reprsentation
Validation
Dmarche : collecte
Objectif : recueillir et slectionner les informations intressantes (i.e. pertinentes) parmi toutes les informations vues (i.e. observes) ou entendues (via entretiens) Informations recueillir
Nature, volume, frquence, prcision observe ou requise, dure de vie, anciennet, etc. Exemplaires vierges et renseigns
Informations de type
Dynamique : circulation des documents dans lespace (ex. : diagramme de circulation des documents ou de linformation, diagramme de flots de donnes) et dans le temps (calendrier, temps des traitements, dlai de circulation, etc.) De transformation : procdure de traitement, rgle de gestion, enchanement des tches, formule de calcul, condition de dclenchement des traitements Statique : donnes lmentaires (ex. : dictionnaire des donnes) et documents (fiches de rubriques/fichiers/documents), services et postes de travail (ex. : organigramme, fiche de fonction)
Remarques
Il existe des tches spares dont la collecte est commune, et inversement une tche peut ncessiter des collectes spares Avances ou retour en arrire possibles Il ne s'agit que d'un ordonnancement possible
Dmarche : collecte (ordonnancement des tches montrant les contraintes et dsirs de l'organisation future)
Rcapitulation des moyens et ressources utiliss et des contraintes (dure, dlai, frquence, volume, cot, rglementation, ergonomie) 10. Rcapitulation des demandes d'information et des critiques formules par le personnel consult 11. Contrle du travail effectu i.e. des lments du systme d'information existant rpertoris au cours de l'analyse 9.
Solutions informatises
Dfinition des tches devant tre automatises Dcoupage en projets d'automatisation homognes et relativement indpendants, en faisant apparatre les priorits de ralisation
Objectif
Dfinir les besoins en matriel et en logiciel du futur systme informatique (pour permettre de choisir l'une des solutions) afin d'tablir un contrat entre utilisateurs et informaticiens
Dmarche : conception
Reprsentation de la communication au sein de l'organisation Reprsentation de l'ensemble des traitements
Modlisation des traitements avec leurs conditions d'activation, leurs rgles d'utilisation et de transformation, leur enchanement, etc.
Statique : description d'un traitement Dynamique : spcification des conditions dexcution (vnement dclencheur) et denchanement (en squence, en parallle, convergent, etc.) de traitements pour caractriser le comportement du systme
Dmarche : validation
Validation formelle des traitements et des
donnes
Compltude des traitements
Lensemble des traitements dcrits correspondent la dfinition
Dmarche : validation
Synthse des diffrents schmas (de communication, des traitements, des donnes) garantissant la cohrence du schma conceptuel
1. Toute communication s'appuie (si besoin) sur un traitement 2. Tous les traitements assurent les communications de l'organisation avec son environnement et en son sein 3. Aucun traitement ne fait rfrence une donne nexistant pas 4. Toutes les donnes sont manipules par au moins un traitement
Communication 1 2 Traitements 3 4 Donnes
Dmarche : validation
Confrontation avec les utilisateurs
Dveloppement spcifique
Solution parfaitement adapte aux besoins Deux approches : traditionnelle ou gnie logiciel Deux tapes
tape logique : choix d'organisation (Qui fera quoi ? O ? Quand ?) tape physique : choix techniques (Comment : avec quels moyens matriels et logiciels ?)
Implmenter les traitements : dcomposition modulaire Implmenter les donnes : donnes transitoires et permanentes Mthode : programmation descendante, objet
Utilisateur
Mode demploi pour un produit sur mesure (manuel utilisateur) : prcis, technique, sans fioritures Communication pour un produit grand public : rdig par des professionnels
Modles
Modles : modlisation
Problme de la ralit : flou, difficile apprhender, etc. Deux types derreurs : ralit omise et schma prenant en compte davantage que la ralit Rarement un seul modle (union de modles)
Simplifier la ralit Ne prsenter quun aspect du problme Permettre de mieux comprendre un problme complexe Permettre de communiquer les connaissances
Standard Prcis Simple Cohrent
Types de modles
De communication, des traitements ou de donnes Statique ou dynamique
Problme des zones variables (zro, une ou plusieurs valeurs) engendrant des difficults de stockage efficace
Ex. : les voitures des tudiants
Problme de redondance
Ex. : intitul complet des diplmes
Quelques modles
Actigramme Algbre relationnelle Arbre de dcomposition fonctionnel Calcul relationnel Cycle de vie d'un objet Datagramme Diagramme dactivits Diagramme dtats-transitions Diagramme dobjets Diagramme de cas dutilisation Diagramme de circulation de l'information Diagramme de circulation des documents Diagramme de classes Diagramme de collaboration Diagramme de communication Diagramme de composants Diagramme de dploiement Diagramme de flots de donnes
Quelques modles
Diagramme de flots d'vnements entre classes Diagramme de flots d'vnements entre objets Diagramme de squence Diagramme de structure Diagramme de structures composites Diagramme de suivi d'vnements Diagramme de temps Diagramme des paquetages Diagramme d'tats (structur) Diagramme global d'interaction Fiche de description de fonction Fiches de description de document Fiches de description de fichier Fiches de description de rubrique Graphe acteurs-flux Grille d'analyse des rubriques Logique des propositions et des prdicats Machine abstraite
Quelques modles
Modle conceptuel des traitements Modle conceptuel des traitements analytique Modle de flux (modle de contexte, modle de flux conceptuel, modle de flux organisationnel) Modle dynamique Modle entits-associations (ou modle conceptuel des donnes) Modle fonctionnel Modle logique des donnes Modle logique des donnes rparties Modle logique des traitements (guidage fonctionnel, interface utilisateur (prsentation, dialogue), noyau applicatif non interactif) Modle logique des traitements rpartis Modle navigationnel Modle objet Modle organisationnel des donnes Modle organisationnel des traitements Modle organisationnel des traitements analytique Modle relationnel
Quelques modles
Organigramme Rseaux de Ptri Schma d'architecture logique des moyens informatiques SQL Substitution gnralise Table de dcision Thorie des ensembles et relations