+ All Categories
Home > Technology > Initiation à UML: Partie 1

Initiation à UML: Partie 1

Date post: 14-Jun-2015
Category:
Upload: diallo-boubacar
View: 1,160 times
Download: 0 times
Share this document with a friend
Popular Tags:
34
Auteur: DIALLO Boubacar Tel: 664 26 55 51 / 620 26 90 98 E-mail: [email protected] 1 1- Introduction 2- Historique 3- Le génie logiciel 4- La modélisation UML Université Barack Obama L2 Sciences Informatique Session: 2013-2014
Transcript
Page 1: Initiation à UML: Partie 1

Auteur: DIALLO Boubacar Tel: 664 26 55 51 / 620 26 90 98 E-mail: [email protected]

1

1- Introduction

2- Historique

3- Le génie logiciel

4- La modélisation UML

Université Barack Obama L2 Sciences Informatique

Session: 2013-2014

Page 2: Initiation à UML: Partie 1

Contexte

L'appréhension d'une problématique complexe telle que le développement d’application repose de plus en plus sur le recours à la modélisation informatique.

L’accélération du renouvellement des technologies conjuguée avec la pression économique et concurrentielle qui s’exerce sur les entreprises, obligent les acteurs du monde informatique à produire des solutions de plus en plus rapidement dans un contexte d’amélioration continue de la qualité et de la performance des systèmes d’information.

Notons aussi qu’Internet a été un vecteur favorisant le développement de très nombreuses applications dont une grande partie utilise des solutions à base de langage de programmation objet comme Java, C++ ou C#.

2

1- Introduction

Page 3: Initiation à UML: Partie 1

Objectif

Depuis longtemps, les informaticiens ont développé le langage UML (Unified Modelling Language) pour formaliser des besoins clients aux programmes qu'ils réalisent.

Ce langage est proposé comme moyen de communication entre modélisateurs ou informaticiens, et les autres métiers indépendamment des disciplines et de la technique informatique.

UML a apporté tout naturellement le support méthodologique qui manquait à tous les concepteurs et développeurs qui voulaient formaliser l’analyse et la conception technique de leur logiciel.

3

1- Introduction

Page 4: Initiation à UML: Partie 1

Spécifications

Depuis plus de 30 ans, la conception des bases de données est réalisée à l’aide du modèle entité-association. Ce modèle a fait ses preuves et la plupart des outils informatiques de conception l’utilisent encore aujourd’hui.

La notation UML s’est imposée depuis quelques années pour la modélisation et le développement d’applications écrites dans un langage objet (C++ et Java principalement).

Initialement, UML n’a pas été conçue pour les bases de données. Cependant, elle offre un même formalisme aux concepteurs d’objets métiers et aux concepteurs de bases de données.

UML s’est donc imposée en tant que langage graphique de modélisation puisque non seulement ce langage répond à un véritable besoin mais en outre il est devenu un standard de fait puisqu’il s’appuie sur une norme très structurante. 4

1- Introduction

Page 5: Initiation à UML: Partie 1

UML hérite principalement des méthodes objets de Booch ,

OMT (Object Modeling Technique en français Technique de modélisation objet) et OOSE (Object Oriented Software Engineering) inventées respectivement par Grady Booch, Rumbaugh et Jacobson

UML est une fusion de OOA/OOSE/OMT;

Adopté par l' OMG en Novembre 1997 devient un standard.

5

2- Historique

Page 6: Initiation à UML: Partie 1

3- Le génie logiciel

1- Présentation 2- Les phases de réalisation d’un logiciel 2.1- La phase d’analyse 2.2- La phase de conception 2.3- La phase de réalisation 2.4- La phase de mise en place 2.5- La phase d’exploitation et maintenance 2.6- La phase de démontage

6

Page 7: Initiation à UML: Partie 1

Un logiciel est un ensemble d’appels de sous-programmes Le génie logiciel est un domaine de l’informatique qui a pour objet l’étude des moyens (méthodes, outils) qui permettent de créer des logiciels de qualité. Le but du génie logiciel est de réaliser une industrialisation de la conception logicielle afin de créer des procédés de fabrication qui répond au CQFD: Coûts: les coûts ne seront pas dépassés: optimisation des ressources Qualités: le logiciel doit avoir les qualités suivantes:

