View
43
Download
1
Category
Preview:
DESCRIPTION
Processus de développement et nouvelles technologies Didier Girard Improve Didier.Girard@improve.fr. 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
Citation preview
Club Java
Processus de développement
et nouvelles technologies
Didier GirardImprove
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
Besoins
Réalisation
Production
Évolutions
Projet
Club Java
Quels enjeux
Besoins
Réalisation
Production
Évolutions
Projet Nouvelles Technologies Technologies
Club Java
Quels enjeux
Besoins
Réalisation
Production
Évolutions
Technologies
Nouvelles
nouvelle infrastructure,formation,
nouvelle méthode, prototypage,formation,
maquettes
Projet Nouvelles Technologies
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
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 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
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
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
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
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
– Assez flou dans sa mise en œuvre: quels intervenants, quels livrables ?
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
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
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
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
Recommended