Vous êtes sur la page 1sur 12

Chapitre : 1 critique de la méthode MERISE

Compétences visées :

Introduction

La conception d'un système d'information n'est pas évidente car il faut réfléchir à l'ensemble de
l'organisation que l'on doit mettre en place pour un meilleur fonctionnement de l’entreprise. Les
décisions prises ont chacune plus ou moins des conséquences suivant la position hiérarchique du
décideur. C’est la raison pour laquelle pour décider, il faut évaluer les avantages et les inconvénients.
Le rôle du SI est de recueillir, de mémoriser, de véhiculer et de fournir les informations liées au
fonctionnement d’une organisation ou d’une entreprise.

I- Définitions
- Un système représente un regroupement des composants identifiés inter agissant pour atteindre
un objectif commun. Exp : le Système d’information.
- Information est message transmis par un émetteur vers un ou plusieurs récepteurs. En
informatique, on parle d’élément de connaissance susceptible d'être codé pour être conservé,
traité ou communiqué.
- Système d’information : est un ensemble organisé de ressources (matériels, logiciels, personnel,
données et procédures) qui permet de regrouper, de classifier, de traiter et de diffuser de
l’information sur un environnement donné.

II- Architecture d’un Système d’Information


Un système d’information est constitué d’une base d’information qui stocke les données du système
et d’un processeur d’information qui traite ces données.

III- Cycle d’abstraction d’un Système d’Information


Le cycle d’abstraction est l’ensemble des étapes de conception d’un SI, chaque étape dépendant de
celles qui la précède et précisant clairement l’ensemble des résultats attendus.

1
Rédigé par LE PDG SOULSADUCAM (SOULEYMANOU SABANA DU CAMEROUN )
TEL 679844344/655883838/653537972
Pour la méthode merise, le cycle
d’abstraction s’articule comme le résume la
figure ci-contre :

• L'expression des besoins aboutit au


MCC (Modèle conceptuel de la
communication) qui définit les flux
d'informations à prendre compte.

• L'étape suivante consiste à mettre au


point le MCD (Modèle conceptuel des
données) et le MCT (Modèle conceptuel
des traitements) décrivant les règles et les
contraintes à prendre en compte

• Puis, le modèle organisationnel


consiste à définir le MLD (Modèle logique
des données) qui représente un choix
logiciel pour le système d'information et le
MOT (Modèle organisationnel des
traitements) décrivant les contraintes dues
à l'environnement (organisationnel, spatial
et temporel).

• Enfin, le modèle physique reflète un


choix matériel pour le système
d'information.

IV- Quelques méthodes unifiées pour construire un logiciel


- UML : Unified Modeling Language ; 
- UP : unified process ;
- OMT : object modeling technic ;
- 3AR : Agent Acteur Ressource Abstrait ;
- XP : eXtreme Programming.

V- MERISE
1- avantages
- Gestion des problèmes internes (projet) dans une entreprise ;
- Très adapté aux petites bases de données ;
- Automatisation de taches séquentielles des gestions.
2- Inconvénients
2
Rédigé par LE PDG SOULSADUCAM (SOULEYMANOU SABANA DU CAMEROUN )
TEL 679844344/655883838/653537972
- Les données doivent être dans une même base de donnée ;
- Mal adapté aux environnements distribués où des multiples applications externes à un domaine
viennent interagir avec l’application à modéliser.

Chapitre 2: La pratique de la méthode UML

Leçon 1 : Le génie logiciel

OPO : - définir : informatisation, logiciel, génie logiciel ;


-donner l’objectif du génie logiciel ;
-citer les étapes de développement d’un logiciel ;
-citer les qualités d’un logiciel.

I- Définitions
- Informatisation : mise en place d’un système de traitement automatique de l’information dans un
service n’utilisant pas l’informatique par le passé.
- 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).
- Génie logiciel : ensemble des techniques et des méthodes permettant de produire du logiciel du
début jusqu’à la fin c’est-à-dire des premières spécifications jusqu’à la maintenance encours
d’exploitation.

II- Objectif du génie logiciel


Les logiciels, suivant leur taille, peuvent être développés par une seule personne, une petite équipe,
ou un ensemble d’équipes coordonnées. Le développement de grands logiciels par de grandes
équipes pose d’importants problèmes de conception et de coordination. Or, le développement d’un
logiciel est une phase absolument cruciale qui monopolise l’essentiel du coût d’un produit et
conditionne sa réussite et sa pérennité.
L’objectif du génie logiciel est d’optimiser le coût de développement du logiciel c’est-à-dire de
trouver des stratégies efficaces permettant d’obtenir des meilleurs logiciels au moindre prix.

III- Notion de Cycle de vie des logiciels