Validité: capacité à exécuter les tâches pour lesquelles il à été créer Fiabilité: capacité de fournir les résultats attendus Robustesse: capacité à fonctionner dans des condition anormales Extensibilité: capacité à ajouter de nouvelles fonctionnalités Compatibilité: capacité à coopérer avec d’autres logiciel Efficacité: capacité de fournir de bon résultats dans les délais prévus Portabilité: capacité à être porté sur d’autre OS Lisibilité: capacité d’une personne à comprendre le code

Fonctionnalités: le logiciel doit répondre aux attentes des commanditaires Délais: Les délais ne seront pas dépassés: gestion du temps

7

1- Présentation du géni logiciel

Page 8: Initiation à UML: Partie 1

La réalisation d’un logiciel se résume en 6 phases:

3.1- La phase d’analyse

3.2- La phase de conception

3.3- La phase de réalisation

3.4- La phase de mise en place

3.5- La phase d’exploitation et maintenance

3.6- La phase de démontage

8

2- Les phases de réalisation d’un logiciel

Page 9: Initiation à UML: Partie 1

Etude de faisabilité

Consiste à déterminer: les avantages,

les inconvénients

que procureraient la réalisation et l’utilisation d’un nouveau logiciel.

Elle est destinée aux décideurs qui: Valident les orientations

Chiffrent l’effort, coût de réalisation, gestion des délais, temps de formation des utilisateurs, coûts d’achat de nouveaux matériels, récupération des anciennes données.

9

2.1- La phase d’analyse

Page 10: Initiation à UML: Partie 1

Cahier des charges

Faire une étude de l’existence des logiciels.

Est un guide qui permet de définir les logiciels dans ses grandes lignes (pas trop techniques)

Indique ce qui doit être fait mais sans dire vraiment comment.

Permettra au concepteur de valider chaque étape de la réalisation du logiciel.

Indique les spécification du projet.

10

2.1- La phase d’analyse

Page 11: Initiation à UML: Partie 1

C’est la phase la plus importante, elle définit l’architecture

du logiciel (son squelette, son comportement, etc.). On distingue 2 architectures: L’architecture global du logiciel: qui consiste à faire un

représentation global du logiciel (c’est-à-dire, décrire le logiciel de façon global);

L’architecture détaille: décrit les composants du logiciel et le lien entre les différents composant du logiciel.

L’architecture d’un logiciel concerne 2 aspects: Statique: décrit les parties non variable du logiciel une fois

validé; Dynamique : décrit le comportement du logiciel de façon

global et de chaque composant du logiciel

11

2.2- La phase de conception

Page 12: Initiation à UML: Partie 1

Une fois la conception terminée et validée, la

réalisation du logiciel doit être effective.

Il s’agit de transformer le schéma du logiciel en un produit (exécutable).

Cette phase consiste à conduire le logiciel

12

3.3- La phase de réalisation

Spécification Conception Réalisation Validation

Page 13: Initiation à UML: Partie 1

La spécification consiste à décrire toutes les spécification: Fonctionnelles: ce que doit réaliser le logiciel (sous-

programmes / traitements à réaliser) Non fonctionnelles: contraintes d’environnements,

performance, sécurité.

La conception consiste à apporter une réponse à l’étape précédente: Architecture (modules, objets, classes, fonctions) Matériel (environnement de développement, application

externes utilisées).

L’implantation ( implémentation ou codage) consiste à coder les données.

13

2.3- La phase de réalisation

Page 14: Initiation à UML: Partie 1

La validation sert à vérifier chaque module.

Garder la trace de ce qui a été fait.

14

2.3- La phase de réalisation

Module Test de module

Texte.dft

(Résultat correct)

Texte.res

Comparaison

Page 15: Initiation à UML: Partie 1

Maintenant que le logiciel est réalisé (l’exécutable obtenu),

il faut passer à sa mise en œuvre; Mettre en œuvre un logiciel c’est le déployer : Installer le logiciel dans l’environnement de production. Dès le début de la phase de réalisation, il faudrait pouvoir

disposer d’une machine dans l’environnement de production

Le déploiement d’un logiciel exige la préparation de son environnement de production.

Interconnecter tous les systèmes et processus devant communiquer avant le logiciel;

Transfert des données et conversion dans un nouveau format (Récupération).

15

2.4- La phase de mise en place

Page 16: Initiation à UML: Partie 1

