Vous êtes sur la page 1sur 28

Systèmes d’Information

et Génie Logiciel
Dr. Sonia Ayachi Ghannouchi

1
Plan
1. Systèmes d’informations versus systèmes informatiques
2. Modèles de cycles de vie
3. Evolution et maintenance
4. Agilité
5. Qualité des SIs
6. Autres tendances récentes

2
1. Systèmes d’Information vs.
Systèmes informatiques

3
Systèmes d’Information
 Définition 1 [REIX 98] : Un SI peut se définir comme un
ensemble organisé de ressources : Matériel, logiciel, personnel,
données, procédures permettant d’acquérir, traiter, stocker,
communiquer des informations (sous forme de données, textes,
images, sons, etc.) dans des organisations.
 Définition 2 [DAVIS 86] : Un SI est un système utilisateur-
machine intégré qui produit de l’information pour assister les
êtres humains dans les fonctions d’exécution, de gestion et de
prise de décision. Le système utilise des équipements
informatiques, des logiciels, des bases de données, des méthodes
manuelles, des modèles pour l’analyse, la planification, le contrôle
et la prise de décision.

4
 Définition 3 [ALTER 96] : Un SI est un système qui utilise
des technologies de l’information pour saisir, transmettre,
stocker, retrouver, manipuler ou afficher de l’information
utilisée dans un ou plusieurs processus de gestion.

5
Importance des méthodes et de la
modélisation
 La conception aboutit à un modèle complet du système futur. Ce
modèle complet sera ensuite développé par la réalisation ou
l’acquisition des logiciels nécessaires à son fonctionnement. Le
système ainsi développé devra alors être implanté, c’est à dire
introduit dans le fonctionnement de l’entreprise.
 Les méthodes de conception et de développement des SIs
comportent :
 La représentation d’une démarche progressive c’est à dire une suite
d’étapes caractérisées chacune par des tâches aboutissant à un
résultat : ce qu’il faut faire et dans quel ordre.
 La définition de modèles permettant de décrire (l’objet à réaliser) le
futur SI.

6
Méthodes
 Quoi
 Démarche / Etapes à suivre
 Notation / Modèles

 Types
 Systémiques
sont de type descendant
 Fonctionnelles
 OO sont de type ascendant

7
Types de méthodes
a) Méthodes fonctionnelles
 Elles consistent à décomposer hiérarchiquement une application en un
ensemble de sous applications. Les fonctions de chacune de ces
dernières sont affinées successivement en sous fonctions simples.
 Le plus haut niveau représente l'ensemble du problème. Chaque niveau
est ensuite décomposé (raffinements successifs sous forme de notations
graphiques).
 Parmi ces méthodes : SADT, Warnier, ...
 L’avantage des méthodes fonctionnelles est principalement : la simplicité
du processus de conception.
 L’inconvénient des méthodes fonctionnelles est principalement : la
difficulté de fixer des limites pour les décompositions hiérarchiques.

8
Types de méthodes (suite)
b) Méthodes systémiques
 Les méthodes systémiques proposent une double démarche de
modélisation : la modélisation des données et celle des
traitements. Cette démarche est influencée par les systèmes de
gestion de bases de données.
 Parmi ces méthodes : MERISE, AXIAL...
 Les points forts des méthodes systémiques sont les suivants :
 approche globale qui prend en compte la modélisation des données et
des traitements,
 introduction des niveaux d'abstraction dans le processus de
conception (niveau conceptuel, niveau logique et niveau physique),
 Le principal point faible des méthodes systémiques est : pas de
fusion possible des deux aspects données et traitements.

9
Types de méthodes (suite)
c) Méthodes orientées objet
 L'approche orientée objet considère le logiciel comme un
ensemble d'objets définis par des propriétés.
 L'approche orientée objet est de type ascendant. En effet, une
conception par objets commence par l'identification des objets
(entités de base). Ces objets sont regroupés dans des classes selon
leurs propriétés. Ensuite ces classes sont à nouveau regroupées en
classes plus abstraites appelées modules ou sous-systèmes jusqu'à
la modélisation du problème posé.
 Les points forts des méthodes orientées objets sont :
 regrouper dans l'objet des données et des traitements
 favoriser la conception et la réutilisation des composants : concevoir
dans un but de réutilisation et non pas pour répondre à un besoin
ponctuel.

10
Génie Logiciel
 Définition 1 : 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é.

 Définition 2 : Discipline de l’informatique qui regroupe un


ensemble de connaissances, de procédés et d’acquis
scientifiques pour la conception, la mise en œuvre, la
vérification et la documentation de logiciels dans le but d’en
optimiser la production, le support et la qualité.

11
Cycle de vie
 Le cycle de vie du logiciel est une modélisation
conventionnelle de la succession d’étapes permettant la mise
en œuvre d’un produit logiciel. Ces étapes sont basées sur
une philosophie d'analyse détaillée du travail nécessaire pour
faire progresser un projet depuis la perception du besoin d'un
nouveau système jusqu'à la livraison du produit final.