1- Définition
Le cycle de vie d’un logiciel (en anglais software lifecycle), désigne toutes les étapes du
développement d’un logiciel, de sa conception à sa disparition.
2- Rôle
Le cycle de vie permet de détecter les erreurs au plus tôt et ainsi de maîtriser la qualité du logiciel,
les délais de sa réalisation et les coûts associés.
3- Cycle de vie d’un logiciel
Le cycle de vie d’un logiciel comprend les étapes suivantes:
- l’analyse du besoin : comprendre le problème posé par le client, définir ses objectif, étudier sa
faisabilité, rechercher les informations nécessaires pour faire l’état des besoins.
- l’élaboration des spécifications : faire ressortir l’architecture générale du logiciel.

3
Rédigé par LE PDG SOULSADUCAM (SOULEYMANOU SABANA DU CAMEROUN )
TEL 679844344/655883838/653537972
- la conception : définir précisément chaque sous-ensemble du logiciel.
- Implémentation (Codage ou programmation) : c’est la traduction dans un langage de
programmation des fonctionnalités définies lors de phases de conception
- la phase de test : Ils permettent de vérifier individuellement que chaque sous-ensemble du
logiciel est implémenté conformément aux spécifications.
- la maintenance : Elle comprend toutes les actions correctives (maintenance corrective) et
évolutives (maintenance évolutive) sur le logiciel.

IV- Notion de qualité d’un logiciel


La qualité du logiciel est définie par son aptitude à satisfaire les besoins des utilisateurs.
En génie logiciel, divers travaux ont mené à la définition de la qualité du logiciel en termes de
facteurs, qui dépendent, entre autres, du domaine de l’application et des outils utilisés. Parmi ces
derniers nous pouvons citer :
- Validité : aptitude d’un produit logiciel à remplir exactement ses fonctions, définies par le cahier
des charges et les spécifications.
- Fiabilité ou robustesse : aptitude d’un produit logiciel à fonctionner dans des conditions
anormales.
- Ext
- ensibilité (maintenance) : facilité avec laquelle un logiciel se prête à sa maintenance, c’est-à-dire
à une modification ou à une extension des fonctions qui lui sont demandées.
- Réutilisabilité : aptitude d’un logiciel à être réutilisé, en tout ou en partie, dans de nouvelles
applications.
- Compatibilité : facilité avec laquelle un logiciel peut être combiné avec d’autres logiciels.
- Efficacité : Utilisation optimales des ressources matérielles.
- Portabilité : facilité avec laquelle un logiciel peut être transféré sous différents environnements
matériels et logiciels.
- Vérifiabilité : facilité de préparation des procédures de test.
- Intégrité : aptitude d’un logiciel à protéger son code et ses données contre des accès non
autorisés.
- Facilité d’emploi : facilité d’apprentissage, d’utilisation, de préparation des données,
d’interprétation des erreurs et de rattrapage en cas d’erreur d’utilisation.
Ces facteurs sont parfois contradictoires, le choix des compromis doit s’effectuer en fonction du
contexte.

4
Rédigé par LE PDG SOULSADUCAM (SOULEYMANOU SABANA DU CAMEROUN )
TEL 679844344/655883838/653537972
Leçon 2 : Notions de modèle et de modélisation
OPO :
I- Définition
Un modèle est une représentation abstraite et simplifiée (i.e. qui exclut certains détails), d’une entité
(phénomène, processus, système, etc.) du monde réel en vue de le décrire, de l’expliquer ou de le
prévoir. Exemple : Modèle météorologique, Modèle démographique…
Un modèle reflète ce que le concepteur croit important pour la compréhension et la prédiction du
phénomène modélisé, les limites du phénomène modélisé dépendant des objectifs du modèle.

II- But de la modélisation


Modéliser un système avant sa réalisation permet de mieux comprendre le fonctionnement du
système. C’est également un bon moyen de maîtriser sa complexité et d’assurer sa cohérence.

III- Qui doit modéliser ?

IV- Modèles de cycles de vie d’un logiciel


1- Modèle de cycle de vie en cascade

Le modèle de cycle de vie en cascade a été mis au point dès 1966, puis formalisé aux alentours de
1970. Dans ce modèle le principe est très simple : chaque phase se termine à une date précise par la
production de certains documents ou logiciels. Les résultats sont définis sur la base des interactions
entre étapes, ils sont soumis à une revue approfondie et on ne passe à la phase suivante que s’ils ont
jugés satisfaisants. Le modèle original ne comportait pas de possibilité de retour en arrière. Celle-ci a
été rajoutée ultérieurement sur la base qu’une étape ne remet en cause que l’étape précédente, ce
lui, dans la pratique, s’avère insuffisant.

5
Rédigé par LE PDG SOULSADUCAM (SOULEYMANOU SABANA DU CAMEROUN )
TEL 679844344/655883838/653537972
Modèle du cycle de vie en cascade

