Académique Documents
Professionnel Documents
Culture Documents
conception des SI
Objectif du cours
1
Plan du cours
Introduction aux SI
Méthodologies de conception :
Importance dans le cycle de développement d’un
logiciel
Historique et caractéristiques des différentes
approches:
Approche objet
Le langage UML
Principaux diagrammes
Processus unifiés
Information
Le bon fonctionnement d'une organisation, voire sa
survie, est conditionné par la mise en place d'une
communication cohérente et fluide :
entre ses différentes composantes
2
Système d’Information
Information et donnée
3
Évolution des applications de gestion
60-80
stockage et restitution d'informations
structures plates (fichier, ligne de table)
traitement simple (mise à jour et édition de données)
80- ..
objets complexes (texte, graphiques, images)
traitements plus élaborés (tableau de bord, système expert,
statistiques)
intégration (bureautique, multimédia, web)
Les méthodes de conception doivent évoluer
4
Cycle de développement du logiciel
5
Catégorie linéaire
6
Modèle en cascade (Années 65-75)
Waterfall Model…
Étude de faisabilité
Définir le problème, définir et étudier les alternatives, définir les
coûts et les délais
Analyse des besoins et spécifications
Définir les attendus du système, aboutir à un document de
spécification lisible, précis, complet, consistant et non ambigu
Aboutir aux besoins fonctionnels et non fonctionnels
Conception architecturale
Définir les modules qui constituent le système et leurs relations
Selon le contexte, la conception détaillée correspond à:
Définir les interfaces utilisateurs
Définir les types, les algorithmes
7
Modèle en cascade
avantages et inconvénients
Bien adapté pour des petits systèmes
Mal adapté à des systèmes complexes
(processus de développement rarement
séquentiel)
Les tests s'appliquent à l'application globale
(pas de validation des besoins)
Difficulté de définir tous les besoins dés le
début du projet
Délai assez long pour voir quelque chose
Modèle en V
V Model
Variante du modèle en cascade
8
Modèle en V
avantages et inconvénients
Tests bien structurés
Hiérarchisation du système à développer
permettant une conception et un
développement modulaire
Validation par rapport aux besoins
Validation ou le test de réception trop tardifs
– très coûteux si des erreurs sont constatées
Catégorie Itérative
9
Modèle prototypage
Je saurai ce que je veux lorsque je le verrai!
Un prototype initiale peut évoluer jusqu’à avoir le système
définitif
Utilisé pour comprendre les besoins de l’utilisateur
Son but est de s’assurer de la faisabilité et vérifier les exigences
Le produit est reconstruit en tenant compte du feed-back de
l’utilisateur
Une nouvelle version est développée en utilisant le modèle en
cascade
Évolutif
Plusieurs prototypes sont développés (avec minimum de
fonctionnalités)
Seul le prototype retenu par l’usager est évolué en un produit final
Modèle prototypage
avantages et inconvénients
Validation des besoins très tôt dans le processus
Validation concrète et sûre par les utilisateurs
Forte implication des utilisateurs
Bonne compréhension du système par les
développeurs
Ne convient que pour
les projets qui peuvent être découpés en sous systèmes
les applications dans lesquelles l’interface utilisateur est
prépondérante
Coût pourrait être élevé
10
RUP
S’applique sur des moyens et grands projets (>10 employés)
Basé sur le langage UML
RUP est piloté par les cas d’utilisation
RUP saisit les besoins fonctionnels à travers les cas d’utilisations
qui ne sont pas un simple outil de spécification des besoins mais
guident tout le processus de développement et en garantissent la
cohérence
RUP est centré sur l’architecture
L’architecture permet de réaliser les besoins exprimés par les
utilisateurs à travers les cas d’utilisation qui guident tout le
processus de développement
RUP est itératif et incrémental
Les itérations se succèdent dans un ordre logique pour prendre
en compte les cas d’utilisation et traiter en priorité les risques
majeurs et les problèmes imprévus
Classes de méthodes de
conception
11
Les différentes classes de méthodes de
conception
Approches cartésiennes (première
génération)
Approches systémiques (deuxième
génération)
Approches objet (troisième génération)
12
Les approches cartésiennes
suite
Points forts:
simplicité et bon sens
adéquation à capturer les besoins des utilisateurs
capacité à produire des solutions à plusieurs
niveaux d'abstraction
Points faibles:
effort sur les fonctions au détriment des données
règles de décomposition non explicites
difficile de faire de la réutilisation
13
Les approches systémiques
suite
Points forts:
grande cohérence des données
niveaux d'abstraction bien définis
niveau conceptuel, niveau logique ,niveau physique
Points faibles:
manque de cohérence entre données et
traitements
faiblesse de la modélisation des traitements,
mélange des contraintes et des contrôles
14
Les approches objet
suite
Points forts:
capacité à modéliser des objets complexes
réduire les distorsions entre système informatique
et monde réel
intégration des traitements aux données
encapsulation
Points faibles
"tout objet" difficile à appréhender
aspect fonctionnel mal représenté
aspect procédural des opérations
Approche cartésienne
vs approche objet
Approche cartésienne: approche
descendante par décomposition de fonctions
Approche objet: approche ascendante par
composition d'objets
15
Approche systémique
vs approche objet
Basées sur les mêmes concepts
Approche systémique
Les langages de modélisation pour les données
et les traitements sont incompatibles
Faut-il commencer par les données ou les
traitements?
Approche objet
nouveau paradigme
Réunir les traitements et les données dans la
même unité, objet
Introduction au langage
UML
16
UML un langage
C’est un formalisme (notation) pas une méthode
Il est entièrement tourné vers le support de l’analyse et la
conception orientée objet.
Il est un langage qui fournit des mots, une syntaxe et une
sémantique à des fins de communication
UML fournit le vocabulaire et les règles pour représenter
les différents modèles permettant de comprendre un
système.
Il est la synthèse de plusieurs autres méthodes objet ou
non.
Il est supporté par des d’acteurs importants du monde
informatique.
Il est normalisé par l’Object Management Group (OMG)
UML
un langage pour visualiser
17
UML
un langage pour spécifier
UML
un langage pour construire
18
Genèse d’UML
19
Architecture et vues du processus de
développement
20
Vues architecturales et modèles UML
Diagrammes UML 2
Diagrammes statiques :
Mettent en évidence des liens structurels entre les
entités qui constituent l’application
Diagrammes dynamiques :
Mettent en évidence le comportement des entités
qui constituent cette application
21
Chapitre 2 paradigme objet 43
UML 2.x
Quelques points majeurs
Restructuration du méta-modèle
http://www.omg.org/uml/
Chapitre 2 paradigme objet 44
22