Vous êtes sur la page 1sur 151

Dpartement Informatique de lIUT de lUniversit Bordeaux 1

Cours dAnalyse et Conception des Systmes dInformation (dOutils et Modles pour le Gnie Logiciel)
7 novembre 2007 Olivier Guibert

Programme Pdagogique National


Algorithmique Architecture ACSI Systmes Programmation Rseaux Bases de Donnes Mathmatiques OMGL conomie et Gestion des Organisations Langues (Anglais) Expression-Communication

et Projet Personnel et Professionnel, Projets Tutors, Stage

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 : gnie logiciel


ACSIOME, Modlisation dans la conception des systmes d'information, Masson, 1989 GALACSI, Les systmes d'information : analyse et conception, Dunod, 1984 GALACSI, Comprendre les systmes d'information : exercices corrigs d'analyse et de conception, Dunod, 1985 I. SOMMERVILLE, Le gnie logiciel et ses applications, Interditions, 1985 C. TESSIER, La pratique des mthodes en informatique de gestion, Les Editions d'Organisation, 1995 P. ANDR et A. VAILLY, Conception des systmes dinformation Panorama des mthodes et des techniques, Ellipses, collection TECHNOSUP / Gnie Logiciel, 2001 P. ANDR et A. VAILLY, Spcification des logiciels Deux exemples de pratiques rcentes : Z et UML, Ellipses, collection TECHNOSUP / Gnie Logiciel, 2001
ACSIOME = Analyse et Conception des Systmes dInformation : Outils, Modles, tudes = M.C. HEYDEMANN, V. PRINCE, C. REYNAUD, F. SCHLIENGER et D. SCHLIENGER GALACSI = Groupe dAnimation et de Liaison pour lAnalyse et Conception des Systmes dInformation = H. BRIAND, J.-B. CRAMPES, C. DUCATEAU, Y. HEBRAIL, D. HERIN-AIME, J. KOULOUMDJIAN et R. SABATIER

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 : bases de donnes


M. ADIBA et C. DELOBEL, Bases de donnes et systmes relationnels, Dunod, 1983 G. GARDARIN, Bases de donnes : les systmes et leurs langages, Eyrolles, 1983

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 : mthodes objet


S. SHLAER et S.J. MELLOR, Object-Oriented Systems Analysis: Modeling the World in Data, Englewood Cliffs, New Jersey: Yourdon Press, 1988 S. BAILIN, Remarks on Object-Oriented Requirements Specification, Laurel, MD: Computer Technology Associates, 1988 M. BOUZEGHOUB, G. GARDARIN et P. VALDURIEZ, Les Objets : concepts, langages, bases de donnes, mthodes, interfaces, Eyrolles, 1997 J.-L. CAVARERO et R. LECAT, La conception oriente objet, vidence ou fatalit, Ellipses, collection TECHNOSUP / Gnie Logiciel, 2000

Bibliographie : mthodes objet ( de MERISE lobjet )


A. ROCHFELD et M. BOUZEGHOUB, From Merise to OOM, Revue Ingnierie des Systmes dInformation, vol. 1, n2, 1993 J. MOREJON, Merise : vers une modlisation objet, Les ditions d'Organisation, 1994 M. BOUZEGHOUB, G. GARDARIN et P. VALDURIEZ, Du C++ Merise objet : Objets, Eyrolles, 1994 B. ESPINASSE, M. LAI et D. NANCI, Merise+ : Une extension de la mthode Merise lapproche objet par un apport de la mthode HOOD, Revue Ingnierie des Systmes dInformation, Herms diteur, vol. 3, n2-3, 1995 B. ESPINASSE et D. NANCI, Merise et lapproche oriente objet : du couplage avec OMT une troisime gnration, Revue Ingnierie des Systmes dInformation, Herms diteur, vol. 5, n4, 1997 N. KETTANI, D. MIGNET, P. PAR et C. ROSENTHAL-SABROUX, De Merise UML, Eyrolles, 1998 J. GABAY, Merise. Vers OMT et UML, Interditions, 1998

Bibliographie : mthodes objet (OOA, Fusion, MCO, MACAO)


P. COAD et E. YOURDON, Object-oriented analysis, Prentice Hall, 1990 D. COLEMAN, P. ARNOLD, S. BODOFF, C. DOLLIN, H. GILCHRIST, J. HAYES et P. JEREMAES, Fusion : la mthode oriente objet de 2me gnration, Masson, 1992 X. CASTELLANI, MCO : Mthodologie danalyse et de conception des systmes objets, Masson, 1993 J.-B. CRAMPES, Mthode oriente-objet intgrale MACAO - Dmarche participative pour lanalyse, la conception et la ralisation de logiciels, Ellipses, collection TECHNOSUP / Gnie Logiciel, 2003

Bibliographie : mthodes objet (HOOD, OMT, OOSE)


G. BOOCH, Object Oriented Design with Application, The Benjamin/Cummings Publishing Company Inc., 1991 G. BOOCH, Analyse et Conception orientes objets, Addison Wesley, 1994 M. LAI, Conception oriente objet, pratique de la mthode HOOD, Dunod, 1991 J. RUMBAUGH, M. BLAHA, W. PREMERLANI, F. EDDY et W. LORENSEN, Object oriented modeling and design, Prentice Hall, 1991 I. JACOBSON, M. CHRISTERSON, P. JONSON et G. VERGAARD, Object-Oriented Software Engineering: A Use Case Driven Approach, Addison Wesley, 1992 I. JACOBSON, Le gnie logiciel orient objet, Addison Wesley

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

