Vous êtes sur la page 1sur 16

17/04/2019

Université d’Alger 1-Ben Youcef Ben Khedda


Faculté des Sciences
Département de Mathématiques et Informatique
« Ensemble de moyens humains et matériels et
de méthodes permettant de réaliser les
traitements nécessaires sur les différentes
formes d’information pour la bonne conduite
de l’organisation »

nécessité d’une conception efficace

A. Benghalia
abderaoufb@yahoo.fr méthodes d’analyse et de conception

1 2

Programme Chapitre 1 : Le Génie Logiciel


1. Introduction : le logiciel
1. Chapitre 1 : Le Génie Logiciel Où se trouve le logiciel ?
1.1 Introduction : le logiciel
1.2 Génie logiciel : définition, objectif et développement de logiciel
1.3 Les cycles de développement du logiciel
1.4 Introduction à la modélisation

2. Chapitre 2 : UML
2.1 Introduction
2.2 Historique
2.3 Les différents diagrammes d’UML

3. Chapitre 3 : Modélisation de S.I. avec UML


3.1 La vue fonctionnelle
3.2 La vue dynamique
3.3 La vue statique
UEF32 – 2016/2017

1
17/04/2019

Logiciel- définition : Chapitre 1 : Le Génie Logiciel


 Traduction du terme anglais « software » par Philippe Renard, 1. Introduction : le logiciel
Commission spécialisée de terminologie et de néologie de
l'informatique et des composants,
Logiciel- définition :
« Ensemble de programmes, procédés et règles, et
éventuellement de la documentation, relatifs au
fonctionnement d'un ensemble de traitement de données », Tout simplement un logiciel est
 Le terme « programme » se définissant comme une suite « est un ensemble de programmes qui permet à
d'instructions permettant de réaliser une ou plusieurs l'ordinateur ou à un système informatique de
tâche(s), de résoudre un problème, de manipuler des réaliser une ou plusieurs tâches particulières »
données. Le programme est l'expression d'un algorithme
dans un langage donné pour une machine donnée

Chapitre 1 : Le Génie Logiciel Chapitre 1 : Le Génie Logiciel


1. Introduction : le logiciel 1. Introduction
Fermeture de
Vraiment je suis la trappe
Ferme
fatigué la trappe C'est fermé.
Décider des actions. Système de decision Ca grince,
il faudra
graisser

Démarre
Collecter, mémoriser,
traiter et
distribuer l’information. L’édition Démarrage
Système de la facture du camion
d’information Préparez la facture
Chef
C'est
Ca ne bâché
Allez graisser c'est
couleplein
plus
La réparation
la trappe
Assurer les fonctions : Comptabilité de la trappe
. facturer les clients, Système opérant Maintenance
. fabriquer les produits,

2
17/04/2019

Chapitre 1 : Le Génie Logiciel Chapitre 1 : Le Génie Logiciel


1. Introduction 1. Introduction
La coordination automatique Capteur
La coordination à distance

Automate

Il faut bâcher
Capteur avant de
partir Capteur

Trappe
motorisé

Comptabilité Maintenance
Finance Gestion Tech. Maintenance Facture 10

Logiciel - caractéristiques :
Diversité
 Développé par l’être humain ,
des produits Augmentation  Dont l’assemblage est difficile,
de la qualité
Augmentation  et sa maintenance devant être assurée par ceux qui
de la concurrence
l’ont développé,
 Peut être :
 Un logiciel système : Propriétaire d’un constructeur, qui est très
dépendant du matériel (OS, Logiciel de firewall, Drivers,…) ou
Augmentation Ouverture des propriétaire d’un éditeur qui est une boîte noire généralement
de la réactivité marchés paramétrable (SGBD)
 Un logiciel application : Propriétaire d’un éditeur et assurant une
Améliorer en permanence la qualité, le coût et la productivité : fonction précise (ERP, Bureautique, application de loisir); ou
C’est l’enjeu majeur des entreprises développé pour les besoins spécifiques de l’entreprise, soit par
elle-même, soit par l’intermédiaire de sociétés de services.
Quels outils donner au décideur pour comprendre,
dimensionner, piloter, et gérer ces systèmes

3
17/04/2019

Logiciel – caractéristiques - la qualité : Chapitre 1 : L’entreprise


