24
Des exigences à la compilation. Une approche centrée sur les rôles et tâches du cycle de développement Eric Le Loc’h (Microsoft) Bruno de Combiens (Borland) Journée de l’industrialisation du développement logiciel Paris 28 juin 2006

Des exigences à la compilation. Une approche centrée sur les rôles et tâches du cycle de développement Eric Le Loch (Microsoft) Bruno de Combiens (Borland)

Embed Size (px)

Citation preview

Page 1: Des exigences à la compilation. Une approche centrée sur les rôles et tâches du cycle de développement Eric Le Loch (Microsoft) Bruno de Combiens (Borland)

Des exigences à la compilation.Une approche centrée sur les rôles et

tâches du cycle de développement

Eric Le Loc’h (Microsoft)

Bruno de Combiens (Borland)

Journée de l’industrialisation du développement logiciel – Paris – 28 juin 2006

Page 2: Des exigences à la compilation. Une approche centrée sur les rôles et tâches du cycle de développement Eric Le Loch (Microsoft) Bruno de Combiens (Borland)

La gestion de projet au quotidien?

Peu de pratiques réutilisables

Pas d‘historiqueEstimations approximatives

Processus hétérogène

Gestion de projet très lâche

Page 3: Des exigences à la compilation. Une approche centrée sur les rôles et tâches du cycle de développement Eric Le Loch (Microsoft) Bruno de Combiens (Borland)

Source: THE STANDISH GROUP 2003

90%90%Livrés en

retardLivrés en

retard66%66%

N’étaient pas

considérés comme réussis

N’étaient pas

considérés comme réussis

Source: THE STANDISH GROUP 2003Source: THE STANDISH GROUP 2003

54%54%Livrés hors

budgetLivrés hors

budget

Abandonnés avant la fin

Abandonnés avant la fin

30%30%

Les statistiques sont effrayantes

50

60

70

80

90

100

%

0

10

20

30

40

Page 4: Des exigences à la compilation. Une approche centrée sur les rôles et tâches du cycle de développement Eric Le Loch (Microsoft) Bruno de Combiens (Borland)

Origine des défauts

82% des entreprises françaises n’ont pas de processus post-mortem d’évaluation des causes d’échec (2) de leurs projets

Source Martin & Leffinel

(2) Source Borland, juin 2003, juin 2004

Code7% Autre

10%

Conception27%

Besoins56%

Sources d’erreurs

Page 5: Des exigences à la compilation. Une approche centrée sur les rôles et tâches du cycle de développement Eric Le Loch (Microsoft) Bruno de Combiens (Borland)

Mais d’où viennent les risques ?

Des différences de compétences Le maître d’ouvrage (MOA) connaît son métier… …et le maître d’œuvre (MOE) connaît ses techniques

De la complexité du pilotage de projet Piloter la réalisation au jour le jour… … et garder le cap sur des enjeux stratégiques

Communication Ce qui est dit par les uns… … est peut être compris par les autres

Du mode contractuel…

MO

A MO

E

Exploitation

Vos projets

Page 6: Des exigences à la compilation. Une approche centrée sur les rôles et tâches du cycle de développement Eric Le Loch (Microsoft) Bruno de Combiens (Borland)

Une approche centrée sur les rôles et tâches du cycle de développement

Now is the time!

Page 7: Des exigences à la compilation. Une approche centrée sur les rôles et tâches du cycle de développement Eric Le Loch (Microsoft) Bruno de Combiens (Borland)

Réconcilier MOA & MOE

Les uns ont, ce me semble, beaucoup d'instruments et peu d'idées;

les autres ont beaucoup d'idées et n'ont point d'instruments.

L'intérêt de la vérité demanderait que ceux qui réfléchissent

daignassent enfin s'associer à ceux qui se remuent.

- Denis Diderot.

Les uns ont, ce me semble, beaucoup d'instruments et peu d'idées;

