partie 1-1
partie 1-1
partie 1-1
Méthodologies
de
Développement Agiles
Donné aux étudiants :
PLAN DU COURS
Partie. I
Introduction au génie Logiciel
Partie. II
Approches de développement classiques
Partie. III
Approches de développement agiles
3
Méthodologie de Développement Agile
PREMIERE PARTIE
1. Logiciel
2. Développement de logiciel
3. Génie logiciel
4
I.1 Logiciel
Définition
Documentation
5
I.1 Logiciel
6
I.1 Logiciel
Impacts des logiciels
8
I.2 Développement du logiciel
Définition
[client]
Exploitation
besoin
[fournisseur]
Développement
9
I.2 Développement du logiciel
Définition
[client]
Exploitation
besoin
[fournisseur]
Développement
10
I.2 Développement du logiciel
Evolution des logiciels
11
I.2 Développement du logiciel
Evolution du logiciels
L'évolution des logiciels a été marquée par plusieurs étapes clés,
qui reflètent les avancées technologiques et les changements
dans les besoins des utilisateurs.
13
I.2 Développement du logiciel
Evolution du logiciels
Discussion: Le programmeur travaille souvent comme un artisan,
guidé par son talent, son expérience et ses connaissances
théoriques.
Il n’y avait aucune approche méthodique de développement.
C’était un travail informel d'ingénieurs logiciel
Résultat: Les premières tentatives de création de logiciels de
grande ampleur ont vite montré leurs limites :
les produits réalisés ne sont pas terminés dans les temps,
coûtent plus cher que prévu,
ne sont pas fiables,
sont peu performants et
coûtent cher en entretien (maintenance).
15
I.2 Développement du logiciel
La crise du logiciel
D’après le rapports au congrès américains sur les logiciels:
3%
utilisé utilisé,
19% après modif.
2% modif. Abandonné
47% utilisé avec payé, non
succès livré
livré, utilisé
29% sans
succès
Exemple:
200 millions de dollars pour fabriquer OS-360 (Difficulté de maîtrise des
coûts )
2 ans de retard pour les premiers compilateurs PL/1, Algol 68,
(Difficulté de maîtrise des délais de réalisation)
16
I.2 Développement du logiciel
Difficultés de développement
les projets n'ont pas échoué parce que les programmeurs étaient
incompétents
mais: Il était très difficile de réaliser les logiciels satisfaisant les
cahier de charge dans les délais prévus parce que le développement
ne se faisait pas par étapes.
La faute incombait en fait aux techniques de gestion des
projets mises en œuvre
Il faut améliorer la qualité et la productivité :
18
I.3 Génie Logiciel
Définition
Le Génie Logiciel GL (‘Software Engineering: SE’ en
anglais):
Ensemble de moyens (techniques, méthodes) mis en
œuvre pour la construction de systèmes informatiques.
Méthodologie de construction en équipe d’un logiciel
complexe et à multiples versions («multi-person
construction of multi-version software »).
Domaine des sciences de l’ingénieur dont la finalité est la
conception, la fabrication et la maintenance de systèmes
logiciels complexes, sûrs et de qualité.
La fabrication collective d’un système complexe,
concrétisée par un ensemble de documents de conception,
de programmes et de jeux de tests avec souvent de
multiples versions. 19