2- Modèle de cycle de vie en V


Le modèle en V demeure actuellement le cycle de vie le plus connu et certainement le plus utilisé.
Le principe de ce modèle est qu’avec toute décomposition doit être décrite la recomposition, et que
toute description d’un composant est accompagnée de tests qui permettront de s’assurer qu’il
correspond à sa description. Ceci rend explicite la préparation des dernières phases (validation-
vérification) par les premières (construction du logiciel), et permet ainsi d’éviter un écueil bien connu
de la spécification du logiciel : énoncer une propriété qu’il est impossible de vérifier objectivement
après la réalisation.

Modèle du cycle de vie en V

6
Rédigé par LE PDG SOULSADUCAM (SOULEYMANOU SABANA DU CAMEROUN )
TEL 679844344/655883838/653537972
Leçon 3 : l’approche orienté objet
Compétences visées :
- Définir : objet, entité, identité, attribut, méthode
- Définir : notion de classe, encapsulation, héritage, spécialisation, généralisation et
polymorphisme et agrégation.

Introduction

L’approche orientée objet considère le logiciel comme une collection d’objets dissociés, et identifiés,
définis par des propriétés. La fonctionnalité du logiciel émerge alors de l’interaction entre les
différents objets qui le constituent. L’une des particularités de cette approche est qu’elle rapproche
les données et leurs traitements associés au sein d’un unique objet.

I- Définition

Un objet est une entité du monde réel (ou du monde virtuel pour les objets immatériels) qui possède
un comportement et un état qui ne peut être modifié que l’action du comportement.

II- Caractéristique d’un objet

Un objet est caractérisé par plusieurs notions :

L’identité : L’objet possède une identité, qui permet de le distinguer des autres objets,
indépendamment de son état.
7
Rédigé par LE PDG SOULSADUCAM (SOULEYMANOU SABANA DU CAMEROUN )
TEL 679844344/655883838/653537972
Les attributs : Il s’agit des données caractérisant l’objet. Ce sont des variables stockant des
informations sur l’état de l’objet.

Les méthodes : Les méthodes d’un objet caractérisent son comportement, c’est-à-dire l’ensemble
des actions (appelées opérations) que l’objet est à même de réaliser. Ces opérations permettent de
faire réagir l’objet aux sollicitations extérieures (ou d’agir sur les autres objets). De plus, les
opérations sont étroitement liées aux attributs, car leurs actions peuvent dépendre des valeurs des
attributs, ou bien les modifier.

III- Concepts importants de l’approche objet

Les concepts importants sont spécifiques à cette approche et participent à la qualité du


logiciel. Parmi ces concepts nous avons :

- La classe : Une classe est un type de données abstrait, caractérisé par des propriétés (attributs et
méthodes) communes à toute une famille d’objets et permettant de créer (instancier) des objets
possédant ces propriétés.
Les autres concepts importants qu’il nous faut maintenant introduire sont l’encapsulation,
l’héritage et l’agrégation.
- Encapsulation
L’encapsulation consiste à masquer les détails d’implémentation d’un objet, en définissant
une interface. L’interface est la vue externe d’un objet, elle définit les services accessibles
(offerts) aux utilisateurs de l’objet.
L’encapsulation facilite l’évolution d’une application car elle stabilise l’utilisation des objets :
on peut modifier l’implémentation des attributs d’un objet sans modifier son interface, et donc la
façon dont l’objet est utilisé.
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.
- Héritage, Spécialisation, Généralisation et polymorphisme
- L’héritage est un mécanisme de transmission des propriétés d’une classe (ses attributs et
méthodes) vers une sous-classe. Une classe peut être spécialisée en d’autres classes, afin d’y
ajouter des caractéristiques spécifiques ou d’en adapter certaines. Plusieurs classes peuvent être
généralisées en une classe qui les factorise, afin de regrouper les caractéristiques communes
d’un ensemble de classes.
Ainsi, la spécialisation et la généralisation permettent de construire des hiérarchies de
classes. L’héritage peut être simple ou multiple. L’héritage évite la duplication et encourage la
réutilisation.
Le polymorphisme représente la faculté d’une méthode à pouvoir s’appliquer à des objets de
classes différentes. Le polymorphisme augmente la généricité, et donc la qualité, du code.
- Agrégation
Il s’agit d’une relation entre deux classes, spécifiant que les objets d’une classe sont des
composants de l’autre classe. Une relation d’agrégation permet donc de définir des objets
composés d’autres objets.

8
Rédigé par LE PDG SOULSADUCAM (SOULEYMANOU SABANA DU CAMEROUN )
TEL 679844344/655883838/653537972
L’agrégation permet donc d’assembler des objets de base, afin de construire des objets plus
complexes.

Leçon 4 : Diagramme de cas d’utilisation (Use Case Diagram)


