Introduction à la modélisation objet avec UML

1/53
100%

<!-- Slide number: 1 -->

Introduction la mod lisation objet avec UML

Mme CHALOUAH Anissa

I.S.E.T Bizerte

D partement Technologies de linformatique

! (Picture2.jpg)

13/02/2015

Mme CHALOUAH Anissa

1

Notes:

<!-- Slide number: 2 -->

PLAN

Besoin de mod lisation

Le paradigme de lorient objet

LUML

13/02/2015

Mme CHALOUAH Anissa

2

<!-- Slide number: 3 -->

Chapitre 1 :

Introduction la mod lisation objet avec UML

Besoin de Mod lisation

13/02/2015

Mme CHALOUAH Anissa

3

<!-- Slide number: 4 -->

Mat riel et logiciel

Syst mes informatiques :

80 % de logiciel.

20 % de mat riel.

Le mat riel est relativement stable, le march est standardis .

Les probl mes li s l'informatique sont essentiellement des probl mes de logiciel.

13/02/2015

Mme CHALOUAH Anissa

4

<!-- Slide number: 5 -->

Complexit des logiciels

Tendances :

Programmer sans programmer : R utilisation.

Informatique distribu e

Limportance de larchitecture logicielle

multim dia

13/02/2015

Mme CHALOUAH Anissa

5

<!-- Slide number: 6 -->

La crise du logiciel

Constat du d veloppement logiciel fin ann es 60 :

d lais de livraison non respect s

budget non respect

ne r pond pas aux besoins de l'utilisateur ou du client.

difficile utiliser, maintenir, et faire voluer

13/02/2015

Mme CHALOUAH Anissa

6

<!-- Slide number: 7 -->

La crise du logiciel

tude du Department of Defense DoDdes tats-Unis sur les logiciels produits dans le cadre de 9 gros projets militaires

![](Picture2.jpg)

13/02/2015

Mme CHALOUAH Anissa

7

<!-- Slide number: 8 -->

La crise du logiciel

![](Picture2.jpg)

![](Picture3.jpg)

13/02/2015

Mme CHALOUAH Anissa

8

<!-- Slide number: 9 -->

La crise du logiciel

Utilisation des fonctionnalit s implant es

![](Picture2.jpg)

13/02/2015

Mme CHALOUAH Anissa

9

<!-- Slide number: 10 -->

Poids de la maintenance

| | Effort de d veloppement | Origine des erreurs | Co t de la maintenance |

| --- | --- | --- | --- |

| Analyse des besoins | 6% | 56% | 82% |

| Conception | 5% | 27% | 13% |

| Codage | 7% | 7% | 1% |

| Int gration et test | 15% | 10% | 4% |

| Maintenance | 67% | | |

13/02/2015

Mme CHALOUAH Anissa

10

<!-- Slide number: 11 -->

Raisons des checs

N gligence de la phase d'analyse des besoins du client.

Taille et complexit croissante des logiciels .

Manque de m thodes de conception.

N gligence et manque de m thodes et d'outils des phases de validation.

Taille des quipes en charge du logiciel.

13/02/2015

Mme CHALOUAH Anissa

11

<!-- Slide number: 12 -->

G nie Logiciel

G nie Logiciel (Software Engineering) :

Comment faire des logiciels de qualit ?

Qu'attend-on d'un logiciel ? Quels sont les crit res de qualit ?

13/02/2015

Mme CHALOUAH Anissa

Publicité

12

<!-- Slide number: 13 -->

Crit res de qualit dun logiciel

Utilit :Ad quation entre le logiciel et les besoins des utilisateurs.

Utilisabilit

Fiabilit : Tol rance aux pannes

Interop rabilit : Interactions avec d'autres logiciels

Performance : temps de r ponse, d bit, fluidit ...

Portabilit

R utilisabilit

Maintenabilit : facilit corriger ou transformer le logiciel.

13/02/2015

Mme CHALOUAH Anissa

13

<!-- Slide number: 14 -->

Qu'est-ce qu'un mod le ?

un mod le est pr vu pour arriver anticiper les r sultats du codage.

Lint r t du mod le en programmation, cest de permettre de r aliser une maquette simplifi e du programme r aliser.

Un mod le est une abstraction, une simplification de la r alit .

13/02/2015

Mme CHALOUAH Anissa

14

<!-- Slide number: 15 -->

Qu'est-ce qu'un mod le ?

Cest un outil majeur de communication entre les diff rents intervenants au sein dun projet.

Chaque membre de l quipe, depuis lutilisateur jusquau d veloppeur, utilise et enrichit le mod le diff remment.

En outre, les syst mes devenant de plus en plus complexes, leur compr hension et leur ma trise globale d passent les capacit s dun seul individu.

13/02/2015

Mme CHALOUAH Anissa