Exploitation

Le logiciel étant en place, son n’exploitation devient fondamentale.

Cette phase résume deux tâches qui doivent se réaliser depuis la mise en place du logiciel jusqu’à sa fin.

Pour commencer l’exploitation du logiciel, on fait le paramétrage du logiciel (l’insertion des données);

Ensuite faire le traitement de donné (tester le logiciel) pour détecter les erreurs s’ils y existent.

16

2.5- Exploitation et maintenance

Page 17: Initiation à UML: Partie 1

Maintenance Une fois les erreurs détectées, il faut maintenant passer à la

correction (la maintenance du logiciel). La maintenance doit se tenir régulièrement Il existe 3 types de maintenance: Corrective: consiste à corriger les erreurs détectées lors de

l’exploitation. Bugs qui apparaissent Adaptative: consiste à adapter le logiciel à un besoin ou à un

environnement: Besoins exprimés par les utilisateurs pour faciliter leur travail.

Perfective: le logiciel satisfaisant à toutes les exigences du cahier des charges, il est nécessaire de penser à son évolution. Il s’agit de le rendre plus performent. Mise en place d’un système de traçage des bugs (date/conditions de reproduction/solution et correction)

17

2.5- Exploitation et maintenance

Page 18: Initiation à UML: Partie 1

Malgré toutes les maintenances réalisées, le logiciel ne

peut plus satisfaire les besoins du client; donc révolue: c’est la fin de vie du logiciel on parle alors de démontage.

Un logiciel est qualifié de révolue lorsque: Le logiciel ne satisfait plus les besoins des utilisateurs et

aucune maintenance ne peut palier à problème; Le logiciel est dépassé par la technologie; Le client n’à plus besoin du logiciel.

Le démontage du logiciel est assimilé comme la fin de vie du logiciel;

Il faut donc supprimer les exécutables, les drivers et les données.

18

2.6- Démontage

Page 19: Initiation à UML: Partie 1

La modélisation UML

1- Présentation de UML 2- Le modèle 3- L’utilisation des modèles

19

Page 20: Initiation à UML: Partie 1

UML (Unified Modeling Language) est normalisé par l'OMG

(Object Management Group)

http://www.omg.org/spec/UML/

Dernière version : 2.4.1 (Août 2011)

UML est une notation standard pour la modélisation d'applications à base d'objets (et de composants depuis la version 2)

UML est utilisable dans de nombreux autres contextes de conception ou spécification

Exemple : schéma de BDD

UML est un langage utilisant une notation graphique

20

4- Présentation de UML

Page 21: Initiation à UML: Partie 1

UML, différent d’un processus de développement UML fournit une notation/syntaxe pour les diagrammes

et modèles définis pendant tout le cycle de développement

UML permet de définir des modèles de niveaux différents Analyse Conception Spécification d'implémentation .... Il faut préciser à quel niveau correspond un modèle On peut raffiner un modèle pour le spécifier à chaque

niveau

21

1- Présentation de UML (suite)

Page 22: Initiation à UML: Partie 1

Un modèle est une représentation partielle de

la réalité

Abstraction de ce qui est intéressant pour un contexte donné

Vue subjective et simplifiée d'un système

Avec UML, on va s'intéresser principalement aux modèles d'applications informatiques Un modèle UML = des diagrammes UML

22

2- Le modèle (Diagramme)

Page 23: Initiation à UML: Partie 1

Faciliter la compréhension d'un système

Permettre également la communication avec le client

Vision de communication, de documentation

Définir voire simuler le fonctionnement d'un système

Dans ce cas, on se doit d'être le plus précis possible dans le contenu des modèles pour s'approcher du code

Vision de développement, de production 23

3- L’utilité des modèles

Page 24: Initiation à UML: Partie 1

24

1- Introduction

2- Les différents types de diagrammes

2.1- Les diagrammes structurelles

2.2- Les diagrammes comportementaux

2.2.1- Les diagrammes d’interactions

Page 25: Initiation à UML: Partie 1

Afin d’assurer un bon niveau de cohérence et d’homogénéité

sur l’ensemble des modèles, UML propose:

d’une part un certain nombre de règles d’écriture ou de représentations graphiques normalisées

et d’autre part des mécanismes ou des concepts communs applicables à l’ensemble des diagrammes.