Compétences visées :
- Définir : acteur, cas d’utilisation
- Citer les éléments des cas d’utilisation
- Ressortir la relation acteur et cas d’utilisation
- Ressortir entre cas d’utilisation : inclusion, extension, généralisation
- Ressortir entre acteurs
- Identifier un acteur et recenser les cas d’utilisation

INTRODUCTION

Généralement, la maîtrise d’ouvrage et les utilisateurs ne sont pas des informaticiens. Il leur
faut donc un moyen simple d’exprimer leurs besoins. C’est précisément le cas des diagrammes
de cas d’utilisation (DCU) qui constituent un moyen de recueillir et de décrire les besoins des acteurs
du Système d’Information. Il s’agit donc de la première étape UML d’analyse d’un système.
I- Rôle d’un DCU

9
Rédigé par LE PDG SOULSADUCAM (SOULEYMANOU SABANA DU CAMEROUN )
TEL 679844344/655883838/653537972
Un diagramme de cas d’utilisation permet de recueillir, d’analyser, d’organiser les besoins, et de
recenser les grandes fonctionnalités d’un système.

II- Délimitation du système à modéliser

Il faut toujours délimiter les frontières du système à développer. Un système peut être : un logiciel,
un processus d’affaire, une machine, …

Exemples : la gestion des locations des films, les commandes de marchandises, les commandes des
voitures, la gestion des absences, la gestion des salaires des fonctionnaires, …

Représentation d’un diagramme d’utilisation

Gestion des salaires des fonctionnaires

NB : la représentation d’un DCU met en jeux trois concepts :

- L’acteur ;
- Le cas d’utilisation ;
- L’interaction entre l’acteur et le cas d’utilisation

III- Éléments des diagrammes de cas d’utilisation


1) Acteur
a- Définition et généralité

Un acteur est l’idéalisation d’un rôle joué par une personne externe, un processus ou une chose qui
interagit avec un système.

Un acteur représente une entité qui interagit avec un ou plusieurs cas d’utilisations. Un acteur est
toujours une entité externe. Il peut être :

- Un utilisateur qui communique avec le système ;


- Un autre système qui interagit avec le système ;
- Un opérateur chargé de la maintenance du système ;
- Du matériel mécanique, électronique ou autre ;
- Etc.
NB : un acteur n’a pas de contrôle sur le cas d’utilisation (ne modifie rien). Il représente un rôle
et non nécessairement un individu.

b- Représentation d’un acteur

Il se représente par un petit bonhomme avec son nom (i.e. son rôle) inscrit dessous.

10
Rédigé par LE PDG SOULSADUCAM (SOULEYMANOU SABANA DU CAMEROUN )
TEL 679844344/655883838/653537972
Un acteur

NB : cette représentation est bien pour les acteurs humains

RQ : il faut attribuer un nom qui reflète le rôle de l’acteur.

Exemple : une personne qui achète un livre dans une bibliothèque est appelée acheteur.

Il est également possible de représenter un acteur sous la forme d’un classeur stéréotypé

Nom

NB : il est utilisé pour les acteurs non humains

c- Types d’acteurs

L’acteur est dit principal pour un cas d’utilisation lorsque l’acteur est à l’initiative des échanges
nécessaires pour le cas d’utilisation.

Paiement CB
<< Secondary >>

Banque
Les acteurs secondaires sont sollicités par le système alors que le plus souvent, les acteurs principaux
ont l’initiative des interactions.

Le plus souvent, les acteurs secondaires sont d’autres systèmes informatiques avec lesquels le
système développé est interconnecté.

On peut aussi parler d’acteur actif, celui qui active ou déclenche un cas d’utilisation et d’acteur passif
celui qui participe dans un cas d’utilisation sans prendre l’initiative de l’activer.

d- Détermination des acteurs

Pour déterminer les acteurs, on peut se poser les questions suivantes :

- Qui va utiliser la fonctionnalité principale du système ? (primaire)


- Qui aura besoin du système d’information pour achever les tâches qui lui sont dédiées ? (passif)
- Qui aura besoin de maintenir, administrer et laisser le système fonctionner ? (secondaire)
- Quels sont les moyens physiques dont le système a besoin pour faire le traitement ?
11
Rédigé par LE PDG SOULSADUCAM (SOULEYMANOU SABANA DU CAMEROUN )
TEL 679844344/655883838/653537972
- Avec quel système le système interagit ?
- Qui est intéressé par le résultat retourné par le système ?

2) Cas d’utilisation (use case)


a) Définition
b) Comment trouver les cas d’utilisation ?
c) Représentation des cas d’utilisation

12
Rédigé par LE PDG SOULSADUCAM (SOULEYMANOU SABANA DU CAMEROUN )
TEL 679844344/655883838/653537972