15

<!-- Slide number: 16 -->

Qu'est-ce qu'un mod le ?

Le mod le pr sente notamment latout de faciliter la tra abilit du syst me, savoir la possibilit de partir dun de ses l ments et de suivre ses interactions et liens avec dautres parties du mod le.

13/02/2015

Mme CHALOUAH Anissa

16

<!-- Slide number: 17 -->

Qualit dun bon mod le

Un bon mod le doit :

faciliter la compr hension du programme tudi , en r duisant la complexit .

permettre de simuler le comportement du programme

Un bon mod le doit donc tre construit:

au bon niveau de d tail,

selon le bon point de vue.

13/02/2015

Mme CHALOUAH Anissa

17

Notes:

Pensez lanalogie de la carte routi re. Pour circuler dans Toulouse, la carte de France serait

de peu dutilit . En revanche, pour aller de Toulouse Paris, la carte de la Haute-Garonne ne

suffit pas& chaque voyage correspond la bonne carte

<!-- Slide number: 18 -->

R les du mod le

Il permet de :

Visualiser le syst me comme il est ou comme il devrait tre.

Valider le mod le vis- -vis des clients.

Sp cifier les structures de donn es et le comportement du syst me.

Fournir un guide pour la construction du syst me.

Documenter le syst me et les d cisions prises.

13/02/2015

Mme CHALOUAH Anissa

18

<!-- Slide number: 19 -->

Approche de mod lisation

Il existe deux approches de mod lisation (d marches de conception) pour un logiciel :

L'approche fonctionnelle

L'approche objet.

13/02/2015

Mme CHALOUAH Anissa

19

<!-- Slide number: 20 -->

Lapproche fonctionnelle

Cette approche d rive des langages de programmation proc duraux.

D composition d'une t che en termes de sous-programmes.

Analyse du probl me de mani re descendante ("Top-Down").

Avantages : Lisibilit et modularit

Inconv nients :

La sp cialisation des fonctions ne favorise pas leur r utilisation.

conception plat de spaghettis dans les appels de proc dures. Il serait bien de "responsabiliser" nos parties de programmes

13/02/2015

Mme CHALOUAH Anissa

20

<!-- Slide number: 21 -->

Lapproche fonctionnelle

! (Picture2.jpg)

13/02/2015

Mme CHALOUAH Anissa

21

<!-- Slide number: 22 -->

La mod lisation objet

La mod lisation objet consiste cr er une repr sentation informatique des l ments du monde r el, sans se pr occuper de limpl mentation.

Il sagit donc de d terminer les objets pr sents et disoler leurs donn es et les fonctions qui les utilisent.

13/02/2015

Mme CHALOUAH Anissa

22

<!-- Slide number: 23 -->

Int r t du mod le objet

La force de la programmation objet, cest quelle sappuie sur un mod le calqu sur la r alit physique du monde.

Les objets se comportent comme des entit s ind pendantes, auto-suffisantes qui collaborent par change de message.

13/02/2015

Mme CHALOUAH Anissa

23

<!-- Slide number: 24 -->

Chapitre 1 :

Introduction la mod lisation objet avec UML

Publicité

Le paradigme Orient e objet

13/02/2015

Mme CHALOUAH Anissa

24

<!-- Slide number: 25 -->

Paradigme objet

Programmation Objet :

Un programme = une soci t d'entit s

Son ex cution : les entit s collaborent pour r soudre le probl me final en s'envoyant des messages.

une entit = un objet qui prend en compte sa propre gestion (objet responsable)

Liaison in vitable entre donn es et proc dures op rant sur ces donn es.

Avantages

Faciliter le d veloppement en mode boite noire

Maximiser la localit des changements

Permettre la r utilisation de code

13/02/2015

Mme CHALOUAH Anissa

25

<!-- Slide number: 26 -->

Concepts Objet

Les concepts objets se traduisent par les notions suivantes :

Objet

Classe

Encapsulation

Abstraction

H ritage

Polymorphisme

13/02/2015

Mme CHALOUAH Anissa

26

<!-- Slide number: 27 -->

Lobjet

Toute entit identifiable, concr te ou abstraite, peut tre consid r e comme un objet.

Un objet r agit certains messages quon lui envoie de lext rieur ; la fa on dont il r agit d termine le comportement de lobjet.

Il ne r agit pas toujours de la m me fa on un m me message ; sa r action d pend de l tat dans lequel il est.

13/02/2015

Mme CHALOUAH Anissa

27

<!-- Slide number: 28 -->

Lobjet

Caract ris par :

son comportement : que peut-on faire avec cet objet?

M thodes

Son tat : comment r agit lobjet quand on applique ces m thodes?

Attributs (Champs)

son identit : comment distinguer les objets qui ont le m me tat et le m me comportement? Identifiant

