quels enjeux

23
Club Java Processus de développement et nouvelles technologies Didier Girard Improve [email protected]

Upload: tamekah-hardin

Post on 02-Jan-2016

43 views

Category:

Documents


1 download

DESCRIPTION

Processus de développement et nouvelles technologies Didier Girard Improve [email protected]. Quels enjeux. Les Nouvelles Technologies sont utilisées sur tous types de projets Applications B2E, B2B, B2C Produits Client-Serveur. Quels enjeux. Quelles technologies XML - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Quels enjeux

Club Java

Processus de développement

et nouvelles technologies

Didier GirardImprove

[email protected]

Page 2: Quels enjeux

Club Java

Quels enjeux

• Les Nouvelles Technologies sont utilisées sur tous types de projets– Applications

• B2E,

• B2B,

• B2C

– Produits

– Client-Serveur

Page 3: Quels enjeux

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

Page 4: Quels enjeux

Club Java

Quels enjeux

Besoins

Réalisation

Production

Évolutions

Projet

Page 5: Quels enjeux

Club Java

Quels enjeux

Besoins

Réalisation

Production

Évolutions

Projet Nouvelles Technologies Technologies

Page 6: Quels enjeux

Club Java

Quels enjeux

Besoins

Réalisation

Production

Évolutions

Technologies

Nouvelles

nouvelle infrastructure,formation,

nouvelle méthode, prototypage,formation,

maquettes

Projet Nouvelles Technologies

Page 7: Quels enjeux

Club Java

Quels enjeux

Besoins

Réalisation

Production

Évolutions

Projet Nouvelles Technologies Technologies

Nouvelles

, briser les rêves

modéliser,

prospection technologiquenombreux intervenants,

robustesse, sécurité

Nouvelles

nouvelle infrastructure,formation,

nouvelle méthode, prototypage,formation,

maquettes

transfert de compétences

Page 8: Quels enjeux

Club Java

Les enjeux

• Il est nécessaire d’adapter son processus de développement pour répondre à ces enjeux technologiques

Page 9: Quels enjeux

Club Java

Adapter son processus de développement

Phase projet Spécifications

Phase projet Conception

Phase projet Réalisation

Chef de projet Utilisateur

Spécificateur Analyste - Concepteur

Analyse des besoins

Rédaction des spécifications

générales

Rédaction des spécifications

détaillées

validation

ok

ko

validation

ok

ko

Cahier des charges

Spécifications

Analyse - Conception

Page 10: Quels enjeux

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

• Points forts– Distingue clairement les phases projet

• Points faibles– Non itératif– Ne propose pas de modèles de documents

Analyse

Conception

Programmation

Test

Maintenance

Page 11: Quels enjeux

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

Analyse des besoins

Élaboration Construction TransitionProcessus projetProcessus organisationnelsSpécificationsAnalyse & ConceptionImplémentationTestsDéploiementSupport du projetConfigurationGestion du projetEnvironnement

Phases

Itérations

ItérationPréliminaire

Iter.#1

Iter.#2

Iter.#n

Iter.#n+1

Iter.#n+2

Iter.#m

Iter.#m+1

Page 12: Quels enjeux

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

• 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

Page 13: Quels enjeux

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

Page 14: Quels enjeux

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

– Assez flou dans sa mise en œuvre: quels intervenants, quels livrables ?

Page 15: Quels enjeux

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

Page 16: Quels enjeux

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

Page 17: Quels enjeux

Club Java

Open Source

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

Page 18: Quels enjeux

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.

Page 19: Quels enjeux

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.

Page 20: Quels enjeux

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

Page 21: Quels enjeux

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

Page 22: Quels enjeux

Club Java

Résumé

• Les processus peuvent se compléter plus qu’ils n’entrent en concurrence

Analyse des besoins

Élaboration Construction TransitionProcessus projetProcessus organisationnelsSpécificationsAnalyse & ConceptionImplémentationTestsDéploiementSupport du projetConfigurationGestion du projetEnvironnement

Phases

Itérations

ItérationPréliminaire

Iter.#1

Iter.#2

Iter.#n

Iter.#n+1

Iter.#n+2

Iter.#m

Iter.#m+1

RUP

2TUP

XP

Page 23: Quels enjeux

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