Chapitre 1 - Méthodologie de conception
Short Description
Download Chapitre 1 - Méthodologie de conception...
Description
Méthodologie de conception 2011/2012
MÉTHODOLOGIES DE CONCEPTION ISET-DJERBA
TI21et TI22 1
HAJJEJ Faten
MÉTHODOLOGIE DE CONCEPTION 2
Chapitre 1: Introduction
QU'EST CE QU'UN LOGICIEL ?
Méthodologie de conception 2011/2012
Un logiciel ou une application est un ensemble de programmes, qui permet à un ordinateur ou à un système informatique d’assurer une tâche ou une fonction en particulier Exemple : logiciel de comptabilité, logiciel de gestion des prêts
3
CRISE DU LOGICIEL
Par conséquents: l’augmentation des coûts les difficultés de maintenance et d’évolution la non fiabilité le non respect des spécifications le non respect des délais
Méthodologie de conception 2011/2012
La `` crise du logiciel '' est apparue à la fin des années 60. Cette crise provient d'un décalage entre les progrès matériels d'une part et logiciels d'autre part
4
FACTEURS DE QUALITÉ LOGICIEL
Méthodologie de conception 2011/2012
Facteurs externes (visibles par le client) Exactitude : le logiciel fournit les bons résultats Robustesse : le logiciel réagit correctement à des données fausses Stabilité : possibilité d’intégrer des modifications de spécification légères Fiabilité : exactitude + robustesse Efficacité : performances d’exécution, encombrement mémoire,...
5
FACTEURS DE QUALITÉ LOGICIEL(SUITE) Facteurs internes Maintenabilité (support du temps….) Portabilité Faible couplage entre les modules
Méthodologie de conception 2011/2012
6
COMMENT FABRIQUER UN LOGICIEL DE QUALITÉ ?
Méthodologie de conception 2011/2012
Besoins
Processus de développement (cycle de vie)
Système logiciel
Le défi à relever sont : Guider le développement du logiciel, de sa conception à sa livraison. Contrôler les coûts, évaluer les risques et respecter les délais Établir des critères d’évaluation de la qualité d’un logiciel
7
LES PROCESSUS DE DÉVELOPPEMENT LOGICIEL (CYCLE DE VIE)
Remarques Il n’existe pas de processus idéal La plupart des entreprises adapte les processus existants à leurs besoins Ces besoins varient en fonction du domaine, des contraintes de qualité, des personnes impliquées.
Méthodologie de conception 2011/2012
Un processus de développement logiciel est un ensemble (structuré) d’activités que conduisent à la production d’un logiciel
8
ACTIVITÉS DU DÉVELOPPEMENT LOGICIEL Les activités des processus de développement logiciels se regroupent en 6 grandes catégories : Méthodologie de conception 2011/2012
1) Analyse et Spécification du logiciel: Ce que doit faire le système, son interface avec les utilisateurs ou les autres systèmes en fonction du cahier des charges 2) La conception
Architecture du système en terme de modules, communication entre les modules Conception détaillée de chaque module : données et algorithmes
9
ACTIVITÉS DU DÉVELOPPEMENT LOGICIEL(SUITE)
4)Test :
Tests unitaires de chaque module Test de l’intégration des modules pour constituer l’application
5) Validation:
Vérification de la conformité à la spécification ( fonctionnalités, performances)
Méthodologie de conception 2011/2012
3) Code et implémentation: Codage des modules, éventuellement par différentes équipes
10
ACTIVITÉS DU DÉVELOPPEMENT LOGICIEL(SUITE) 6) Maintenance: Suivi du produit en service (réparations,
Maintenance corrective :
Maintenir pour corriger certaines lacunes dans le logiciel.
Maintenance évolutive :
Maintenir pour faire évoluer certaines fonctionnalité du logiciel
Méthodologie de conception 2011/2012
ajout de fonctions)
11
CATÉGORIE DE CYCLES DE VIE
Les deux grandes catégorie de cycles de vie
• Succession d’étapes ordonnées
Les cycles itératifs
• Réalisation incrémentale par évolutions
Méthodologie de conception 2011/2012
Les cycles linéaires
12
LES CYCLES LINÉAIRES L’enchaînement des étapes est linéaire. Chaque étape ne commence que lorsque l’étape précédente est terminée Cycle en V
Méthodologie de conception 2011/2012
Cycle en cascade
13
LES CYCLES LINÉAIRES(SUITE)
=> Détection d’erreurs tardive
Méthodologie de conception 2011/2012
Problème de l’effet tunnel où l’on ne voit tourner quelque chose qu’à la fin
14
LES CYCLES ITÉRATIFS
commence par développer un sousensemble des fonctionnalités (noyau du logiciel) de manière linéaire (en cascade). On itère un modèle linéaire pour développer incrémentalement de plus en plus de fonctionnalités, jusqu’à achèvement du projet.
Méthodologie de conception 2011/2012
On
15
LES CYCLES ITÉRATIFS(SUITE)
Méthodologie de conception 2011/2012
livraisons intermédiaires => résultats concrets réguliers de l’équipe de développement meilleurs anticipation et prise en compte des problèmes meilleurs gestion de la prise en compte de modifications de spécification qui peuvent être intégrées dans une itération future intégration progressive de composants
16
LES CYCLES ITÉRATIFS (SUITE) Cycle en spirale
A chaque spire, il y a itération complète sur les phases : Analyse A chaque itération, le Conception logiciel doit être dans un Codage état quasiTest
commercialisable
Méthodologie de conception 2011/2012
La première spire doit comprendre les éléments les plus abstraits et Le cœur fonctionnel minimum du système
17
LA MODÉLISATION EN GÉNÉRAL Types de Modélisation :
Méthodologie de conception 2011/2012
Modélisation à priori : Modéliser un système avant sa réalisation (le système n’existe pas encore). Objectifs : Comprendre le fonctionnement du future système. Mesurer et Maîtriser sa complexité. Assurer sa cohérence. Pouvoir communiquer au sein de l’équipe de réalisation.
18
LA MODÉLISATION EN GÉNÉRAL Types de Modélisation :
Méthodologie de conception 2011/2012
Modélisation à posteriori : Modéliser un système après sa réalisation (le système existe déjà). Objectifs : Corriger les erreurs dans l’ancien système. Faire évoluer l’ancien système.
19
APPROCHES DE MODÉLISATION POUR LE LOGICIEL
Approche orientée objets On identifie les éléments du système et on en fait des objets. On cherche à faire collaborer ces objets pour qu’ils accomplissent la tâche voulue.
Méthodologie de conception 2011/2012
Approche fonctionnelle Approche traditionnelle basée sur l’utilisation des procédures et des fonctions. Les grands programmes sont décomposés en sous-programmes.
20
MODÉLISATION FONCTIONNELLE La modélisation du système se base sur les fonctions, et non pas sur les objets. On commence par déterminer la fonction globale du système. Puis, on décompose la fonction globale du système en plusieurs sous-fonctions jusqu’à obtenir des fonctions élémentaires simples à programmer. Il s’agit d’une démarche descendante.
Méthodologie de conception 2011/2012
21
MODÉLISATION FONCTIONNELLE (SUITE)
Méthodologie de conception 2011/2012
Avantages : Adéquate pour les petits logiciels et les système peu complexes. Démarche ordonnée et organisée. Inconvénients : Pose des problèmes de structuration de données, car elle est orientée fonctions. Produit des logiciels non réutilisables. Produit des logiciels très difficile à les faire évoluer ou corriger. 22
APPROCHE ORIENTÉE OBJETS Le modèle à produire est décrit en terme d’objets et non pas en terme de fonctions. On peut partir des objets du domaine (briques de base) et remonter vers le système global. On défini également les interactions et les collaborations entre les objets du système. Il s’agit essentiellement d’une approche ascendante.
Méthodologie de conception 2011/2012
23
APPROCHE ORIENTÉE OBJETS
Méthodologie de conception 2011/2012
Avantages : Démarche naturelle et logique. Raisonnement par abstraction sur les objets du domaine. Inconvénients : Parfois moins intuitive que l’approche fonctionnelle. Rien dans les concepts de base objets ne précise comment modéliser la structure objet d’un système de manière pertinente. 24
Méthodologie de conception 2011/2012
Les concepts importants de l’approche orientés objets
25
LES OBJETS
Méthodologie de conception 2011/2012
L’approche orientée objet considère le logiciel comme une collection d’objets possédant des caractéristiques un objet est caractérisé par plusieurs notions
Une identifiant un attribut (i.e. un donnée) une entité comportementale de l’objet (i.e. une fonction)
L’objet peut avoir une existence physique: un livre, un étudiant… Ou ne pas en avoir: un texte de loi, date, une maladie…
Objet étudiant 26
L’IDENTITÉ L’objet possède une identité, qui permet de le distinguer des autres objets, indépendamment de son état
On construit généralement cette identité grâce à un identifiant découlant naturellement du problème exemple :un produit pourra être repéré par un code, une voiture par un numéro de série…
Num-Carte-étudiant
Objet étudiant
Méthodologie de conception 2011/2012
27
LES ATTRIBUTS (ÉTAT)
Num-Carte-étudiant Nom Prénom Date-Naissance Diplôme
Objet étudiant
Méthodologie de conception 2011/2012
Il s’agit des données caractérisant l’objet. Ce sont des variables stockant des informations sur l’état de l’objet L’état de l’objet évolue au cours du temps Certaines composantes d’état peuvent être constantes (marque d’une voiture, pays de construction..)
28
LES MÉTHODES
Num-Carte-étudiant Nom Prénom Date-Naissance résultat Diplôme Vérifier-Nom() Changer-Diplôme ()
Objet étudiant
Méthodologie de conception 2011/2012
Les méthodes d’un objet caractérisent son comportement, c’est-à-dire l’ensemble des actions (appelées opérations) que l’objet capable de réaliser. Les méthodes (ou les comportements) regroupent toutes les compétences d’un objet et décrit les actions et les réactions de cet objet
29
LES MÉTHODES (SUITE)
Il est possible de faire atterrir un avion à la condition qu’il soit en train de voler le comportement atterrir n ’est valide que si l’information en vol est valide Après l’atterrissage, l’information en vol devient invalide, et l’opération atterrir n’a plus de sens
Méthodologie de conception 2011/2012
L’état et le comportement sont liés, en effet, le comportement à un instant donnée dépend de l’état courant et l’état peut être modifier par le comportement Exemple:
30
COMMUNICATION ENTRE OBJETS
la fonction global d’une application repose sur la communication entre les objets qui la composent Les objet interagissent (échangent des messages) pour réaliser les fonctionnalités de l’application
Méthodologie de conception 2011/2012
les systèmes informatiques à objets peuvent être vue comme des sociétés d’objets travaillent afin de réaliser les mécanismes de l’application
31
LE CONCEPT DE MESSAGE
Les opérations d’un objet sont déclenchées suite à une stimulation externe, représentée sous la forme d’un message envoyé par un autre objet, en réponse à un message l’objet destinataire déclenche un comportement Les messages sont représentés par des flèches étiquetées, placées le long de liens qui unissent les objets
Méthodologie de conception 2011/2012
L’unité de communication entre objet est le message
32
LE CONCEPT DE MESSAGE (SUITE) Message Synchrone
Il déclenche une opération uniquement lorsque le destinataire accepte le message Une fois le message est envoyé, l’expéditeur est bloqué jusqu’à ce que le destinateur accepte le message
Message Asynchrone Un message asynchrone n’interrompt pas l’exécution de l’expéditeur L’expéditeur envoie le message sans savoir quand, ni même si le message sera traiter par le destinateur Du point de vue du destinateur, un envoi asynchrone doit pouvoir être pris en compte à tout moment
Méthodologie de conception 2011/2012
33
NOTION DE CLASSE ET D’INSTANCE
Les objets appartenant à celle-ci sont les instances de cette classe L’instanciation est la création d’un objet d’une classe
Méthodologie de conception 2011/2012
Lorsque des objets ont les mêmes attributs et comportent : ils sont regroupés dans une famille appelée Classe
34
NOTION DE CLASSE ET D’INSTANCE (SUITE) Nom : Dupont
Nom : Durant
Capital UV : capital1
Capital UV : capital2
Diplôme : maîtise de Sciences Eco.
Diplôme : licence de Socio.
Vérifier-Nom
Vérifier-Nom
Changer-Diplôme
Changer-Diplôme
Méthodologie de conception 2011/2012
Les attributs d’une classe correspond aux propriétés de la classe Ils sont définis par un nom , un type et éventuellement une valeur initiale Chaque objet, instance d’une classe, donne des valeurs particulières à tous les attributs définis dans sa classe et fixe par le même son état La spécification du comportement d’un objet est définie par les opérations décrites dans sa classe
Deux instances d’une même classe peuvent avoir des attributs avec des valeurs différentes et mais partagent les mêmes 35 méthodes.
HÉRITAGE,
GÉNÉRALISATION, SPÉCIALISATION
L’héritage est un mécanisme de transmission des caractéristiques d’une classe (ses attributs et méthodes) vers une sous-classe La notion d’héritage peut se faire par l’intermédiaire de la Généralisation et la Spécialisation
Spécialisation
Généralisation Classe fille
Méthodologie de conception 2011/2012
Classe mère
36
L’ENCAPSULATION
En effet, certains attributs et méthodes ont pour seul objectif des traitements internes à l’objet et ne doivent pas être exposés aux objets extérieurs L’encapsulation garantit l’intégrité des données, car elle permet d’interdire, ou de restreindre, l’accès direct aux attributs des objets.
Méthodologie de conception 2011/2012
L’encapsulation consiste à masquer des attributs et des méthodes de l’objet vis-à-vis des autres objets
37
Méthodologie de conception 2011/2012
UML
38
HISTORIQUE DE LA PROGRAMMATION PAR OBJETS
Simula (1969) Smalltalk (1970) C plus Classes (1980) C++ (1985) Eiffel (1988) Java (1995)
Méthodologie de conception 2011/2012
39
HISTOIRE DES MODÉLISATIONS PAR OBJETS Lorsque la programmation par objets prend de l’importance au début des années 1990, la nécessité d’une méthode de modélisation qui lui soit adaptée devient évidente. Plus de cinquante méthodes apparaissent entre 1990 et 1995 (Booch, Classe-Relation, Fusion, HOOD, OMT, OOA, OOD, OOM, OOSE, etc.) mais aucune ne parvient à s’imposer.
Méthodologie de conception 2011/2012
40
HISTOIRE DES MODÉLISATIONS PAR OBJETS (SUITE) En 1994, le consensus se fait autour de trois méthodes :
OOSE d’Ivar Jacobson (Ericsson) fonde l’analyse sur la description des besoins des utilisateurs (cas d’utilisation, ou use cases)
OOD de Grady Booch, définie pour le Department of Defense, introduit le concept de paquetage (package)
UML
Méthodologie de conception 2011/2012
OMT de James Rumbaugh (General Electric) fournit une représentation graphique des aspects statique, dynamique et fonctionnel d’un système
Unified Modeling Language
41
ÉVOLUTION PERMANENTE D’UML En 1995, Booch et Rumbaugh (et quelques autres) se sont mis d’accord pour construire une méthode unifiée, Unified Method 0.8 En 1996, Jacobson les rejoint pour produire UML 0.9 En 1997 la notion UML est adoptée par L’OMG L’OMG crée une Task Force chargée de l’évolution d’UML En 2003, version UML 1.5 En 2005 UML 2.0 En 2007 UML 2.1.1
Méthodologie de conception 2011/2012
42
UML (UNIFIED MODELING LANGUAGE) UML se définit comme un langage de modélisation graphique et textuel destiné à comprendre et décrire des besoins, spécifier et documenter des système, concevoir des architecture et des solutions logiciels UML est un langage de modélisation très répondu, garce à sa richesse sémantique, qui rend abstrait de nombreux aspects techniques En fait, et comme son nom l’indique, UML n’a pas l’ambition d’être exactement une méthode: c’est un langage
Méthodologie de conception 2011/2012
43
AXE DE MODÉLISATION
Méthodologie de conception 2011/2012
UML 2.0 comporte treize types de diagrammes représentant autant de vues pour représenter des concepts particuliers du système d’information. Ils se répartissent 3 grands groupes : Diagramme statique Diagramme fonctionnel Diagramme dynamique
44
Statique diagramme de classes diagramme d’objets diagramme de composants diagramme de déploiement diagramme de paquetages diagramme de structures composites
Fonctionnel
Dynamique
Diagramme de Use Case
Diagramme d'Etats-Transitions Diagramme d'Activité Diagramme de Séquence
Méthodologie de conception 2011/2012
45
DIAGRAMMES D’UML Diagramme de cas d’utilisation: Représente les fonctions du système du point de vue de l’utilisateur Diagramme de Classes : Représente la structure statique en terme de classes et de relations. Diagramme d ’Objets : Représente les objets et leurs relations. Diagramme d'Etats-Transitions : Représente le comportement d ’une classe en terme d’états. Diagramme d'Activité : Représente le comportement d ’une opération en terme d’actions.
Méthodologie de conception 2011/2012
46
Diagramme de Séquence : Représentation temporelle des objets et de leurs interactions. Diagramme de Collaboration :Représentation spatiale des objets, des liens et des interactions. Diagramme de Composants : Représente les composants physiques d ’une application. Diagramme de Déploiement : Représente le déploiement des composants sur le dispositif matériel.
Méthodologie de conception 2011/2012
47
QUESTIONS !!!!
Méthodologie de conception 2011/2012
48
49
Fin du Chapitre 1: Introduction
Méthodologie de conception 2011/2012
MÉTHODOLOGIE DE CONCEPTION
OMG (OBJECT MANAGEMENT GROUP)
Méthodologie de conception 2011/2012
L’OMG (Object Management Group) est une association américaine à but non-lucratif créée en 1989 dont l’objectif est de standardiser et promouvoir le modèle objet sous toutes ses formes. L’OMG est notamment à la base des spécifications UML, MOF, CORBA et IDL. L’OMG est aussi à l’origine de la recommandation MDA
50
View more...
Comments