A les m mes r actions et la m me modularit que le monde r el.

Lobjet informatique est une projection de lobjet du monde r el.

13/02/2015

Mme CHALOUAH Anissa

28

<!-- Slide number: 29 -->

La classe

Une classe est la description des caract ristiques communes tous les objets.

Une classe est un mod le de d finition pour des objets

ayant m me structure (m me ensemble d'attributs),

ayant m me comportement (m mes op rations, m thodes),

ayant une s mantique commune.

Classe = sch ma/moule/mod le dobjets, elle d crit :

partie priv e

structure de donn es interne (attributs)

corps des m thodes (algorithmes)

partie publique (interface)

noms et param tres des m thodes

13/02/2015

Mme CHALOUAH Anissa

29

<!-- Slide number: 30 -->

La classe

Les objets (instances) sont cr s (instanci s) partir de "moules" : les classes.

Classe = g n rateur dobjets par instanciation, on peut fabriquer des objets ob issant ce sch ma/moule/mod le.

![](Picture2.jpg)

13/02/2015

Mme CHALOUAH Anissa

30

<!-- Slide number: 31 -->

Exemple : classe et objet

![](Picture2.jpg)

13/02/2015

Mme CHALOUAH Anissa

31

<!-- Slide number: 32 -->

Abstraction

Une abstraction est un r sum , un condens

Mise en avant des caract ristiques essentielles

Dissimulation des d tails

Une abstraction se d finit par rapport un point de vue

Exemple dabstraction : carte routi re

13/02/2015

Mme CHALOUAH Anissa

32

<!-- Slide number: 33 -->

Encapsulation

M canisme consistant rassembler, au sein dune m me structure, les donn es et les traitements

D finition des attributs et m thodes au niveau de la classe

Limpl mentation de la classe est cach e pour lutilisateur

D finition dune interface : vue externe de lobjet

Possibilit de modifier limpl mentation sans modifier linterface

Facilit de l volution de lobjet

Pr servation de lint grit des donn es

Lacc s direct aux attributs est interdit

Linteraction entre les objets se fait uniquement gr ce aux m thodes.

13/02/2015

Mme CHALOUAH Anissa

33

Publicité

<!-- Slide number: 34 -->

H ritage

Un objet sp cialis b n ficie ou h rite des caract ristiques de lobjet le plus g n ral, auquel il rajoute ses l ments propres

Cr ation de nouvelles classes bas es sur des classes existantes.

Transmission des propri t s (attributs et m thodes) de la classe m re vers la classe fille.

Traduit la relation est un &

Deux orientations possibles

Sp cialisation : Ajout / adaptation des caract ristiques

G n ralisation : Regroupement des caract ristiques communes

Avantages

viter la duplication du code

Encourager la r utilisation du code

13/02/2015

Mme CHALOUAH Anissa

34

<!-- Slide number: 35 -->

H ritage : Exemple

![](Picture3.jpg)

13/02/2015

Mme CHALOUAH Anissa

35

<!-- Slide number: 36 -->

Polymorphisme

D finition :

Poly : plusieurs

Morphisme : Forme

Facult dune m thode pouvoir sappliquer des objets de classes diff rentes.

Capacit dune classe red finir une m thode h rit e partir dune classe m re

Surcharge

Avantages

Lisibilit du code

G n ricit du code

13/02/2015

Mme CHALOUAH Anissa

36

<!-- Slide number: 37 -->

Polymorphisme : exemple

![](Picture2.jpg)

float surface(float rayon) {

return (3,14rayonrayon);

}

float surface(float longueur, float largeur) {

return (longueu*largeur);

}

13/02/2015

Mme CHALOUAH Anissa

37

<!-- Slide number: 38 -->

Chapitre 1 :

Introduction la mod lisation objet avec UML

UML : UNIFIED MODELINGLANGUAGE

13/02/2015

Mme CHALOUAH Anissa

38

<!-- Slide number: 39 -->

Historique

Ann es 80

M thodes pour organiser la programmation fonctionnelle (Merise)

S paration des donn es et des traitements

D but des ann es 90

Apparition de la programmation objet: n cessite dune m thodologie adapt e

Apparition de plus de 50 m thodes entre 1990 et 1995 1994

Consensus sur 3 m thodes

OMT de James Rumbaugh : repr sentation graphique des aspects statiques, dynamiques et fonctionnels dun syst me

OOD de Grady Booch: concept de package

OOSE de Ivar Jacobson : description des besoins de lutilisateur.

13/02/2015

Mme CHALOUAH Anissa

39

<!-- Slide number: 40 -->

Gen se de UML(Unified Modeling Langage)

! (Picture2.jpg)

13/02/2015

Mme CHALOUAH Anissa

40

<!-- Slide number: 41 -->

UML(Unified Modeling Langage)

UML est un langage universel de mod lisation orient e objet.

UML est une notation, un outil de communication visuelle (diagrammes)

UML est une norme maintenue par lOMG (Object Management Group)

UML est dans le domaine public, cest un standard.

13/02/2015

Mme CHALOUAH Anissa

41

<!-- Slide number: 42 -->

UML

UML est un langage pour :

Visualiser

Chaque symbole graphique poss de une s mantique.

Sp cifier

De mani re pr cise et compl te, sans ambigu t .

Construire

Une partie du code des classes peut tre g n r automatiquement.

Documenter

Les diff rents diagrammes, notes, contraintes, exigences sont conserv s dans un document.

13/02/2015

Mme CHALOUAH Anissa

42

<!-- Slide number: 43 -->

UML(Unified Modeling Langage)

UML nest pas une m thode.

UML nest pas un processus de d veloppement.

UML nest pas un langage de programmation.

13/02/2015

Mme CHALOUAH Anissa

Publicité

43

<!-- Slide number: 44 -->

Objectifs dUML

Fournir un langage visuel et expressif.

Fournir des m canismes dextension.

Etre ind pendant des technologies et langages dimpl mentation

Fournir une base formelle pour la mod lisation.

13/02/2015

Mme CHALOUAH Anissa

44

Notes:

<!-- Slide number: 45 -->

Les diagrammes UML

! (Picture2.jpg)

13/02/2015

Mme CHALOUAH Anissa

45

<!-- Slide number: 46 -->

Les diagrammes UML

Diagrammes de cas dutilisation : d crivent les services rendus par le syst me du point de vue de lutilisateur.

Diagrammes de classes : d crivent les classes dune application et leurs relations statiques.

Diagrammes dobjets : montrent l tat dune application un instant donn . (Instances des classes)

13/02/2015

Mme CHALOUAH Anissa

46

<!-- Slide number: 47 -->

Les diagrammes UML

Diagrammes de s quence : Sc nario dun cas dutilisation : chronologie des op rations.

Diagrammes de collaboration : sont une repr sentation spatiale des interactions entre objets.

Diagrammes d etats-transitions : repr sentent le comportement dun objet sous la forme dun automate tats

13/02/2015

Mme CHALOUAH Anissa

47

<!-- Slide number: 48 -->

Les diagrammes UML

Diagrammes de composants : Repr sentation des composants logiciels dun syst me.

Diagrammes de d ploiement : Description de larchitecture technique du syst me .

Diagrammes dactivit s : Vue des encha nements des activit s dun cas dutilisation ou dune op ration

13/02/2015

Mme CHALOUAH Anissa

48

<!-- Slide number: 49 -->

Les 3 axes de mod lisation dun syst me

Axe fonctionnel

(ce que le syst me FAIT)

Diagramme de cas dutilisations

Diagramme de classes

Diagramme dobjets

Diagramme de composants

Diagramme d tats-transitions

Diagramme de s quence

Diagramme dactivit

Axe dynamique

(comment le syst me volue)

Axe statique

(ce que le syst me EST)

13/02/2015

Mme CHALOUAH Anissa

49

<!-- Slide number: 50 -->

Les Vues en UML

Une fa on de mettre en Suvre UML est de consid rer diff rentes vues qui peuvent se superposer pour collaborer la d finition du syst me.

Ce sont des formulations du probl me selon un certain point de vue.

Elles peuvent se chevaucher pour compl ter une description.

Leur somme repr sente le mod le en entier : 4 vues plus 1.

13/02/2015

Mme CHALOUAH Anissa

50

<!-- Slide number: 51 -->

Les Vues en UML

! (Picture2.jpg)

Le mod le 4+1 vues de Kruchten

13/02/2015

Mme CHALOUAH Anissa

51

<!-- Slide number: 52 -->

Les Vues en UML

Vue des cas dutilisation :

c'est la description du mod le vu par les acteurs du syst me.

Elle correspond aux besoins attendus par chaque acteur

(c'est le QUOI et le QUI).

Vue logique :

c'est la d finition du syst me vu de l'int rieur.

Elle explique comment peuvent tre satisfaits les besoins des acteurs

(c'est le COMMENT).

Vue d'impl mentation :

cette vue d finit les d pendances entre les modules.

13/02/2015

Mme CHALOUAH Anissa

52

<!-- Slide number: 53 -->

Les Vues en UML

Vue des processus :

c'est la vue temporelle et technique

Elle met en Suvre les notions de t ches concurrentes, contr le, synchronisation&

Vue de d ploiement :

cette vue d crit la position g ographique et l'architecture physique de chaque l ment du syst me (c'est le O ).

13/02/2015

Mme CHALOUAH Anissa

53

Introduction à la modélisation objet avec UML

Modeling and Information Technology · notes

Voir tous les documents en génie logiciel

<!-- Slide number: 1 -->

Introduction la mod lisation objet avec UML

Mme CHALOUAH Anissa

I.S.E.T Bizerte

D partement Technologies de linformatique

! (Picture2.jpg)

13/02/2015

Mme CHALOUAH Anissa

1

Notes:

<!-- Slide number: 2 -->

PLAN

Besoin de mod lisation

Le paradigme de lorient objet

LUML

13/02/2015

Mme CHALOUAH Anissa

2

<!-- Slide number: 3 -->

Chapitre 1 :

Introduction la mod lisation objet avec UML

Besoin de Mod lisation

13/02/2015

Mme CHALOUAH Anissa

3

<!-- Slide number: 4 -->

Mat riel et logiciel

Syst mes informatiques :

80 % de logiciel.

20 % de mat riel.

Le mat riel est relativement stable, le march est standardis .

Les probl mes li s l'informatique sont essentiellement des probl mes de logiciel.

13/02/2015

Mme CHALOUAH Anissa

4

<!-- Slide number: 5 -->

Complexit des logiciels

Tendances :

Programmer sans programmer : R utilisation.

Informatique distribu e

Limportance de larchitecture logicielle

multim dia

13/02/2015

Mme CHALOUAH Anissa

5

<!-- Slide number: 6 -->

La crise du logiciel

Constat du d veloppement logiciel fin ann es 60 :

d lais de livraison non respect s

budget non respect

ne r pond pas aux besoins de l'utilisateur ou du client.

difficile utiliser, maintenir, et faire voluer

13/02/2015

Mme CHALOUAH Anissa

6

<!-- Slide number: 7 -->

La crise du logiciel

tude du Department of Defense DoDdes tats-Unis sur les logiciels produits dans le cadre de 9 gros projets militaires

![](Picture2.jpg)

13/02/2015

Mme CHALOUAH Anissa

7

<!-- Slide number: 8 -->

La crise du logiciel

![](Picture2.jpg)

![](Picture3.jpg)

13/02/2015

Mme CHALOUAH Anissa

8

<!-- Slide number: 9 -->

La crise du logiciel

Utilisation des fonctionnalit s implant es

![](Picture2.jpg)

13/02/2015

Mme CHALOUAH Anissa

9

<!-- Slide number: 10 -->

Poids de la maintenance

| | Effort de d veloppement | Origine des erreurs | Co t de la maintenance |

| --- | --- | --- | --- |

| Analyse des besoins | 6% | 56% | 82% |

| Conception | 5% | 27% | 13% |

| Codage | 7% | 7% | 1% |

| Int gration et test | 15% | 10% | 4% |

| Maintenance | 67% | | |

13/02/2015

Mme CHALOUAH Anissa

10

<!-- Slide number: 11 -->

Raisons des checs

N gligence de la phase d'analyse des besoins du client.

Taille et complexit croissante des logiciels .

Manque de m thodes de conception.

N gligence et manque de m thodes et d'outils des phases de validation.

Taille des quipes en charge du logiciel.

13/02/2015

Mme CHALOUAH Anissa

11

<!-- Slide number: 12 -->

G nie Logiciel

G nie Logiciel (Software Engineering) :

Comment faire des logiciels de qualit ?

Qu'attend-on d'un logiciel ? Quels sont les crit res de qualit ?

13/02/2015

Mme CHALOUAH Anissa

Publicité

12

<!-- Slide number: 13 -->

Crit res de qualit dun logiciel

Utilit :Ad quation entre le logiciel et les besoins des utilisateurs.

Utilisabilit

Fiabilit : Tol rance aux pannes

Interop rabilit : Interactions avec d'autres logiciels

Performance : temps de r ponse, d bit, fluidit ...

Portabilit

R utilisabilit

Maintenabilit : facilit corriger ou transformer le logiciel.

13/02/2015

Mme CHALOUAH Anissa

13

<!-- Slide number: 14 -->

Qu'est-ce qu'un mod le ?

un mod le est pr vu pour arriver anticiper les r sultats du codage.

Lint r t du mod le en programmation, cest de permettre de r aliser une maquette simplifi e du programme r aliser.

Un mod le est une abstraction, une simplification de la r alit .

13/02/2015

Mme CHALOUAH Anissa

14

<!-- Slide number: 15 -->

Qu'est-ce qu'un mod le ?

Cest un outil majeur de communication entre les diff rents intervenants au sein dun projet.

Chaque membre de l quipe, depuis lutilisateur jusquau d veloppeur, utilise et enrichit le mod le diff remment.

En outre, les syst mes devenant de plus en plus complexes, leur compr hension et leur ma trise globale d passent les capacit s dun seul individu.

13/02/2015

Mme CHALOUAH Anissa

15

<!-- Slide number: 16 -->

Qu'est-ce qu'un mod le ?

Le mod le pr sente notamment latout de faciliter la tra abilit du syst me, savoir la possibilit de partir dun de ses l ments et de suivre ses interactions et liens avec dautres parties du mod le.

13/02/2015

Mme CHALOUAH Anissa

16

<!-- Slide number: 17 -->

Qualit dun bon mod le

Un bon mod le doit :

faciliter la compr hension du programme tudi , en r duisant la complexit .

permettre de simuler le comportement du programme

Un bon mod le doit donc tre construit:

au bon niveau de d tail,

selon le bon point de vue.

13/02/2015

Mme CHALOUAH Anissa

17

Notes:

Pensez lanalogie de la carte routi re. Pour circuler dans Toulouse, la carte de France serait

de peu dutilit . En revanche, pour aller de Toulouse Paris, la carte de la Haute-Garonne ne

suffit pas& chaque voyage correspond la bonne carte

<!-- Slide number: 18 -->

R les du mod le

Il permet de :

Visualiser le syst me comme il est ou comme il devrait tre.

Valider le mod le vis- -vis des clients.

Sp cifier les structures de donn es et le comportement du syst me.

Fournir un guide pour la construction du syst me.

Documenter le syst me et les d cisions prises.

13/02/2015

Mme CHALOUAH Anissa

18

<!-- Slide number: 19 -->

Approche de mod lisation

Il existe deux approches de mod lisation (d marches de conception) pour un logiciel :

L'approche fonctionnelle

L'approche objet.

13/02/2015

Mme CHALOUAH Anissa

19

<!-- Slide number: 20 -->

Lapproche fonctionnelle

Cette approche d rive des langages de programmation proc duraux.

D composition d'une t che en termes de sous-programmes.

Analyse du probl me de mani re descendante ("Top-Down").

Avantages : Lisibilit et modularit

Inconv nients :

La sp cialisation des fonctions ne favorise pas leur r utilisation.

conception plat de spaghettis dans les appels de proc dures. Il serait bien de "responsabiliser" nos parties de programmes

13/02/2015

Mme CHALOUAH Anissa

20

<!-- Slide number: 21 -->

Lapproche fonctionnelle

! (Picture2.jpg)

13/02/2015

Mme CHALOUAH Anissa

21

<!-- Slide number: 22 -->

La mod lisation objet

La mod lisation objet consiste cr er une repr sentation informatique des l ments du monde r el, sans se pr occuper de limpl mentation.

Il sagit donc de d terminer les objets pr sents et disoler leurs donn es et les fonctions qui les utilisent.

13/02/2015

Mme CHALOUAH Anissa

22

<!-- Slide number: 23 -->

Int r t du mod le objet

La force de la programmation objet, cest quelle sappuie sur un mod le calqu sur la r alit physique du monde.

Les objets se comportent comme des entit s ind pendantes, auto-suffisantes qui collaborent par change de message.

13/02/2015

Mme CHALOUAH Anissa

23

<!-- Slide number: 24 -->

Chapitre 1 :

Introduction la mod lisation objet avec UML

Publicité

Le paradigme Orient e objet

13/02/2015

Mme CHALOUAH Anissa

24

<!-- Slide number: 25 -->

Paradigme objet

Programmation Objet :

Un programme = une soci t d'entit s

Son ex cution : les entit s collaborent pour r soudre le probl me final en s'envoyant des messages.

une entit = un objet qui prend en compte sa propre gestion (objet responsable)

Liaison in vitable entre donn es et proc dures op rant sur ces donn es.

Avantages

Faciliter le d veloppement en mode boite noire

Maximiser la localit des changements

Permettre la r utilisation de code

13/02/2015

Mme CHALOUAH Anissa

25

<!-- Slide number: 26 -->

Concepts Objet

Les concepts objets se traduisent par les notions suivantes :

Objet

Classe

Encapsulation

Abstraction

H ritage

Polymorphisme

13/02/2015

Mme CHALOUAH Anissa

26

<!-- Slide number: 27 -->

Lobjet

Toute entit identifiable, concr te ou abstraite, peut tre consid r e comme un objet.

Un objet r agit certains messages quon lui envoie de lext rieur ; la fa on dont il r agit d termine le comportement de lobjet.

Il ne r agit pas toujours de la m me fa on un m me message ; sa r action d pend de l tat dans lequel il est.

13/02/2015

Mme CHALOUAH Anissa

27

<!-- Slide number: 28 -->

Lobjet

Caract ris par :

son comportement : que peut-on faire avec cet objet?

M thodes

Son tat : comment r agit lobjet quand on applique ces m thodes?

Attributs (Champs)

son identit : comment distinguer les objets qui ont le m me tat et le m me comportement? Identifiant

A les m mes r actions et la m me modularit que le monde r el.

Lobjet informatique est une projection de lobjet du monde r el.

13/02/2015

Mme CHALOUAH Anissa

28

<!-- Slide number: 29 -->

La classe

Une classe est la description des caract ristiques communes tous les objets.

Une classe est un mod le de d finition pour des objets

ayant m me structure (m me ensemble d'attributs),

ayant m me comportement (m mes op rations, m thodes),

ayant une s mantique commune.

Classe = sch ma/moule/mod le dobjets, elle d crit :

partie priv e

structure de donn es interne (attributs)

corps des m thodes (algorithmes)

partie publique (interface)

noms et param tres des m thodes

13/02/2015

Mme CHALOUAH Anissa

29

<!-- Slide number: 30 -->

La classe

Les objets (instances) sont cr s (instanci s) partir de "moules" : les classes.

Classe = g n rateur dobjets par instanciation, on peut fabriquer des objets ob issant ce sch ma/moule/mod le.

![](Picture2.jpg)

13/02/2015

Mme CHALOUAH Anissa

30

<!-- Slide number: 31 -->

Exemple : classe et objet

![](Picture2.jpg)

13/02/2015

Mme CHALOUAH Anissa

31

<!-- Slide number: 32 -->

Abstraction

Une abstraction est un r sum , un condens

Mise en avant des caract ristiques essentielles

Dissimulation des d tails

Une abstraction se d finit par rapport un point de vue

Exemple dabstraction : carte routi re

13/02/2015

Mme CHALOUAH Anissa

32

<!-- Slide number: 33 -->

Encapsulation

M canisme consistant rassembler, au sein dune m me structure, les donn es et les traitements

D finition des attributs et m thodes au niveau de la classe

Limpl mentation de la classe est cach e pour lutilisateur

D finition dune interface : vue externe de lobjet

Possibilit de modifier limpl mentation sans modifier linterface

Facilit de l volution de lobjet

Pr servation de lint grit des donn es

Lacc s direct aux attributs est interdit

Linteraction entre les objets se fait uniquement gr ce aux m thodes.

13/02/2015

Mme CHALOUAH Anissa

33

Publicité

<!-- Slide number: 34 -->

H ritage

Un objet sp cialis b n ficie ou h rite des caract ristiques de lobjet le plus g n ral, auquel il rajoute ses l ments propres

Cr ation de nouvelles classes bas es sur des classes existantes.

Transmission des propri t s (attributs et m thodes) de la classe m re vers la classe fille.

Traduit la relation est un &

Deux orientations possibles

Sp cialisation : Ajout / adaptation des caract ristiques

G n ralisation : Regroupement des caract ristiques communes

Avantages

viter la duplication du code

Encourager la r utilisation du code

13/02/2015

Mme CHALOUAH Anissa

34

<!-- Slide number: 35 -->

H ritage : Exemple

![](Picture3.jpg)

13/02/2015

Mme CHALOUAH Anissa

35

<!-- Slide number: 36 -->

Polymorphisme

D finition :

Poly : plusieurs

Morphisme : Forme

Facult dune m thode pouvoir sappliquer des objets de classes diff rentes.

Capacit dune classe red finir une m thode h rit e partir dune classe m re

Surcharge

Avantages

Lisibilit du code

G n ricit du code

13/02/2015

Mme CHALOUAH Anissa

36

<!-- Slide number: 37 -->

Polymorphisme : exemple

![](Picture2.jpg)

float surface(float rayon) {

return (3,14rayonrayon);

}

float surface(float longueur, float largeur) {

return (longueu*largeur);

}

13/02/2015

Mme CHALOUAH Anissa

37

<!-- Slide number: 38 -->

Chapitre 1 :

Introduction la mod lisation objet avec UML

UML : UNIFIED MODELINGLANGUAGE

13/02/2015

Mme CHALOUAH Anissa

38

<!-- Slide number: 39 -->

Historique

Ann es 80

M thodes pour organiser la programmation fonctionnelle (Merise)

S paration des donn es et des traitements

D but des ann es 90

Apparition de la programmation objet: n cessite dune m thodologie adapt e

Apparition de plus de 50 m thodes entre 1990 et 1995 1994

Consensus sur 3 m thodes

OMT de James Rumbaugh : repr sentation graphique des aspects statiques, dynamiques et fonctionnels dun syst me

OOD de Grady Booch: concept de package

OOSE de Ivar Jacobson : description des besoins de lutilisateur.

13/02/2015

Mme CHALOUAH Anissa

39

<!-- Slide number: 40 -->

Gen se de UML(Unified Modeling Langage)

! (Picture2.jpg)

13/02/2015

Mme CHALOUAH Anissa

40

<!-- Slide number: 41 -->

UML(Unified Modeling Langage)

UML est un langage universel de mod lisation orient e objet.

UML est une notation, un outil de communication visuelle (diagrammes)

UML est une norme maintenue par lOMG (Object Management Group)

UML est dans le domaine public, cest un standard.

13/02/2015

Mme CHALOUAH Anissa

41

<!-- Slide number: 42 -->

UML

UML est un langage pour :

Visualiser

Chaque symbole graphique poss de une s mantique.

Sp cifier

De mani re pr cise et compl te, sans ambigu t .

Construire

Une partie du code des classes peut tre g n r automatiquement.

Documenter

Les diff rents diagrammes, notes, contraintes, exigences sont conserv s dans un document.

13/02/2015

Mme CHALOUAH Anissa

42

<!-- Slide number: 43 -->

UML(Unified Modeling Langage)

UML nest pas une m thode.

UML nest pas un processus de d veloppement.

UML nest pas un langage de programmation.

13/02/2015

Mme CHALOUAH Anissa

Publicité

43

<!-- Slide number: 44 -->

Objectifs dUML

Fournir un langage visuel et expressif.

Fournir des m canismes dextension.

Etre ind pendant des technologies et langages dimpl mentation

Fournir une base formelle pour la mod lisation.

13/02/2015

Mme CHALOUAH Anissa

44

Notes:

<!-- Slide number: 45 -->

Les diagrammes UML

! (Picture2.jpg)

13/02/2015

Mme CHALOUAH Anissa

45

<!-- Slide number: 46 -->

Les diagrammes UML

Diagrammes de cas dutilisation : d crivent les services rendus par le syst me du point de vue de lutilisateur.

Diagrammes de classes : d crivent les classes dune application et leurs relations statiques.

Diagrammes dobjets : montrent l tat dune application un instant donn . (Instances des classes)

13/02/2015

Mme CHALOUAH Anissa

46

<!-- Slide number: 47 -->

Les diagrammes UML

Diagrammes de s quence : Sc nario dun cas dutilisation : chronologie des op rations.

Diagrammes de collaboration : sont une repr sentation spatiale des interactions entre objets.

Diagrammes d etats-transitions : repr sentent le comportement dun objet sous la forme dun automate tats

13/02/2015

Mme CHALOUAH Anissa

47

<!-- Slide number: 48 -->

Les diagrammes UML

Diagrammes de composants : Repr sentation des composants logiciels dun syst me.

Diagrammes de d ploiement : Description de larchitecture technique du syst me .

Diagrammes dactivit s : Vue des encha nements des activit s dun cas dutilisation ou dune op ration

13/02/2015

Mme CHALOUAH Anissa

48

<!-- Slide number: 49 -->

Les 3 axes de mod lisation dun syst me

Axe fonctionnel

(ce que le syst me FAIT)

Diagramme de cas dutilisations

Diagramme de classes

Diagramme dobjets

Diagramme de composants

Diagramme d tats-transitions

Diagramme de s quence

Diagramme dactivit

Axe dynamique

(comment le syst me volue)

Axe statique

(ce que le syst me EST)

13/02/2015

Mme CHALOUAH Anissa

49

<!-- Slide number: 50 -->

Les Vues en UML

Une fa on de mettre en Suvre UML est de consid rer diff rentes vues qui peuvent se superposer pour collaborer la d finition du syst me.

Ce sont des formulations du probl me selon un certain point de vue.

Elles peuvent se chevaucher pour compl ter une description.

Leur somme repr sente le mod le en entier : 4 vues plus 1.

13/02/2015

Mme CHALOUAH Anissa

50

<!-- Slide number: 51 -->

Les Vues en UML

! (Picture2.jpg)

Le mod le 4+1 vues de Kruchten

13/02/2015

Mme CHALOUAH Anissa

51

<!-- Slide number: 52 -->

Les Vues en UML

Vue des cas dutilisation :

c'est la description du mod le vu par les acteurs du syst me.

Elle correspond aux besoins attendus par chaque acteur

(c'est le QUOI et le QUI).

Vue logique :

c'est la d finition du syst me vu de l'int rieur.

Elle explique comment peuvent tre satisfaits les besoins des acteurs

(c'est le COMMENT).

Vue d'impl mentation :

cette vue d finit les d pendances entre les modules.

13/02/2015

Mme CHALOUAH Anissa

52

<!-- Slide number: 53 -->

Les Vues en UML

Vue des processus :

c'est la vue temporelle et technique

Elle met en Suvre les notions de t ches concurrentes, contr le, synchronisation&

Vue de d ploiement :

cette vue d crit la position g ographique et l'architecture physique de chaque l ment du syst me (c'est le O ).

13/02/2015

Mme CHALOUAH Anissa

53