les autres ont beaucoup d'idées et n'ont point d'instruments.

L'intérêt de la vérité demanderait que ceux qui réfléchissent

daignassent enfin s'associer à ceux qui se remuent.

- Denis Diderot.

Page 8: Des exigences à la compilation. Une approche centrée sur les rôles et tâches du cycle de développement Eric Le Loch (Microsoft) Bruno de Combiens (Borland)

La gestion du risque…

… incombe au maitre d’oeuvre Effet « bio »

Méthodes

& Processus

Individus

Outillage

PROJETTitre du formulaireTitre du formulaire

< Précédent Terminer Annuler

Texte de l'Assistant

Titre de l'AssistantTitre de l'Assistant

< Précédent Suivant > Annuler

ApplicationApplication

Entrer le texteEntrer plus de texte

Enregistrer

Fichier Edition Affichage

Option 1

Option 1

Page 9: Des exigences à la compilation. Une approche centrée sur les rôles et tâches du cycle de développement Eric Le Loch (Microsoft) Bruno de Combiens (Borland)

Développer, paramétrer, intégrer ou maintenir

Définir Concevoir Développer Tester Déployer Gérer

Infrastructure de collaboration / Workflow

Word

PowerPoint

Excel

Post-it

Email

Analyste Architecte Développeur Testeur

Exploitation

Chef de projet

Fonctionnel Outsourcing / offshoring

C#

Delphi

Java

PHP

J2EE

.NET

Autre

Diagrammes

Patterns

Audits & Métriques

Plan de test

Scripts

Rapports

Page 10: Des exigences à la compilation. Une approche centrée sur les rôles et tâches du cycle de développement Eric Le Loch (Microsoft) Bruno de Combiens (Borland)

WorkUnit 1B

Spécifications Développement Test

ProceduresThis is a process description

derived from the local method of doing it

ProceduresThis is a process description

derived from the local method of doing it

ProceduresThis is a process description

derived from the local method of doing it

Analyse Architect. Code Intégration Test

• Do this

• Do that

Procedures

Procedures Procedures

Here is what I would do. First I would try to getSomeone else to do it. IfThat fails I would try toProcrastinate for days.

1. Do this first2. Do this next3. Do this last

Procedures

Projet A

Projet B

ProceduresThis is a process description

derived from the local method of doing it

Déploiemt.

Déploiemt.

Status

Exemple de cycle de vie sur 2 projets

Page 11: Des exigences à la compilation. Une approche centrée sur les rôles et tâches du cycle de développement Eric Le Loch (Microsoft) Bruno de Combiens (Borland)

WorkUnit 1B

Spécifications Développement Test

ProceduresThis is a process description

derived from the local method of doing it

ProceduresThis is a process description

derived from the local method of doing it

ProceduresThis is a process description

derived from the local method of doing it

Analyse Architect. Code Intégration Test

• Do this

• Do that

Procedures

Procedures Procedures

Here is what I would do. First I would try to getSomeone else to do it. IfThat fails I would try toProcrastinate for days.

1. Do this first2. Do this next3. Do this last

Procedures

Projet A

Projet B

ProceduresThis is a process description

derived from the local method of doing it

Déploiemt.

Déploiemt.

StatusStatusStatus Status Status Status

Limiter l’effet boule de neige

Page 12: Des exigences à la compilation. Une approche centrée sur les rôles et tâches du cycle de développement Eric Le Loch (Microsoft) Bruno de Combiens (Borland)

Les TIC impactent-elles votre vie?

“Standard historique”Imprévisible TECHNOLOGIETECHNOLOGIE

Prj

Indiscipliné

TECHNOLOGIETECHNOLOGIE

Prj

IND

IVIDU

S

IND

IVIDU

S

InefficacePrj

IND

IVIDU

S

IND

IVIDU

SPR

OC

ES

SU

S

PR

OC

ES

SU

S

Utopique

TECHNOLOGIETECHNOLOGIE