Bibliographie : interface hommemachine


J.-B. CRAMPES, Interfaces graphiques ergonomiques - Conception et Modlisation, Ellipses, collection TECHNOSUP / Gnie Logiciel, 1997

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

Linformation, indispensable dans le processus de dcision d'une organisation


Diminution de l'incertitude Libert de choix Cohsion de l'organisation volutivit par rapport l'environnement

Qualits requises pour une information


Pertinence (mesure la qualit dune information) : relation directe entre laction accomplir ou la dcision prendre
prcision : ni trop importante, ni trop faible scurit (pour reconstituer linformation en cas daccident) intgrit (contraintes statiques ou dynamiques) confidentialit (protection contre tentatives daccs) non redondance (un seul exemplaire de chaque information) Convivialit (qualit de reprsentation sur support externe et facilit daccs par les utilisateurs) ge (temps entre enregistrement et sortie des rsultats) frquence (nombre de transmissions par unit de temps)

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

Un systme vu comme une bote noire

Systme : de la bote noire la bote blanche


Le systme se dcompose en sous-systmes dont on dfinit les entres (issues de l'extrieur ou sorties d'autres sous-systmes) et les sorties ( destination de l'extrieur ou devenant les entres d'autres sous-systmes)

Systme : de la bote noire la bote blanche

Systme : de la bote noire la bote blanche


Chaque sous-systme est lui-mme un systme : affinages successifs jusqu' l'obtention d'une bote blanche

Principales difficults de lapproche dun systme par dcomposition rcursive


identification du systme identification des limites du systme identification des sous-systmes risque de perte engendre par la dcomposition etc.

Dfinitions : systme organisationnel

Dfinitions : systme organisationnel


Systme de Dcision (ou pilotage, management, etc.)
Guide l'organisation vers ses objectifs (activits de planification et de contrle) : coordonne, imagine, finalise, labore objectifs Grer

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)

Systme Oprant (ou logistique, technologique, physique, de production, etc.)


Effectue la transformation : reoit, traite, envoie Acheter ; Produire ; Stocker ; Vendre

Remarque : un mme employ peut tre un acteur de chacun des trois sous-systmes

Rles du systme dinformation


Produire les informations lgales rclames par l'environnement Dclencher les dcisions programmes Fournir des informations aux dcideurs pour aider la prise de dcisions non programmes Coordonner les tches en assurant les communications au sein du systme organisationnel

Connaissances ncessaires en Informatique de Gestion


Science de gestion : mise en place du rseau d'information et de communication (conception du systme d'information) Technique informatique : conception et ralisation du systme informatique pour grer le systme d'information (conception du logiciel)

Dfinitions : systme dinformation vs systme informatique


Le systme informatique est la partie informatise du systme dinformation automatisable

systme dinformation

systme dinformation automatisable systme informatique

Dfinitions : systme informatique


Communication
Systme informatique communique directement avec son environnement (utilisateurs, fichiers dautres systmes via un rseau ou non, etc.) Communication entre composants dune application (ex. : fichier de mouvement)

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)

Enjeux de linformatisation pour l'organisation


Augmenter la productivit en amliorant lefficacit des utilisateurs Amliorer les conditions de travail : enrichissement des tches Rendre un meilleur service (de qualit, rapide, etc.) aux partenaires de l'organisation

Facteurs de la complexit de l'informatisation


Difficults techniques de l'informatique : complexit de la mise en uvre des matriels, complexit de la construction logicielle, rflexion abstraite, contraintes techniques Constantes novations (matrielle et logicielle) Symbiose requise entre l'application informatique et toute l'organisation (et ses partenaires) Multiplicit des dcisions et nombreux domaines (humain, financier, technique, etc.) de l'organisation concerns

Critres d'un bon systme informatique


