You are on page 1of 23

Processus de

développement
et nouvelles
technologies

Didier Girard
Improve
Didier.Girard@improve.fr

Club Java
Quels enjeux

• Les Nouvelles Technologies sont utilisées sur tous


types de projets
– Applications
• B2E,
• B2B,
• B2C
– Produits
– Client-Serveur

Club Java
Quels enjeux

• Quelles technologies
– XML
– J2EE, .Net, Linux/Apache/MySQL/PHP
– HTML, JavaScript
– SOAP, CORBA, DCOM
– Multi-threading

• Avec des exigences fortes


– Robustesse
– Sécurité
– Évolutivité

• Sur des architectures variées


– Architecture N tiers
– Fat / Thin Client
– Du PC au Terminaux mobiles
Club Java
Quels enjeux
Projet

Besoins

Réalisation

Production

Évolutions

Club Java
Quels enjeux
Projet Nouvelles Technologies Technologies

Besoins

Réalisation

Production

Évolutions

Club Java
Quels
enjeux
Projet Nouvelles Technologies Technologies
Nouvelles
maquettes
Besoins

nouvelle méthode,
prototypage,
Réalisation formation,

nouvelle infrastructure,
formation,
Production

Évolutions

Club Java
Quels
Nouvelles enjeux
Projet Nouvelles Technologies Technologies
Nouvelles
maquettes , briser les rêves
Besoins

nouvelle méthode, modéliser,


prototypage, nombreux intervenants,
Réalisation formation, prospection technologique

nouvelle infrastructure,
Production formation, robustesse, sécurité

Évolutions transfert de compétences

Club Java
Les enjeux

• Il est nécessaire d’adapter son processus de


développement pour répondre à ces enjeux
technologiques

Club Java
Adapter son processus de
développement
Phase projet
Spécifications

Phase projet
Réalisation

Phase projet
Conception

Chef de projet Spécificateur Analyste -


Utilisateur Concepteur

Rédaction des
spécifications
Analyse des générales
besoins
ko
validation

Cahier des charges ok

Rédaction des
spécifications
détaillées Analyse -
Conception
ko
validation

ok

Spécifications

Club Java
Processus en cascade

• Processus en cascade
– Propose de dérouler les phases projet de façon séquentielle
– Cité pour des raisons historiques

Analyse
Conception
Programmation
Test
Maintenance
• Points forts
– Distingue clairement les phases projet

• Points faibles
– Non itératif
– Ne propose pas de modèles de documents
Club Java
RUP
• RUP
– Promu par Rational
– Le RUP est à la fois une méthodologie et un outil prêt à l’emploi
(documents types partagés dans un référentiel Web)
– Cible des projets de plus de 10 personnes
Phases
Analyse
Élaboration Construction Transition
Processus projet des besoins
Processus organisationnels
Spécifications
Analyse & Conception
Implémentation
Tests
Déploiement
Support du projet
Configuration
Gestion du projet
Environnement
Itération Iter. Iter. Iter. Iter. Iter. Iter. Iter.
Préliminaire #1 #2 #n #n+1 #n+2 #m #m+1

Club Java Itérations


RUP
• RUP
– Promu par Rational
– Le RUP est à la fois une méthodologie et un outil prêt à l’emploi
(documents types partagés dans un référentiel Web)
– Cible des projets de plus de 10 personnes

• Points forts
– Itératif
– Spécifie le dialogue entre les différents intervenants du projet :
les livrables, les plannings, les prototypes…
– Propose des modèles de documents, et des canevas pour des
projets types

• Points faibles
– Coûteux à personnaliser : batterie de consultants
– Très axé processus, au détriment du développement : peu de
place pour le code et la technologie
Club Java
XP

• XP
– Ensemble de « Bests Practices » de développement (travail
en équipes, transfert de compétences…)
– Cible des projets de moins de 10 personnes

Club Java
XP