Qu’est ce qu’un bon logiciel ? Plusieurs 1. Notion de l’entreprise
exigences (critères existent, les plus complets Logiciel – caractéristiques – la qualité :
sont ceux de l’ISO/IEC 9126 qui distingue deux
structures de la qualité du logiciel :
 La qualité interne et externe est modélisée à
travers les six dimensions : fonctionnalité,
fiabilité, utilisabilité, efficacité, maintenabilité
et portabilité;
 La qualité du logiciel en usage est modélisée à
travers quatre autres dimensions : efficacité,
productivité, sécurité et satisfaction.

Chapitre 1 : L’entreprise Chapitre 1 : L’entreprise


1. Notion de l’entreprise 1. Notion de l’entreprise
Logiciel caractéristiques - la qualité : Logiciel – caractéristiques – la qualité :
 Il faut ajouter à ces exigences deux critères :
 Le coût,
 Le délai.
 Les objectifs de qualité doivent être définis
pour chaque logiciel, qu’il faut contrôler durant
son développement et après,
 Ces différentes exigences de qualité ne sont
pas toujours compatibles, ni même réalisables;
 Il est nécessaire de trouver des compromis;

4
17/04/2019

Chapitre 1 : L’entreprise Chapitre 1 : L’entreprise


1. Notion de l’entreprise 1. Notion de l’entreprise
Logiciel – caractéristiques – la qualité : Logiciel – caractéristiques – la qualité :

Comme tout
projet, la
réalisation d'un
logiciel est soumise
à des exigences
contradictoires et
difficilement
conciliables
(triangle coût-
délai-qualité).

« Ensemble de moyens humains et matériels et


 Introduction
de méthodes permettant de réaliser les
 Génie Logiciel : Enjeux, traitements nécessaires sur les différentes
formes d’information pour la bonne conduite
 Modèles de cycle de vie d’un logiciel de l’organisation »
 Modélisation, Modèle
nécessité de conception
 Modélisation orienté objet (Historique + Concepts)

méthodes d’analyse et de conception

19 20

5
17/04/2019

 Qu’est ce qu’un bon logiciel ?


 L’objectif est de réaliser un bon logiciel.  - Il doit être maintenable : changement régulier,
 Qu’est ce qu’un logiciel d’abord ? bonne documentation.
Un logiciel est un ensemble de programmes qui  - Le Software doit être robuste : plusieurs utilités.
permet à l'ordinateur ou à un système informatique  - Le Software doit être efficace : bonne utilisation
de réaliser une ou plusieurs tâches particulières. des ressources (Processeur, Mémoires…)
 - Le Software doit fournir une interface appropriée
à l’utilisateur : l’interaction Homme/Machine.

21 22

 Réduire les différents coûts de développement du


logiciel en optimisant le processus de production d'un
logiciel,
 Produire des logiciels de qualité selon les besoins des
Concepts du Génie logiciel client,
 Satisfaire les clients en respectant le délai de livraison et
le coût de réalisation prévu.

Logiciel maintenable, robuste, fiable,


efficace et doit offrir une interface
utilisateur appropriée

23 24

6
17/04/2019

 Le génie logiciel (software engineering) représente Cycle de vie d’un logiciel


l'application de principes d'ingénierie au domaine de la
création de logiciels,
Analyse et spécification des besoins
 Le « génie logiciel, Software Engineering » a été
introduit en 1968 lors d’une conférence internationale sur
la « crise du logiciel » pour faire face à la mauvaise
Conception du logiciel
qualité des logiciels et le non respect des besoins des
clients,
 Il consiste à identifier et à utiliser des méthodes, des Implémentation du logiciel
pratiques et des outils permettant de maximiser les
chances de réussite d'un projet logiciel,
Test du logiciel
 Le génie logiciel et la méthodologie s’efforcent de couvrir
tous les aspects de la vie du logiciel (Cycle de vie
standard d’un logiciel).
Maintenance du logiciel

25 26

 Le cycle de vie en cascade


Etude de faisabilité

Modèles de cycles Validation

Définition des besoins

de vie d’un logiciel Validation


Conception générale

Vérification
Conception détaillée

Vérification
Codage

Tests unitaires Intégration

Tests d ’intégration Implémentation

27 28

7
17/04/2019

 Les phases traditionnelles de développement sont


effectuées les unes après les autres, avec un retour sur les
 Le cycle de vie en V
précédentes, voire au tout début du cycle,
Analyse des besoins Test d ’acceptation
 Le processus de développement utilisant un cycle en
cascade exécute des phases qui ont pour caractéristiques :
Conception du système Test du système
◦ de se terminer à une date précise ;
◦ de ne se terminer que lorsque les livrables sont jugés Conception du
Test du composant i
composant i
satisfaisants lors d'une étape de validation-vérification.
Codage du composant i

29 30

 Une activité peut commencer avant d’avoir terminé la


précédente,
 Toute description d'un composant est accompagnée de  Le cycle de vie en spirale
◦ fournir le plus rapidement possible un prototype pour
tests,
valider les concepts
 Ce modèle est une amélioration du modèle en cascade qui ◦ se rapprocher progressivement de l’application finale

permet en cas d'anomalie, de limiter un retour aux étapes Conception du système Analyse des besoins

précédentes,
1

 Les phases de la partie montante doivent renvoyer de 2

3
Développement Exploitation
l'information sur les phases en vis-à-vis lorsque des défauts
sont détectés afin d'améliorer le logiciel.
31 32

8
17/04/2019

Système de décision

Décisions ?

Analyse des aspects Informationnels


Système d’information
On cherche à concevoir
Modélisation et Concepts Informations ?

Flux physique ? Les objets manipulés dans l’entreprise


Système opérant

Objets d’entreprise Relations entre les objets

Concevoir un logiciel

33 34

Flux physique ?
Analyse des aspects fonctionnels
Système opérant
On cherche à décrire
 La modélisation est la conception d'un modèle.
 Objectif principal de la modélisation = maîtriser la complexité
Ce que fait l’entreprise en termes de taches à exécuter
 Modéliser = abstraire la réalité pour mieux comprendre le
système à réaliser
 Le modèle doit être relié au monde réel La fonctionnalité de l’entreprise Le comportement de l’entreprise
 un modèle permet de modéliser le fonctionnement d'un
ensemble de programmes informatiques.
 Un modèle permet de communiquer : entre les membres de
l’équipe génie logiciel et même avec les utilisateurs pour Activité Processus
vérifier et valider la cohérence de l’architecture logiciel et leur
contexte,

35 36

9
17/04/2019

Activité Processus
Processus
informa Entrée
tion Acitivité1
Sortie
Entrée (I) Sortie (O) Matières- Activité2
Activité … Activité n Objectif
premières
Énergie Biens matériels
Activité : Informations ou immatériels
Ressources Est une transformation qui ajoute de la valeur.
elle implique un certain nombre de ressources
( des personnes, de l’argent , des matières et Enchainement logique d’activités
du matériel ) pour transformer un objet
d’entrée en un objet de sortie.
Processus :
Est un enchainement logique d’activités dans le temps afin de réaliser un but.

37 38

 Les premières méthodes d'analyse (années 70)

 L'approche systémique (années 80)


◦ Modélisation des données + modélisation des
Modélisation Orienté Objet traitements (Merise).
 L'émergence des méthodes objet (1990-1995)
◦ Analyse sur les données et les traitements
◦ Plus de 50 méthodes objets (dont OMT, OOSE)

39

10
17/04/2019

 1995 : Premier consensus


◦ OMT : Notation graphique riche (General Electric)
◦ OOD : concept de package ( élèment d’organisation des
modèles)  Fournir une boite à outils pour la modélisation
◦ OOSE : La méthodologie repose sur l'analyse des besoins
des utilisateurs (Ericsson).  S'occuper de l'interface utilisateur.
 Unification et la normalisation des méthodes (1995-  Prendre le problème de maintenance en compte
1997)
◦ OMG : Object Management Group. Association de  Structurer la démarche projet
professionnels de l'informatique orientée objet.  Favoriser le dialogue utilisateur - informaticien
◦ 14 novembre 1997 : UML adopté par l’OMG

 Relier le modèle au monde réel par la notion d’objet  Objets possédant un nom, qualifiables, classables,
 Orienté objet = abstraire et décomposer le système polymorphes, dé-/composables, interagissants avec d’autres
informatique en objets objets, etc.
◦ Le monde réel est constitué d’objets physiques ou  Meilleure capacité d’adaptation et d’évolution du modèle
immatériels lorsque des fonctionnalités sont modifiées ou ajoutées
◦ Tracer les objets virtuels de modélisation depuis les objets  L’approche orientée objet est une façon d’aborder un
du monde réel problème et de le découper en petits sous-problèmes. On
 Relier les objets (réels) du problème et les objets commence par rechercher les objets du système puis leurs
(virtuels) de la solution interactions.

43 44

11
17/04/2019

 Rechercher les différents types d’objets qui font partie du


système à réaliser :
 la banque, les clients, les comptes bancaires, les conseillers
Notions et principes de l’orienté
clients, les transferts, les placements, les emprunts.
objet: Abstraction, Encapsulation,
 Etudier ensuite les interactions entre ces différents types Héritage, Polymorphisme
d’objets : par exemple, la création d’un compte bancaire
nécessite des interactions entre le client et un conseiller client

45 46

 Une classe regroupe des propriétés et des  Un objet est une instance de classe, c'est-à-
comportements. dire un exemplaire utilisable crée à partir de
 En OO, les comportements sont appelés cette classe et en valorisant certaines
méthodes et les propriétés variables propriétés.
d'instance.

47 48

12
17/04/2019

 L’abstraction : Abstraire : Oter les détails pour ne retenir que la  L’encapsulation est le fait qu’un objet renferme ses propres attributs et
principale ses méthodes.
substance/caractéristique/propriété qui donne du sens à ...  Une classe encapsule les propriétés (attributs et méthodes) des objets
qu‘elle regroupe.
Abstraction : la principale façon de construire des modèles = structurer  L'encapsulation est un mécanisme consistant à rassembler les
des données et les contraindre par des propriétés. données et les méthodes au sein d'une structure. L'encapsulation permet
donc de garantir l'intégrité des données contenues dans l'objet.

49 50

 La généralisation est une relation d’héritage entre une classe générale  Les propriétés principales de l’héritage sont :
(super classe ou classe parent) et une classe spécialisée (sous-classe ou  Tous les attributs qui se trouvent dans la Super-Classe sont vrais
classe enfant). dans toutes les sous-classes.
 La classe enfant possède toutes les propriétés de ses classes parents,
 La classe spécialisée est intégralement cohérente avec la classe de mais elle ne peut pas accéder aux propriétés privées de celle-ci.
base, mais comporte des informations supplémentaires (attributs,  Toutes les associations de la classe parent s’appliquent aux classes
opérations, associations).
dérivées.

 Le symbole utilisé pour la relation d’héritage ou de généralisation est


une flèche avec un trait plein dont la pointe est un triangle fermé
désignant le cas le plus général.

51 52

13
17/04/2019

Classe plus

spécialisation
SUPER CLASSE
généralisation

générale

 Chaque sous classe peut avoir une ou plusieurs sous classes formant
SOUS Classe plus ainsi une hiérarchie d’objet. On parle de classe ancêtre (ou mère) et de
CLASSE détaillée classes descendant (ou fille).

 L’héritage est un mécanisme qui permet d’assurer une grande variabilité


dans la réutilisation des objets.

53 54

C’est un mécanisme qui permet à une sous classe de redéfinir une Il s’agit de :
méthode dont elle a hérité tout en gardant la même signature de la méthode
héritée.
hiérarchiser et organiser les connaissances sous forme pyramidale.
Ainsi on peut avoir une méthode avec la même tête (même signature) et
des corps différents (codes différents) : polymorphisme. diviser les comportements d’une classe de façon hiérarchique.

Un même message peut ainsi déclencher des traitements différents selon  Cela permet une compréhension plus rapide du problème.
l’objet auquel il fait appel.
 C’est aussi un système de classification.
Un message polymorphe poserait un problème à la compilation car on ne
saurait identifier précisément la méthode qu’il vise.

55 56

14
17/04/2019

UML (Unified Modeling Language )

57 58

langage de modélisation objet unifié


 UML n’est pas une méthode
UML a unifié les modélisations objet concurrentes et
 c'est un langage de modélisation dédié à l'objet.

 L'approche est faites par des diagrammes destinés à


s'est imposé comme modélisation pour la conception de
modéliser plusieurs domaines :
logiciel orienté objet  Les diagrammes structurels (vue statique)
 Les diagrammes comportementaux (vue
fonctionnelle)
 Les diagrammes d'interaction (vue
dynamique)

59 60

15
17/04/2019

61

16

Vous aimerez peut-être aussi