Certains éléments, comme les stéréotypes, sont spécifiquement prévus pour assurer une réelle capacité:

d’adaptation

et d’évolution

de la notation notamment pour prendre en compte les particularités des différentes situations à modéliser.

25

1- Introduction

Page 26: Initiation à UML: Partie 1

UML dans sa version 2 propose treize diagrammes

qui peuvent être utilisés dans la description d’un système.

Ces diagrammes sont regroupés dans deux grands ensembles.

Les diagrammes Structurels

Les diagramme comportementaux

Dans cette catégorie, on identifie un autre sous type;

Les diagramme d’interaction 26

2- Les différents types de diagrammes

Page 27: Initiation à UML: Partie 1

Ces diagrammes, au nombre de six, ont vocation à

représenter l’aspect statique d’un système (classes, objets, composants…).

Diagramme de classe – Ce diagramme représente la description statique du système en intégrant dans chaque classe la partie dédiée aux données et celle consacrée aux traitements. C’est le diagramme pivot de l’ensemble de la modélisation d’un système.

Diagramme d’objet – Le diagramme d’objet permet la représentation d’instances des classes et des liens entre instances.

27

2.1- Les diagrammes structurels

Page 28: Initiation à UML: Partie 1

Diagramme de composant (modifié dans UML 2) – Ce

diagramme représente les différents constituants du logiciel au niveau de l’implémentation d’un système.

Diagramme de déploiement (modifié dans UML 2) – Ce diagramme décrit l’architecture technique d’un système avec une vue centrée sur la répartition des composants dans la configuration d’exploitation.

Diagramme de paquetage (nouveau dans UML 2) – Ce diagramme donne une vue d’ensemble du système structuré en paquetage. Chaque paquetage représente un ensemble homogène d’éléments du système (classes, composants…). 28

2.1- Les diagrammes structurels

Page 29: Initiation à UML: Partie 1

Diagramme de structure composite: ce diagramme

permet de décrire la structure interne d’un ensemble complexe composé par exemple de classes ou d’objets et de composants techniques.

Ce diagramme met aussi l’accent sur les liens entre les sous-ensembles qui collaborent.

29

2.1- Les diagrammes structurels

Page 30: Initiation à UML: Partie 1

Ces diagrammes représentent la partie dynamique

d’un système réagissant aux événements et permettant de produire les résultats attendus par les utilisateurs. Sept diagrammes sont proposés par UML :

Diagramme des cas d’utilisation – Ce diagramme est destiné à représenter les besoins des utilisateurs par rapport au système. Il constitue un des diagrammes les plus structurants dans l’analyse d’un système.

30

2.2- Les diagrammes comportementaux

Page 31: Initiation à UML: Partie 1

– Diagramme d’état-transition (machine d’état) – Ce

diagramme montre les différents états des objets en réaction aux événements.

– Diagramme d’activités (modifié dans UML 2) – Ce diagramme donne une vision des enchaînements des activités propres à une opération ou à un cas d’utilisation. Il permet aussi de représenter les flots de contrôle et les flots de données.

31

2.2- Les diagrammes comportementaux

Page 32: Initiation à UML: Partie 1

– Diagramme de séquence (modifié dans UML 2) – Ce

diagramme permet de décrire les scénarios de chaque cas d’utilisation en mettant l’accent sur la chronologie des opérations en interaction avec les objets.

– Diagramme de communication (anciennement appelé collaboration) – Ce diagramme est une autre représentation des scénarios des cas d’utilisation qui met plus l’accent sur les objets et les messages échangés.

32

2.2- Les diagrammes comportementaux

Page 33: Initiation à UML: Partie 1

– Diagramme global d’interaction (nouveau dans UML 2)

– Ce diagramme fournit une vue générale des interactions décrites dans le diagramme de séquence et des flots de contrôle décrits dans le diagramme d’activités.

– Diagramme de temps (nouveau dans UML 2) – Ce diagramme permet de représenter les états et les interactions d’objets dans un contexte où le temps a une forte influence sur le comportement du système à gérer.

33

2.2- Les diagrammes comportementaux

Page 34: Initiation à UML: Partie 1

Merci pour votre attention!!!!

Vos questions SVP…

Prof: M. DIALLO Boubacar Tel: 664 26 55 51 / 620 26 90 98 E-mail: [email protected] 34

FIN


Recommended