• XP
– Ensemble de « Bests Practices » de développement (travail en équipes,
transfert de compétences…)
– Cible des projets de moins de 10 personnes

• Points forts
– Itératif
– Simple à mettre en œuvre
– Fait une large place aux aspects techniques : prototypes, règles de
développement, tests…
– Innovant: programmation en duo, kick-off matinal debout …

• Points faibles
– Ne couvre pas les phases en amont et en aval au développement : capture
des besoins, support, maintenance, tests d’intégration…
– Élude la phase d’analyse, si bien qu’on peut dépenser son énergie à faire
et défaire
Club Java – Assez flou dans sa mise en œuvre: quels intervenants, quels livrables ?
2TUP

• 2TUP
– S’articule autour de l’architecture
– Propose un cycle de développement en Y
– Détaillé dans « UML en action »
– Cible des projets de toutes tailles

Club Java
2TUP
• 2TUP
– S’articule autour de l’architecture
– Propose un cycle de développement en Y
– Détaillé dans « UML en action »
– Cible des projets de toutes tailles

• Points forts
– Itératif
– Fait une large place à la technologie et à la gestion du risque
– Définit les profils des intervenants, les livrables, les plannings,
les prototypes

• Points faibles
– Plutôt superficiel sur les phases situées en amont et en aval du
développement : capture des besoins, support, maintenance,
gestion du changement…
– Ne propose pas de documents types
Club Java
Open Source

• http://www.samoore.com/teach/cis320/fall2000/documents/open-source-decision.jpg

Club Java
Open Source

• L’open source fait référence à tout


programme dont les sources sont
disponibles pour modification par les
utilisateurs.
• L’idée de base est simple :
– quand les programmeur sur internet peuvent lire,
redistribuer et modifier le source, il évolue dans
le bon sens.
– Les développeurs améliorent, adaptent et
corrigent.

Club Java
Open Source et XP

• Les quatre valeurs :


– communication, principe de base de l’open
source
– simplicité, gage de réussite d’un projet open
source, le code complique n’est pas relu
– feedback, principe de base
– courage, travailler pour la reconnaissance est un
gage de courage.

Club Java
Open Source et XP

• Conception Simple
• Remaniement
• Tests
• Refactoring
• Pair Programming
• Responsabilité collective du code
• Règle de codage
• Métaphore
• Intégration continue
• Livraison fréquentes
• Planification itérative
• Client sur site
• 40 Heures par semaine
Club Java
Adapter son processus de
développement

• Travailler de façon itérative et incrémentale


– Que ce soit au niveau des plannings, des spécifications, ou
des développements…

• L’itératif permet une gestion efficace des risques,


– Aborder dès les premières itérations, les points difficiles
– Par exemple, les premières itérations de la phase technique
aborderont les aspects sécurité et transaction.

• L’itératif permet de présenter rapidement des


éléments de validation aux utilisateurs
– Réaliser des prototypes de validation

Club Java
Résumé

• Les processus peuvent se compléter plus qu’ils


n’entrent en concurrence
Phases RUP
Analyse
Élaboration Construction Transition
Processus projet des besoins
Processus organisationnels
2TUP
Spécifications
Analyse & Conception
Implémentation XP
Tests
Déploiement
Support du projet
Configuration
Gestion du projet
Environnement
Itération Iter. Iter. Iter. Iter. Iter. Iter. Iter.
Préliminaire #1 #2 #n #n+1 #n+2 #m #m+1

Itérations

Club Java
Conclusion

• Ne passez pas des mois à définir votre


méthodologie de développement !

• Prenez connaissance des processus les plus utilisés


pour en intégrer un ou plusieurs à votre
méthodologie de projet.

• Exemple
– Les valeurs d’XP et quelques règles (communication,
simplicité, feedback et énergie)
– Les documents types du RUP et leur enchaînement
– La branche technique du 2TUP
– Des prototypes marquant la fin d’une itération
Club Java

You might also like