Productivit (en rationalisant le processus d'informatisation)
tablissement d'une ligne directrice des informatisations Planification et suivi des performances Efficacit des tudes informatiques Utilisation judicieuse des technologies Conformit de la ralisation par rapport aux besoins Documentation correcte Adaptabilit Fiabilit Facilit d'utilisation

Qualit

Rentabilit (i.e. gain pour l'organisation relativement au cot de l'informatisation)

L'informatique remplit maintenant un rle stratgique dans l'organisation


On est pass de lautomatisation des tches administratives aux systmes d'information d'aide la dcision (SIAD)
Informatique de production
Systme oprant Dbut annes 1960 Faible complexit des traitements Mise jour transactionnelles, chanes squentielles Information prcise L3G

Informatique de management
Systme dcisionnel Plus rcent Forte complexit des traitements Consultation en temps partag Information significative, rapidement disponible SQL

Intervenants

Intervenants : les dpartements du service informatique (01 Informatique 27/10/1995)


Direction informatique
Responsable du service informatique ; Chef dun dpartement du service informatique

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

Intervenants : anciens diplms du dpartement informatique de lIUT de luniversit Bordeaux 1


(statistiques labores partir des 530 rponses reues sur 2156 diplms au 18/12/1996)
Direction informatique . Expertise tudes Dveloppement Production - Exploitation ; Support et assistance ... Non informaticien ..... 16 % 10 % 54 % 12 % 8%

Intervenants : MOA vs MOE


La matrise d'ouvrage (MOA) : les utilisateurs
Direction gnrale Responsable du service des utilisateurs Personnel Autres services Clients

La matrise d'uvre (MOE) : les informaticiens, prestataires de services


Responsable du service informatique Chef de projet Analyste Dveloppeur Personnel de lexploitation Sous-traitants de l'application

Nomenclature 2005 des emplois-mtiers


Les emplois-mtiers du systme dinformation dans les grandes entreprises CIGREF (club informatique des grandes entreprises franaises) fvrier 2005 http://www.cigref.fr/cigref/livelink .exe/Nomenclature_RH_2005.pdf

Nomenclature 2005 : 6 familles


Conseil en systme d'information et matrise d'ouvrage (6 mtiers) Support et assistance aux utilisateurs (3 mtiers) Production et exploitation (7 mtiers) tudes, dveloppement et intgration (4 mtiers) Support et assistance technique interne (6 mtiers) Administration et gestion de la direction du systme d'information (5 mtiers)

Nomenclature 2005 : 31 mtiers


Conseil en systme d'information et matrise d'ouvrage
Consultant en systmes dinformation Urbaniste des systmes dinformation Chef de projet matrise douvrage Responsable du systme dinformation mtier Gestionnaire dapplications Responsable de projet mtier

Support et assistance aux utilisateurs


Assistant fonctionnel Technicien support SVP Charg daffaires internes

Nomenclature 2005 : 31 mtiers


Production et exploitation
Technicien dexploitation Technicien poste de travail Technicien rseaux ou tlcoms Administrateur doutils / systmes / rseaux et tlcoms Administrateur de bases de donnes Intgrateur dexploitation Pilote dexploitation

tudes, dveloppement et intgration


Chef de projet matrise duvre Dveloppeur Intgrateur dapplications Paramtreur de progiciels de gestion intgr (PGI i.e. ERP, enterprise resource planning)

Nomenclature 2005 : 31 mtiers


Support et assistance technique interne
Expert systme dexploitation Expert rseaux / tlcoms Expert mthode et outils / qualit / scurit Expert en technologie internet / intranet et multimdia Responsable scurit des systmes dinformation Architecte technique

Administration et gestion de la DSI


Responsable du management de la DSI Responsable dexploitation informatique Responsable dune entit informatique Responsable de(s) service(s) administratif(s) et financier(s) de la DSI Responsable Tlcoms

Nomenclature 2005 : dveloppeur


Synonymes
Analyste-programmeur Ralisateur en informatique Analyste fonctionnel Analyste ralisateur

Nomenclature 2005 : dveloppeur


Mission
la demande de la matrise duvre, et sur la base des spcifications fonctionnelles mises par celle-ci, le dveloppeur analyse, paramtre et code les composants logiciels applicatifs dans le respect des normes et procdures, ainsi que les volutions souhaites

Nomenclature 2005 : dveloppeur


Activits et tches
Analyse
Dfinition de spcifications ; Analyse organique ; Adaptation et paramtrage de progiciels applicatifs ; Prototypage

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

Nomenclature 2005 : dveloppeur


Parcours professionnel
Profil : Bac + 2 ou 3 Exprience : Dbutant

Nomenclature 2005 : dveloppeur


Tendances et facteurs dvolution
Usage croissant des progiciels, do importance croissante du paramtrage, de lobjet, du fonctionnel aux dpens du dveloppement spcifique, de lalgorithmique Renouvellement rapide des langages : java, langages objet Importance croissante de lergonomie Dure de vie des applications raccourcie Souci de rutilisation des dveloppements

Nomenclature 2005 : dveloppeur


Savoir-faire systme dinformation
Expertise
Langages de programmation [Dveloppement] Mthodes, normes et outils de dveloppement [Dveloppement]

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]

Nomenclature 2005 : dveloppeur


Application
Parc applicatif et de services [Architecture applicative / fonctionnelle] Paramtrage dapplications [Dveloppement] Intgration de logiciels [Intgration] Intgration de matriels [Intgration] Gestion de production [Production - Exploitation] Normes et procdures de scurit I&T (Informatique et Tlcoms) [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]

Nomenclature 2005 : dveloppeur


Savoir-faire gnraux
Expertise Matrise
Ergonomie et interfaces homme-machine [Savoirs de base]

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]

Nomenclature 2005 : dveloppeur


Aptitudes comportementales
Essentiel
Mthode [Comptences de rsolution de problmes] Analyse [Comptences de rsolution de problmes] Rigueur [Comptences defficacit personnelle]

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]

Cycles de vie du logiciel

Cycle de dveloppement et cycle de vie du logiciel : les phases


Analyse Conception Ralisation Tests Exploitation Maintenance
Cycle de dveloppement

Cycle de vie

Cycles de vie du logiciel


Analyse de l'existant et dfinition des besoins, du systme d'information et du logiciel Conception du systme d'information et du logiciel Ralisation (ou codage, programmation) : traduction des algorithmes dans un langage comprhensible par un ordinateur

Cycles de vie du logiciel