PrjPR

OC

ES

SU

S

PR

OC

ES

SU

S

TECHNOLOGIETECHNOLOGIE

Projet

IND

IVIDU

S

IND

IVIDU

S

PR

OC

ES

SU

S

PR

OC

ES

SU

S

Page 13: Des exigences à la compilation. Une approche centrée sur les rôles et tâches du cycle de développement Eric Le Loch (Microsoft) Bruno de Combiens (Borland)

Approche orientée rôles et tâches

Analyste Métier

Architecte logiciel

Développeur

Concepteur

Chef de projet

Testeur

Exigence Test (TD)

• Modèles UML• Patterns• Reverse / Synchronisation• Documentation

• Modélisation UML / BdD• Exigence UML

• Modélisation UML• Transformation QVT• Vérification (modèle & code)

• Exigences structurées• Exigence Exigence

• Pilotage• Métriques

Page 14: Des exigences à la compilation. Une approche centrée sur les rôles et tâches du cycle de développement Eric Le Loch (Microsoft) Bruno de Combiens (Borland)

Change Management

Work Item Tracking

Reporting

Project Site

Visual Studio

Team Foundation Integration Services

Project Management

Pro

cess

and A

rchit

ect

ure

Pro

cess

and A

rchit

ect

ure

G

uid

ance

Guid

ance

Dyn. Code Analyzer

Visual Studio

Team Architect

Static Code Analyzer

Code Profiler

Unit Testing

Code Coverage

Visio and UML Modeling

Visual Studio Professional Edition

Load Testing

Manual Testing

Test Case Mgt

Application Designer

Logical Infr Designer

Deployment Designer

Visual Studio

Team DeveloperVisual Studio

Team Test

Vis

ual Stu

dio

Indust

ry

Vis

ual Stu

dio

Indust

ry

Part

ners

Part

ners

Build

Class Designer

Solutions orientées rôles et tâches

Borland TogetherUML, MDA, Audits/Metrics

Analyste

BorlandCaliberRM

Gestion & Définition des exigences

SpécificationsBaselinesTraçabilité

Solutions & Intégrations Borland • Borland CaliberRM• Borland Together for Visual Studio

Visual Studio

Team Database

DB Deployment

DB Testing

DB Change Mgt

Page 15: Des exigences à la compilation. Une approche centrée sur les rôles et tâches du cycle de développement Eric Le Loch (Microsoft) Bruno de Combiens (Borland)

DémonstrationDe la gestion des exigences à la compilation

Où et comment démarrer?

Page 16: Des exigences à la compilation. Une approche centrée sur les rôles et tâches du cycle de développement Eric Le Loch (Microsoft) Bruno de Combiens (Borland)

Réconcilier MOA/MOE Gérer et définir les exigences

S’affranchir de l’organisation de l’équipe Petite (avec acteurs multi-rôles) ou grande (avec division des

tâches), offshore, etc Réduire les transferts de responsabilité et traiter les exigences

au bon niveau

Garantir la conformité de la réalisation avec la spécification Consolider toutes les sources numériques Eviter la reformulation des exigences formalisées

Accélérer le démarrage des projets Définir la testabilité (agile) Générer des artéfacts

Exigences en tant qu’objets réutilisables

Page 17: Des exigences à la compilation. Une approche centrée sur les rôles et tâches du cycle de développement Eric Le Loch (Microsoft) Bruno de Combiens (Borland)

Comment savons-nous?

Que nous sommes lancés sur les bons projets? Que nous les réalisons correctement?

Bénéfices Maturité Niv. 1 Niv. 2 Niv. 3 Niv. 4 Niv. 5

Taux de récriture 40% 20% 10% 6% 3%

Précision de l’estimation+30% à >100%

+10% à +20%

+5% +3% +1%

Défauts livrés X ½ X 1/4 X 1/10 X 1/100 X

Productivité X 1.5X 2X 3-4X >4X