12
Etapes / Cycle de vie
Méthodes Cycle de vie
 Etude préalable  Analyse des besoins
 Etude de l’existant  Conception
 Diagnostic
 Réalisation et tests
 Recherche de solutions
 Evaluation des solutions  Intégration et tests
 Conception d’intégration
 Réalisation  Livraison
 Implantation  Maintenance
 Lancement

13
2. Modèles de cycles de vie

14
2.1. Modèle de la cascade
Spécification des
besoins

Conception

Implémentation

Tests et intégration

Maintenance

15
Le modèle de la cascade doit être utilisé en respectant
l'organisation suivante :

 toutes les étapes sans exception doivent être exécutées,


 l'ordre indiqué doit être respecté,
 on ne passe à l'étape i qu’après avoir terminé l'étape i-1
 les remises en cause, inévitables en pratique, ne peuvent se propager
qu'au niveau immédiatement supérieur et passent obligatoirement
par une procédure de vérification et de validation.

16
Le modèle initial 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
qui, dans la pratique, reste insuffisant.
De plus un retour de l’étape de maintenance vers l’étape de
spécification des besoins a été ajouté.

17
2.2. Modèle en V
Spécification des
Qualification
besoins

Conception Intégration & tests


générale d’intégration

Conception
Test unitaires
détaillée

Codage

18
Le modèle dit en V découle du modèle de la cascade. Il se base
sur les principes suivants :
 toute description d'un composant est accompagnée de la
préparation des tests qui permettront de s'assurer que ce composant
correspond à sa description,
 avec toute décomposition doit être décrite la recomposition
correspondante (à chaque descente dans la branche gauche du V
correspond une remontée dans la branche droite du V).

19
Ceci a comme conséquence que la préparation des dernières
étapes (de vérification et de validation) se fera parallèlement
avec les premières (construction du logiciel), ce qui permet
d'éviter le problème de certaines spécifications de besoins
(propriétés du logiciel) qui sont difficiles à vérifier après la
réalisation.

Le modèle en V est parmi les modèles de cycles de vie les


plus utilisés.

20
2.3. Modèle en spirale
2 1
Analyse des risques Analyse des besoins
Maquettage Spécifications

V1.0 V1.1 V1.2

3 4
Conception Vérification
Implémentation Validation
21 Planification
 Ce modèle date de 1988 et met en œuvre une analyse du
risque.
 Il fait appel à plusieurs itérations ou plusieurs cycles faisant
eux même appel à l’un des modèles classiques de cycle de vie
(cascade ou V).
 Chaque itération représente une évolution vers la version
suivante du logiciel.
 Il peut faire appel aux techniques de maquettage et de
prototypage qui permettent de générer des versions
incomplètes (prototypes) ou non opérationnelles (maquettes)
du produit permettant de faciliter la validation.

22
Chaque cycle fait appel à quatre phases :
 Détermination des objectifs du cycle en cours, des alternatives
pour les atteindre et des contraintes à prendre en compte
 Analyse des risques, évaluation des alternatives et
éventuellement maquettage
 Conception et développement de la solution retenue, pour cela
un modèle classique (cascade ou V) peut être utilisé
 Vérification des résultats et planification du cycle suivant

23
Le dernier cycle se termine en aboutissant au logiciel
attendu. La livraison du logiciel se fera à la fin de ce dernier
cycle de la spirale.

Ce modèle a été moins utilisé que les deux précédents. Son


utilisation nécessite de grandes compétences et convient
surtout aux projets innovants à cause de l’importance qu’il
accorde à l’analyse des risques.

24
Techniques utilisées
Parmi les techniques utilisées dans le cycle de vie du logiciel,
on peut faire appel au maquettage ou au prototypage qui
consistent respectivement à produire des maquettes et des
prototypes.

1. Maquette
La maquette est utilisée au début du cycle de
développement.

25
Elle se limite au développement des interfaces, faisant ainsi
apparaître les fonctionnalités et permet au client et au
développeur de se mettre d’accord sur la nature du produit à
réaliser.

La production de maquette permet de raccourcir la durée


des allers-retours client/développeur pendant la phase
d’analyse des besoins.

26
2. Prototype
On parle de deux types de prototypes :
 Prototype expérimental :
Il correspond à une version incomplète du logiciel, utilisée au
niveau de la conception pour :
 S’assurer de la faisabilité de certaines parties
 valider les choix de conception.
Ce prototype est en général jeté après développement.

27
 Prototype évolutif :
 La première version du prototype constitue un point de départ pour les
développeurs.
 On itère (en apportant corrections et améliorations) autant de fois que
nécessaire, en passant par des versions intermédiaires du prototype,
jusqu’ à l’obtention du produit final.

28

Vous aimerez peut-être aussi