Tests :
vrification du logiciel (i.e. systme informatique) validation du logiciel vrification du systme d'information validation du systme d'information
Vrification : le produit en cours dlaboration rpond-il la dfinition des besoins ? (est-ce bien le produit ?) Validation : le produit en cours dlaboration remplit-il les fonctionnalits dsires par l'utilisateur ? (est-ce le bon produit ?)

Cycles de vie du logiciel


Exploitation : utilisation du logiciel une fois install (et dont on fait la recette) Maintenance
Correction des erreurs Amlioration des fonctions existantes Ajout de nouvelles fonctionnalits

Cycles de vie en cascade (ou en chute deau)

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

3 activits interviennent durant toute la dure du dveloppement en V


Gestion de projet : pilotage du projet Gestion des configurations : gestion des diffrentes versions du produit Assurance qualit : contrle systmatiquement que le produit en cours est cohrent et complet, en le confrontant des normes prtablies si elles existent

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

Cycles de dveloppement en spirale


Prototype : application en rduction (avec accs aux donnes) Exprimentation : tests de la part des utilisateurs du produit dans sa version actuelle (ventuellement dfinitive) Bilan : critique de lexprimentation Gnralisation de lapproche par itration Ex. : conception doutils de pilotage (car une forte ractivit aux besoins non stables des utilisateurs est ncessaire)

Cycles de dveloppement composite : un exemple

Dmonstration : prsentation du produit aux utilisateurs

Cycles de vie de lISO

Cycles de vie dEuroMethode

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

Taille dun projet


Entre 100 et quelques milliers de jours Jusqu 50 personnes

Taxinomie des mthodes dinformatisation

Mthode d'informatisation : dfinition