Réutilisation des composants

négligeable négligeable occasionnel >30% >50%

Rapport SEI (SEI 92-TR-24), moyennes sur 1233 projets séparés, 261 entreprises, 10 pays

Page 18: Des exigences à la compilation. Une approche centrée sur les rôles et tâches du cycle de développement Eric Le Loch (Microsoft) Bruno de Combiens (Borland)

Comment savons-nous?

Que nous sommes lancés sur les bons projets? Que nous les réalisons correctement?

Bénéfices Maturité Niv. 1 Niv. 2 Niv. 3 Niv. 4 Niv. 5

Taux de récriture 40% 20% 10% 6% 3%

Précision de l’estimation+30% à >100%

+10% à +20%

+5% +3% +1%

Défauts livrés X ½ X 1/4 X 1/10 X 1/100 X

Productivité X 1.5X 2X 3-4X >4X

Réutilisation des composants

négligeable négligeable occasionnel >30% >50%

Rapport SEI (SEI 92-TR-24), moyennes sur 1233 projets séparés, 261 entreprises, 10 pays

Page 19: Des exigences à la compilation. Une approche centrée sur les rôles et tâches du cycle de développement Eric Le Loch (Microsoft) Bruno de Combiens (Borland)

Comment savons-nous?

Que nous sommes lancés sur les bons projets? Que nous les réalisons correctement?

Bénéfices Maturité Niv. 1 Niv. 2 Niv. 3 Niv. 4 Niv. 5

Taux de récriture 40% 20% 10% 6% 3%

Précision de l’estimation+30% à >100%

+10% à +20%

+5% +3% +1%

Défauts livrés X ½ X 1/4 X 1/10 X 1/100 X

Productivité X 1.5X 2X 3-4X >4X

Réutilisation des composants

négligeable négligeable occasionnel >30% >50%

Rapport SEI (SEI 92-TR-24), moyennes sur 1233 projets séparés, 261 entreprises, 10 pays

Page 20: Des exigences à la compilation. Une approche centrée sur les rôles et tâches du cycle de développement Eric Le Loch (Microsoft) Bruno de Combiens (Borland)

DémonstrationUne approche centrée sur les rôles

Page 21: Des exigences à la compilation. Une approche centrée sur les rôles et tâches du cycle de développement Eric Le Loch (Microsoft) Bruno de Combiens (Borland)

Conclusion

Page 22: Des exigences à la compilation. Une approche centrée sur les rôles et tâches du cycle de développement Eric Le Loch (Microsoft) Bruno de Combiens (Borland)

La valeur de l’intégration

« Avec de tels outils, ce qui est réconfortant, c’est le caractère systématique

qui garantit que l’on n’oublie rien.»

Jacques Névians, DSI, Agence de l’eau Loire-Bretagne

Page 23: Des exigences à la compilation. Une approche centrée sur les rôles et tâches du cycle de développement Eric Le Loch (Microsoft) Bruno de Combiens (Borland)

Programme

10h30 : Gérer la relation MOA/MOE SQLI, Christian Hartz

11h30 : Planification d’un projet Avanade, Vincent Derenty

14h00 : De la modélisation des processus métier au code KarmicSoft, Michel Zam

15h00 : De l’importance des métriques et du reporting dans le pilotage des projets Borland, David Tillaud

16h00 : Comment assurer la continuité du contrôle qualité Exakis, Arnaud Cléret & Guillaume Belmas

17h00 : Conclusion

Page 24: Des exigences à la compilation. Une approche centrée sur les rôles et tâches du cycle de développement Eric Le Loch (Microsoft) Bruno de Combiens (Borland)

Des exigences à la compilation.Une approche centrée sur les rôles et

tâches du cycle de développement

Eric Le Loc’h (Microsoft)

Bruno de Combiens (Borland)

Journée de l’industrialisation du développement logiciel – Paris – 28 juin 2006