Une mthode d'informatisation en informatique de gestion
dfinit un processus d'informatisation du systme d'information (totalement ou partiellement i.e. pour tout ou partie du cycle de vie du logiciel) possde une porte (champ d'tude i.e. domaine tudi) dcrit une dmarche i.e. un ensemble de travaux en les ordonnant (succession dtapes)

Mthode d'informatisation : rgles


S'appuyer sur des concepts thoriques : dfinition des concepts Proposer une dmarche : cadre gnral pour dfinir le travail accomplir par les intervenants Permettre sa mise en uvre par des outils : pour faciliter la manipulation des concepts Atteindre un but : linformatisation ventuelle ( argumentation et faisabilit) N. B. : une mthode ne remplace ni lexprience, ni la connaissance, ni le talent

Mthode d'informatisation : composants


Modles : ensemble de concepts et de rgles destin expliquer et construire la reprsentation de phnomnes organisationnels Langages : destins llaboration des spcifications, faciliter la communication Dmarche Outils et techniques : aides la mise en uvre des modles, langages, dmarche

Mthode d'informatisation : objectifs


Rduire la complexit des informatisations (ex. : en
identifiant et donc en matrisant les facteurs de cette complexit) Rendre cohrents tous les projets (ex. : mme approche, mme style des dossiers, meilleure intgration entre projets) Capitaliser les expriences (ex. : rutilisation des solutions ayant rsolu les mmes problmes, acquisition de savoir-faire) Augmenter la qualit des travaux d'informatisation (ex. : mmes standards)

Augmenter la productivit des travaux d'informatisation


(ex. : standardisation augmente lefficacit)

Amliorer les communications entre intervenants (utilisateurs et informaticiens)

Mthode d'informatisation

N. B. : les SSII ont t les premires crer des mthodes

Les solutions empiriques


Avantage : rpondent l'urgence Inconvnient : gnrent des applications provisoires (car complexes, non fiables, coteuses, etc.)

Taxinomie des mthodes : fondements thoriques


Cartsienne (dmarche dite analytique ; rsolution des problmes un un)
Approche fonctionnelle (analyse et conception des systmes d'information par rapport la dfinition des besoins) et descendante (du gnral au particulier) Ex. : SADT, CORIG

Systmique (dmarche dite globalisante ; rsolution globale des problmes)


Approche conceptuelle (processus de modlisation par niveaux d'abstraction successifs) Repose sur l'identification de projets qui structurent l'organisation (sans qu'il y ait obligatoirement un besoin) Ex. : MERISE, AXIAL, IA-NIAM

Taxinomie des mthodes : fondements thoriques


objet (application du paradigme objet tout le processus)
Les objets (de l'application, de services distribus) et les utilitaires communs changent des informations (demandes et rponses de services) l'aide de messages Ex. : OOA, OMT, MCO, HOOD, OOSE, MERISE Objet

Formelle (utilisation des mathmatiques)


Spcification et conception formelles exprimes laide du langage mathmatique quil faut ensuite prouver Ex. : B

Taxinomie des mthodes : gnrations


Premire gnration
Des annes 60 au dbut des annes 70 Automatisation des procdures administratives Problmes de programmation (ex. : WARNIER, JACKSON, etc. sur lart de bien crire du code i.e. programmation structure) Approche analytique (par les donnes) ou synthtique (par les fonctions) Ex. : MINOS (analytique), CORIG (synthtique)

Taxinomie des mthodes : gnrations


Deuxime gnration
Annes 70 Gnralisation des champs d'tude au systme d'information et l'organisation en entier Prconisations (en analyse, conception, programmation) et dmarche d'informatisation (schma directeur, plan d'informatisation, conduite de projet) Prise en compte de nouvelles techniques (temps rel, bases de donnes, ergonomie), nouvelles formalisations (entits-associations), volution des sciences de gestion Ex. : IA-NIAM, SADT

Taxinomie des mthodes : gnrations


Troisime gnration
Depuis la fin des annes 70 (dont les mthodes objets des annes 80) Informatisation globale (cohrence, compltude) Innovations technologiques (matrielles et logicielles) Dmarche de synthse, davantage de modlisation, introduction d'outils logiciels associs Ex. : MERISE, AXIAL, SSADM, OOA, OMT, OOSE, HOOD, B

Quatrime gnration ?
Intgration des technologies orientes objets, client/serveur

Taxinomie des mthodes : domaines d'application


Particulier
Application un travail prcis et indpendant de toute dmarche Ex. : RACINES pour l'laboration d'un schma directeur

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

Taxinomie des mthodes : dmarche


Linaire
Succession linaire des travaux (dmarche dcoupe en tapes dcoupes en phases dcoupes en tches dcoupes en oprations) Analyse descendante (des problmes gnraux aux problmes particuliers) par dcomposition hirarchique des travaux Itration et condition possibles Ex. : MERISE, AXIAL, etc.

Non linaire
Analyse ascendante par intgration progressive des rsultats

Taxinomie des mthodes : approche


Ascendante
Recensement et analyse des sorties (papier ou cran) puis tablissement des entres ncessaires et suffisantes La liste des informations obtenue est ainsi l'ensemble minimal ncessaire pour obtenir les rsultats, ce qui permet difficilement de prendre en compte l'volution des besoins de l'organisation Ex. : MINOS

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)

Quelques mthodes : 1982


CORIG
Compagnie Gnrale d'Informatique, France, 1966 Conception et ralisation du systme informatique

SADT (Structured Analysis and Design Techniques)


D.T. ROSS pour SofTech, USA, 1976 (et IGL Technology, France, 1977) Conception du systme d'information et du systme informatique

MCP (Mthode de Conduite de Projets informatiques)


RATP et AFCET, France, 1978 Conduite de projets

[H]OOD ([Hierarchical] Object Oriented Design)


R. ABBOTT en 1980, G. BOOCH en 1983 (CISI & MATRA & CRI pour l'Agence Spatiale Europenne en 1987) Conception et ralisation du systme informatique

IA-NIAM (Nijssen's Information Analysis Method)


M. NIJSSEN pour Control Data, Belgique, 1982 Conception du systme d'information et du systme informatique

Quelques mthodes : 1983..1986


MCX et MCO (Mthode gnrale d'analyse des applications informatiques)
X. CASTELLANI, France, 1983 Informatisation complte

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

JSD (Jackson System Development)


M. JACKSON, Systems Ltd, Royaume-Uni, 1983 Conception du systme d'information et du systme informatique

SSADM (Structured Systems Analysis and Design Method)


LBMS pour CCTA, Grande-Bretagne, 1986 Informatisation complte

AXIAL (Analyse et Conception de Systmes dInformation Assists par Logiciels)


IBM, France, 1986 Informatisation complte

Quelques mthodes : 1988


REMORA
C. ROLLAND de l'Universit Paris 1 (Sorbonne), France, 1988 Conception du systme d'information et du systme informatique

OOA (Object-Oriented Analysis)


P. COAD et E. YOURDON, 1991

OMT (Object Modeling Technique)


J. RUMBAUGH, 1991 Conception du systme d'information et du systme informatique

OOSE (Object-Oriented Software Engineering)


I. JACOBSON, 1992

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

UML (Unified Modeling Language)


G. BOOCH, I. JACOBSON et J. RUMBAUGH, 1999 N. B. : cest un langage de modlisation et non pas une mthode

Dmarche

Dmarche dune mthode d'informatisation traditionnelle


tude pralable Analyse fonctionnelle Analyse organique Programmation Mise en service

Dmarche : 3 premires tapes


tude pralable
tude de lexistant dossier de lexistant valid tude d'opportunit rapport d'opportunit cahier des charges (et plan directeur de ralisation)

Analyse fonctionnelle
Conception (modles de communication, des traitements et des donnes) Validation schma conceptuel

Analyse organique
Progiciel ou Dveloppement spcifique solution informatique

Dmarche : tude pralable (objectif)


Analyse du fonctionnement de l'organisation et diagnostic gnral de lexistant Recensement des critiques (positives ou ngatives, dorganisation et informatiques) et des besoins des utilisateurs Opportunit (financement, moyens humains, etc.) et faisabilit (technique) des automatisations Rdaction d'un cahier des charges

Dmarche : tude de lexistant (importance)


Toute l'application en dpend
exhaustivit exactitude Gravit croissante d'une tude pralable se rvlant incomplte ou inexacte lors de l'analyse fonctionnelle et/ou organique (peu grave), de la programmation (dommage), de lexploitation (catastrophique)

Dmarche : tude de lexistant (objectif)


Description de l'existant (par diffrentes reprsentations littraires/schmatiques et modles de communication/traitement/donnes) en collectant toutes les informations (informatises ou non) utiles et ncessaires

Dmarche : tude de lexistant (phases)


Collecte
Aller sur le terrain Observer Questionner Prendre des notes etc. Rdiger Formaliser les renseignements collects Modliser etc.

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

Dmarche : collecte (critres)


Informations sur le systme actuel et futur Informations sur le systme ou du systme
Ne recueillir que les informations directement utiles lies l'tude

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)

Degr de conscience ou dexpression de l'information


Collecter les informations exprimes (par crit ou oralement) Dtecter les informations conscientes non exprimes Deviner les informations inconscientes N. B. : selon le cas, faire exprimer/reconnatre les informations non exprimes ou les laisser dans l'ombre

Dmarche : collecte (moyens)


partir de documents (crits et collects)
Documents existants : dexcution (ex. : facture, bulletin de paye, bordeaux, fichiers produits, etc.), de gestion (ex. : organigrammes, statistiques, etc.) ou tablir entirement Documents complter (questionnaire)

Entretien (ou enqute orale)


Accompagnant des documents crits (pour les expliquer/complter/contrler/mettre jour) ou sans document crit pralable (avec ou sans la participation de linterlocuteur) Contraignant ou peu directif (selon exprience/aisance de lanalyste) Quelques conseils : fixer un rendez-vous, prparer lentretien, tre ponctuel, prciser l'objectif, questionner, couter, noter, demander tous les documents ncessaires, conclure, faire un compte-rendu

Observation (ou enqute visuelle)


Aprs un entretien par exemple Qualitative (sur le droulement dune procdure dun poste de travail, sur la circulation emprunte par un document marqu, etc.) ou quantitative (ex. : mesurer le nombre de tches pour une priode donne, la dure dexcution dun travail, etc.)

Dmarche : collecte (ordonnancement des tches)


Tches d'introduction (dfinition de ltude) Tches d'analyse du prsent (recueil de lexistant) Tches montrant les contraintes et dsirs de l'organisation future (critique) Tches de conclusion
4 1 2 3 5 6 7 8 10 9 11 12 13 14

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 d'introduction)


1. 2. Prise de connaissance du contexte i.e. de la structure hirarchique de l'organisation et de son environnement social, technique et conomique Reformulation des limites de l'tude et du dcoupage en projets partir de ce qui a t dcrit ou demand

Dmarche : collecte (ordonnancement des tches d'analyse du prsent)


3. Au niveau du projet retenu, tude de la structure hirarchique et liste des postes de travail et des centres de dcision 4. tude dtaille des postes de travail 5. tablissement d'une liste des fichiers et des documents 6. Reprsentation de la circulation des documents mentionnant les traitements 7. Recensement et description des rgles de gestion (:= condition facultative, affectation et rgle de calcul), i.e. les procdures et rgles de traitement 8. Confection d'un dictionnaire des rubriques

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.

Dmarche : collecte (ordonnancement des tches de conclusion)


12. Constitution du dossier de lexistant i.e. premire version du cahier des charges dtaill 13. Validation de l'tude auprs des personnes comptentes et concernes par l'tude 14. Premier examen critique des personnes ayant ralis cette analyse mentionnant leurs avis sur lexistant

Dmarche : tude dopportunit (objectif)


Faciliter la prise de dcision par la direction gnrale en commission informatique sur la suite donner l'tude (par un rapport synthtique prsentant les principales critiques formules et les diverses solutions envisageables) i.e. la mise en uvre d'un certain nombre de projets d'automatisation parmi ceux proposs

Dmarche : tude dopportunit (critique du systme d'information existant)


Niveaux : gnral, des domaines d'tude, des services et postes de travail Causes possibles de dysfonctionnement
Insuffisance des moyens de traitement de l'information (ex. : en personnel, matriel, locaux) Mauvaise organisation (ex. : centralisation excessive ou insuffisante, personnel inadapt ou incomptent, mauvaise structure hirarchique) Circuits informationnels mal tudis (ex. : trop longs, non compris) Mthodes de traitements mal formalises ou archaques (ex. : inexistence dalgorithme) Documents inexistants ou inutiles ou incomplets Fichiers inexistants, mal structurs, incomplets, redondants, etc.

Expos des besoins nouveaux exprims par les utilisateurs

Dmarche : tude dopportunit (propositions de solutions)


Pallier les dysfonctionnements et amliorer le systme
Solutions non informatises
Personnel (ex. : embauche, promotion, dplacement, formation) Matriels (ex. : achat, remplacement, entretien, dplacement) Documents (ex. : cration, modification, suppression, amlioration du circuit) Mthodes (ex. : rorganisation des tches, dfinition des algorithmes) Fichiers (ex. : cration, restructuration)

Solutions informatises
Dfinition des tches devant tre automatises Dcoupage en projets d'automatisation homognes et relativement indpendants, en faisant apparatre les priorits de ralisation

Dmarche : tude dopportunit (synthse des propositions de solutions)


valuation financire (cot estim et gain escompt) de chaque proposition Prsentation de l'ordre des priorits entre les diffrentes solutions Mesure de la faisabilit et tablissement de la mise en uvre (en prenant en compte des mesures daccompagnement : personnel, matriel, logiciel, etc.) de chaque proposition

Plan directeur de ralisation


Prsentation de toutes les modalits de ralisation (des programmes d'application spcifiques) :
responsabilits personnel dexcution calendrier de ralisation de chaque projet liaisons entre les diffrents projets (ou logiciels acquis) interventions ventuelles d'informaticiens extrieurs l'organisation

Cahier des charges


Destinataires
Service informatique, constructeur ou socit de services en informatique

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

Cahier des charges


(renseignements informatiques)
Description dtaille des fonctionnalits attendues valuation chiffre des volumes mettre en uvre
Donnes stocker, sauvegarder, saisir, imprimer Modes de travaux envisags : immdiat ou en temps diffr, unitaire ou par lot Ex. : saisie dun questionnaire, dition des commandes du jour, sauvegarde incrmentale, dition prprogramme des bulletins de paye Nombre maximum d'utilisateurs connects simultanment

Cahier des charges


(renseignements informatiques)
Dfinition des besoins en matriel
Types de postes de travail (bureau, ordinateur, taille cran, type dimprimante, etc.) Rseau de communication utilis (priv ou public, en toile ou en bus ou en anneau ou , local ou global, etc.) Priphriques particuliers (ex. : lecteur de code barres)

Dfinition des besoins en logiciel


Progiciels systmes (systme dexploitation, compilateurs et interprteurs des langages de programmation, utilitaires, gestionnaire des donnes, gestionnaire rseau, etc.) Progiciels d'application

Cahier des charges (renseignements


technico-commerciaux, avant la livraison)
Conditions financires des matriels et logiciels : achat, location, maintenance, etc. Conditions dextension de la configuration matrielle (mmoire principale, mmoire auxiliaire, priphriques, etc.) et des logiciels (amlioration des performances, volumes de donnes, nouvelles fonctionnalits, etc.), en assurant portabilit et compatibilit Conditions d'implantation des matriels (plan, onduleur, climatisation, puissance lectrique, etc.) et logiciels (ex. : systme dexploitation, mmoire minimale, etc.) Conditions dessais (des performances, sur du matriel quivalent, etc.) Conditions de livraison (dlai, pnalits de retard, responsable du transport du matriel, installation et adaptation, support logiciel, livraison partielle, etc.)

Cahier des charges (renseignements


technico-commerciaux, aprs la livraison)
Conditions de maintenance (dure, jour et dlai dintervention, cot des nouvelles versions, etc.) Dure d'utilisation en cas de location Formation du personnel (nature, dure, date, cot, lieu, etc. des stages et cours) Aide la mise en uvre (dure et priodicit, nombre de techniciens disposition, etc.) Documentation (nature, cot, nombre dexemplaires, nouvelles versions, etc.) Conditions de reconversion des applications existantes

Dmarche : analyse fonctionnelle


Objectif
Obtenir un schma gnral de structuration des traitements et des donnes, un niveau conceptuel (c'est--dire indpendant de tout matriel ou logiciel de base) Quoi faire ?

Critres d'un schma conceptuel


Communicable (avec utilisateurs et autres informaticiens) Conforme Valide : complet et cohrent Ralisable (automatisable en partie) Pour cela, un logiciel (le SGBD) doit tre capable, au moment de lexcution des programmes, de retrouver les donnes ncessaires aux traitements effectuer
Indpendance logique (respectivement physique) lorsque le schma conceptuel (respectivement logique) des donnes peut tre modifi sans changer les programmes

Principe d'indpendance des traitements et des donnes

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

Reprsentation de lensemble des donnes


Modlisation de toutes les informations (et de leurs structures) devant tre manipules (et donc stockes) Contraintes d'intgrit : conditions satisfaire pour les donnes mmorises par le systme d'information
Statique : vrifies tout moment Dynamique : caractrise la validit des changements d'tats du systme d'information Remarque : certaines contraintes sont dj inclues dans les modles

Dmarche : validation
Validation formelle des traitements et des
donnes
Compltude des traitements
Lensemble des traitements dcrits correspondent la dfinition

Cohrence des traitements


Statique : pas de contradiction Dynamique : pas d'inter-blocage, terminaison

Compltude des donnes


Pas d'oubli (respect de la norme dcrivant le modle)

Cohrence des donnes


Conformit la norme : pas d'ambigut, pas de contradiction, pas de redondance, dsagrgation/dcomposition

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

Dmarche : analyse organique (objectif)


Adapter la solution fonctionnelle un choix technique particulier
Dfinition des structures de donnes et de leur enregistrement Dtermination des units de traitement Choix des matriels tablissement du calendrier et des budgets de ralisation

Dmarche : progiciel vs dveloppement spcifique


Achat d'un progiciel standard (i.e. un PGI)
Plus conomique ( long terme) Prsent sur de nombreux segments de march Produit dj test S'assurer de la relle adaptation aux besoins Complexit du paramtrage Peut ncessiter de recourir un spcialiste Existe-t-il un service aprs-vente, de plus viable long terme ?

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 ?)

Dmarche : approche traditionnelle


Reprsentation des traitements
tape logique : prise en compte des contraintes des utilisateurs faisant intervenir le temps (date de dbut au plus tt, date de fin au plus tard, dure, date de dbut effective, etc.) et le lieu (communication entre les acteurs, poste de travail effectuant le traitement, traitement manuel ou interactif ou diffr) des traitements Cas particulier : procdures de fonctionnement en mode dgrad (donnes dtruites, lieu ou ressource indisponible) tape physique : fait intervenir les contraintes de ressources ncessaires et utilises (regroupement de traitements successifs, clatement d'un traitement) et affecter les responsabilits des traitements

Dmarche : approche traditionnelle


Reprsentation des donnes
tape logique : prise en compte des besoins d'utilisation des informations (ex. : dfinition des modes d'accs aux donnes) tape physique : prise en compte des contraintes physiques lies en particulier aux matriels et logiciels utiliss (ex. : description des donnes par rapport leur implantation, calculs d'activit afin de dterminer les schmas/vues/index/clusters/redondances/etc. les plus efficaces, etc.)

Dmarche : approche traditionnelle


Structure d'accueil : mmoire, processeur, rseau, langage, progiciel, etc. Interface homme-machine : ergonomie, langage de communication Mthode de conception : analyse descendante Programmation : programmation objet (encapsulation, hritage, polymorphisme, etc.) Calendrier Budget de programmation

Dmarche : approche gnie logiciel (objectif)


Passer l're industrielle de la production du logiciel, en dveloppant des mthodes et des techniques permettant de raliser moindre cot des logiciels performants et fiables

Dmarche : approche gnie logiciel


Concevoir (le produit)
Rsultat d'une analyse ou d'une tude de march Fournir un ensemble de spcifications dtailles Choisir une interface utilisateur : graphique (on vitera dornavant une interface en mode texte)

Dmarche : approche gnie logiciel


Fabriquer
Principe : dcomposer en composants plus simples, et mettre au point un processus d'assemblage Pour chaque composant identifi, trois choix possibles :
Utiliser un composant standard : SGF ou SGBD, bibliothque mathmatique, bibliothque de classes, applets JAVA, contrles VBX ou ActiveX, etc. Le fabriquer soi-mme En sous-traiter la fabrication, lorsque les cots sont trop importants, par une entreprise spcialise

Implmenter les traitements : dcomposition modulaire Implmenter les donnes : donnes transitoires et permanentes Mthode : programmation descendante, objet

Dmarche : approche gnie logiciel


Langage de programmation
Choix d'un paradigme (ex. : procdural, dclaratif, fonctionnel, L4G, objet, etc.) Identification des besoins : objets, systmes rpartis, bases de donnes, systmes concurrents, etc. Identification des moyens : disponibilit du produit sur les plateformes cibles, personnel form

Choix des outils


Outils de dveloppement rapide : pour du prototypage car les performances sont souvent insuffisantes Gnrateurs de code : description de haut niveau des traitements raliser, code gnr en L3G Outils spcialiss : SGBD, gestionnaire rseau, architecture client/serveur, etc.

Dmarche : approche gnie logiciel


Tester
Jeux d'essais : jeux de donnes couvrant tous les cas possibles, gnrateurs de tests Simulation du fonctionnement : injection de donnes, brenchmark de systmes Tests en grandeur nature (par les utilisateurs finals)

Dmarche : approche gnie logiciel


Prouver/Valider
Mthodes mathmatiques de preuve de programmes (cf. FLOYD, HOARE, etc.) Preuve des spcifications formelles du logiciel Utilisation d'outils de validation Vrifier l'adquation aux besoins

Dmarche : approche gnie logiciel


valuer les performances
Calculs des complexits a priori (et s'assurer que les charges des machines suffiront) Tests en grandeur nature (dans lenvironnement final, dans les conditions relles dexploitation)

Dmarche : approche gnie logiciel


Assurer la fiabilit
Plus aucune erreur majeure Risque derreurs (mineures) rsiduelles (ex. : conditions limites non testes) Rvisions successives du logiciel (versions alpha, bta, release, mises jour mineures et majeures)

Dmarche : approche gnie logiciel


Fournir une documentation
Technique
Durant tout le dveloppement (dossier de programmation) : communication entre sous-quipes, rdig quotidiennement par les dveloppeurs Pour la maintenance (guide de maintenance) : recherche ultrieure des causes derreurs Pour linstallation (guide dinstallation)

Utilisateur
Mode demploi pour un produit sur mesure (manuel utilisateur) : prcis, technique, sans fioritures Communication pour un produit grand public : rdig par des professionnels

N. B. : prcise, claire, fiable, jour, etc.

Dmarche : approche gnie logiciel


Proposer un service aprs-vente
Maintenance sur site, ligne directe, service payant Formation

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)

Modles : objectifs de la modlisation


Rendre compte de la ralit
Conforme Complet Ralisable Plausible

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

Modles : outils et types


Outils
Langage naturel Reprsentation graphique Mathmatiques

Types de modles
De communication, des traitements ou de donnes Statique ou dynamique

Modles : lexemple jouet


Les traitements
Le jour de la rentre, le secrtariat de ltablissement avise les tudiants qu'ils ont jusqu la fin de la semaine pour amener les originaux des diplmes qu'ils ont obtenus, ceci permettant de complter les fiches des tudiants Un mois aprs la rentre, le secrtariat transmet une photocopie des fiches au directeur de ltablissement

Un fichier ( de cinq tudiants)

Modles : lexemple jouet

Modles : lexemple jouet

Modles : lexemple jouet

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

Mthodes et langages de modlisation


MERISE/2 SADT OMT UML B