SlideShare une entreprise Scribd logo
1  sur  39
Drupal, un projet comme les
autres ?
Jean Semère
Vincent Maucorps
Suivez-nous sur Twitter : @Acquia
Jean Semère – www.acquia.com
Solution Architect
Twitter : @JeanSemere
Mail : jean.semere@acquia.com
Suivez-nous sur Twitter : @GroupeSmile
Vincent Maucorps – www.smile.fr
CMS Business Developer
Twitter : @vmaucorps
Mail : vincent.maucorps@smile.fr
4
UN PROJET COMME LES AUTRES
5
EQUIPE PROJET
Monteur HTML ExpertDéveloppeur
Gestion de Projet
6
PHASES PROJET
Spécifications
Montage
Tests
Réalisation
7
Drupal,
Un projet comme les autres ?
1. Organisation
2. Technique
3. Contractualisation
8
Organisation
1. Quelle équipe ?
2. Quelles phases projet ?
3. Quel rythme de développement ?
9
Quelle équipe ?
10
QUELLE EQUIPE ?
Monteur HTML ExpertDéveloppeur
« Thémeur » « Module designer »« Site Builder »
11
Quelles phases projet ?
12
PHASES PROJET « CLASSIQUES »
Spécifications
Montage
Tests
Réalisation
13
SPECIFICATIONS
Spécifications techniques
• Choisir parmi les multiples options
• Fixer les règles de nommage
• Prévoir les éléments structurants
Spécifications fonctionnelles
• Pédagogie client renforcée
• Conseil sur le périmètre fonctionnel des modules
14
QUAND PLANIFIER LA PHASE DE MONTAGE
Comme pour n'importe quel projet
• Faire le montage HTML en amont
• Intégrer le montage dans les développements
Améliorer la démarche
• Chaque développeur prend en charge une fonctionnalité
de A à Z, montage / thème compris
Stratégie optimum
• Réaliser les développements fonctionnels d'abord
• Création du thème ensuite
15
Quel rythme de
développement ?
16
DÉVELOPPEMENT RAD-LIKE
Les bons côtés du développement RAD
• Prototypage rapide de fonctionnalités
• Richesse des composants à assembler
Sans les inconvénients
• Aucune adhérence à un éditeur
• Composants open source, maintenus par la communauté
• Respect des standards et bonnes pratiques
Points d'attention
• Industrialisation / Packaging
• Optimisation des performances
17
Technique
1. Configuration VS Développement
2. Gestion des livraisons
3. Pour aller plus loin dans l'industrialisation
18
Configuration
VS
Développement
19
LES ENJEUX DU CHOIX
Configuration
• Rapide
• Fiable
Développement
• Souple
• Simple
20
LES ENJEUX DU CHOIX
Répartition Configuration / Développement
Charge de travail
21
EXEMPLE : GENERER UNE LISTE DE DONNEES
Module Views
• Fiabilité
• Maintenabilité
• Évolutivité
Requête SQL
• Complexité technique
• Requête atypique
• Enjeux de performance
22
Gestion des livraisons
23
LE STAGING, UN SUJET SENSIBLE AVEC DRUPAL
Projet
« Classique »
24
VERS UN DEPLOIEMENT INDUSTRIALISÉ
Premières expériences avec Features
• Trop de confiance dans le module
• Packaging incomplet
Meilleures versions et meilleure maîtrise
• Module plus fiable
• Suivi rigoureux du cahier de livraison
• Tout est consigné dans le wiki du projet
Améliorer les processus avec Drush
• Drush pour mise à niveau des postes de développement
• Outil maison basé sur Phing pour les déploiements
(s'appuie sur Drush pour les interactions avec Drupal)
25
Pour aller plus loin
dans l'industrialisation
26
WORKFLOW DE DÉPLOIEMENT ACQUIA
27
Contractualisation
1. Une gestion agile dans un cadre forfait
2. Retour d'expérience
3. Vers d'autres modes de contractualisation
28
Une gestion agile
dans un cadre forfait
29
MÉTHODE AGILE, AU FORFAIT
Importance de voir une fonctionnalité comme un tout
• Fonctionnalité = configuration + code métier + permissions + etc
• Même philosophie que le module Features
Fonctionnement en équipe intégrée à privilégier,
notamment :
• En phase de recette pour chaque sprint
• Sur un sprint d'ajustement dédié à la recette en fin de projet
Privilégier des sprints courts (2 semaines)
• Éviter la divergence fonctionnelle
• Implémentation et validation fonctionnalité par fonctionnalité
30
Retour d'expérience
31
RETOUR D'EXPÉRIENCE
Points clés du projet
• Un espace partenaire sécurisé, différents tunnels de souscription
• Suivi des comptes
• 30 000 utilisateurs
• Import / export de flux
• Site accessible et multi-devices
• 4 mois / 500 jours-homme
Enjeux du projet
• Délais de réalisation
• Meilleure ergonomie et utilisabilité des tunnels de souscription
• Évolutivité, pragmatisme technique et performance
• Méthodologie, accompagnement au changement et innovation
32
RETOUR D'EXPÉRIENCE
Gestion de projet Agile
• Phase de conception ergonomique
• Cadrage technique
• Spécifications affinées de sprint en sprint
• Sprint de 3 semaines, recette client au fil de l'eau
• Montage HTML en fin de projet
Bilan
• Délais tenus
• Peu d'allers-retours sur la partie graphique
• Marge de progression sur la gestion des déploiements
33
Vers d'autres modes
de contractualisation
34
CONTRACTUALISER L'AGILITE
35
DES RISQUES PARTAGES
Développement en régie
• Facturation au temps passé
Contrat cadre à bons de commandes
• Cadrage initial
• Compléments de cadrage à la demande
• Facturation par Sprint
Engagements contractuels
• Critères de réussite d'un sprint
• Pénaliser les échecs consécutifs
36
DES RISQUES PARTAGES
Développement en régie
Contrat cadre à bons de commandes
Engagements contractuels
37
Conclusion
38
DRUPAL UN PROJET COMME LES AUTRES ?
Points de vigilance
• Équipe : Il y a plusieurs façons d'être « expert »
Drupal
• Gestion des déploiements
Particularité des solutions à « Thème »
• Bien planifier la phase de montage
Opportunité
• Anéantir l'effet tunnel
39
Des questions ?

Contenu connexe

Tendances

Objecteering mdday2010
Objecteering mdday2010Objecteering mdday2010
Objecteering mdday2010
MD DAY
 
Projet PFE corrigé latest
Projet PFE corrigé latestProjet PFE corrigé latest
Projet PFE corrigé latest
ahed bf
 

Tendances (19)

20171122 01 - REX : Intégration et déploiement continu chez Engie
20171122 01 - REX : Intégration et déploiement continu chez Engie20171122 01 - REX : Intégration et déploiement continu chez Engie
20171122 01 - REX : Intégration et déploiement continu chez Engie
 
Retour d'experience sur drupal 8
Retour d'experience sur drupal 8Retour d'experience sur drupal 8
Retour d'experience sur drupal 8
 
Agilité et SharePoint: Incompatible? On gage que non!
Agilité et SharePoint: Incompatible? On gage que non!Agilité et SharePoint: Incompatible? On gage que non!
Agilité et SharePoint: Incompatible? On gage que non!
 
20171122 - Accueil Club Qualité Logicielle
20171122 - Accueil Club Qualité Logicielle 20171122 - Accueil Club Qualité Logicielle
20171122 - Accueil Club Qualité Logicielle
 
20171122 04 - Automatisation - formation et certifications
20171122 04 - Automatisation - formation et certifications20171122 04 - Automatisation - formation et certifications
20171122 04 - Automatisation - formation et certifications
 
20151013 - DevOps et qualification continue
20151013 - DevOps et qualification continue20151013 - DevOps et qualification continue
20151013 - DevOps et qualification continue
 
TFS 2012 : un pas vers l'agilité... en avant ou en arrière ?
TFS 2012 : un pas vers l'agilité... en avant ou en arrière ? TFS 2012 : un pas vers l'agilité... en avant ou en arrière ?
TFS 2012 : un pas vers l'agilité... en avant ou en arrière ?
 
SharePoint Summit Quebec 2013 - Votre premiere App SharePoint 2013 avec Napa
SharePoint Summit Quebec 2013 - Votre premiere App SharePoint 2013 avec NapaSharePoint Summit Quebec 2013 - Votre premiere App SharePoint 2013 avec Napa
SharePoint Summit Quebec 2013 - Votre premiere App SharePoint 2013 avec Napa
 
Comment transformer WordPress en portail de formation
Comment transformer WordPress en portail de formationComment transformer WordPress en portail de formation
Comment transformer WordPress en portail de formation
 
L'agilité en entreprise avec TFS 2013
L'agilité en entreprise avec TFS 2013L'agilité en entreprise avec TFS 2013
L'agilité en entreprise avec TFS 2013
 
Vis ma vie de chef de projet Drupal | Drupagora 2013, Paris
Vis ma vie de chef de projet Drupal | Drupagora 2013, ParisVis ma vie de chef de projet Drupal | Drupagora 2013, Paris
Vis ma vie de chef de projet Drupal | Drupagora 2013, Paris
 
Objecteering mdday2010
Objecteering mdday2010Objecteering mdday2010
Objecteering mdday2010
 
Keynote drupagora 2015 7
Keynote drupagora 2015 7Keynote drupagora 2015 7
Keynote drupagora 2015 7
 
Recueil des mauvaises pratiques constatées lors de l'audit de sites Drupal 7
Recueil des mauvaises pratiques constatées lors de l'audit de sites Drupal 7Recueil des mauvaises pratiques constatées lors de l'audit de sites Drupal 7
Recueil des mauvaises pratiques constatées lors de l'audit de sites Drupal 7
 
Automatisez, visualisez et améliorez vos processus d’entreprise avec Nintex
Automatisez, visualisez et améliorez vos processus d’entreprise avec Nintex Automatisez, visualisez et améliorez vos processus d’entreprise avec Nintex
Automatisez, visualisez et améliorez vos processus d’entreprise avec Nintex
 
BonitaSoft, la solution BPM
BonitaSoft, la solution BPMBonitaSoft, la solution BPM
BonitaSoft, la solution BPM
 
Projet PFE corrigé latest
Projet PFE corrigé latestProjet PFE corrigé latest
Projet PFE corrigé latest
 
Personnaliser l'interface administrateur de Drupal - DrupalCamp Montreal 2014
Personnaliser l'interface administrateur de Drupal - DrupalCamp Montreal 2014Personnaliser l'interface administrateur de Drupal - DrupalCamp Montreal 2014
Personnaliser l'interface administrateur de Drupal - DrupalCamp Montreal 2014
 
Drupagora - Les clés de la réussite d'un projet Drupal
Drupagora - Les clés de la réussite d'un projet DrupalDrupagora - Les clés de la réussite d'un projet Drupal
Drupagora - Les clés de la réussite d'un projet Drupal
 

En vedette

Tintin cris
Tintin crisTintin cris
Tintin cris
pacitina
 
1 er trabajo odi 5to bach...
1 er trabajo odi 5to bach...1 er trabajo odi 5to bach...
1 er trabajo odi 5to bach...
eduardo bolaños
 
Marina Garrido
Marina GarridoMarina Garrido
Marina Garrido
pacitina
 
Tintin (11)marta cano
Tintin (11)marta canoTintin (11)marta cano
Tintin (11)marta cano
pacitina
 
Redes Inalambricas II
Redes Inalambricas IIRedes Inalambricas II
Redes Inalambricas II
salesperson
 

En vedette (20)

Tintin cris
Tintin crisTintin cris
Tintin cris
 
The magic cat_eye
The magic cat_eyeThe magic cat_eye
The magic cat_eye
 
Sepsis
SepsisSepsis
Sepsis
 
4 pauta evaluación debate
4 pauta evaluación debate4 pauta evaluación debate
4 pauta evaluación debate
 
Práctica profesional pip, cab
Práctica profesional pip, cabPráctica profesional pip, cab
Práctica profesional pip, cab
 
Linkedin curso verano 2014 maria_sanchez Orientate y planifica tu futuro
Linkedin curso verano 2014 maria_sanchez Orientate y planifica tu futuroLinkedin curso verano 2014 maria_sanchez Orientate y planifica tu futuro
Linkedin curso verano 2014 maria_sanchez Orientate y planifica tu futuro
 
1 er trabajo odi 5to bach...
1 er trabajo odi 5to bach...1 er trabajo odi 5to bach...
1 er trabajo odi 5to bach...
 
TXIM - Built-in like
TXIM - Built-in likeTXIM - Built-in like
TXIM - Built-in like
 
Une cyberentreprise sur WordPress - WordCamp Montréal 2013
Une cyberentreprise sur WordPress - WordCamp Montréal 2013Une cyberentreprise sur WordPress - WordCamp Montréal 2013
Une cyberentreprise sur WordPress - WordCamp Montréal 2013
 
Exposición sirtod2012
Exposición sirtod2012Exposición sirtod2012
Exposición sirtod2012
 
Marina Garrido
Marina GarridoMarina Garrido
Marina Garrido
 
Poids des pages, attention danger
Poids des pages, attention dangerPoids des pages, attention danger
Poids des pages, attention danger
 
Les temps forts jardins jardin aux tuileries 26 29 mai 2011
Les temps forts jardins jardin aux tuileries 26 29 mai 2011 Les temps forts jardins jardin aux tuileries 26 29 mai 2011
Les temps forts jardins jardin aux tuileries 26 29 mai 2011
 
Los ultimos jueves en la ciudad del sol. Las Carmelitas
Los ultimos jueves en la ciudad del sol. Las CarmelitasLos ultimos jueves en la ciudad del sol. Las Carmelitas
Los ultimos jueves en la ciudad del sol. Las Carmelitas
 
Vénus présentation bri
Vénus présentation briVénus présentation bri
Vénus présentation bri
 
DOCUMENTS
DOCUMENTSDOCUMENTS
DOCUMENTS
 
Innovation - Neue Prozesse, Methoden und Tools sind gefragt
Innovation - Neue Prozesse, Methoden und Tools sind gefragtInnovation - Neue Prozesse, Methoden und Tools sind gefragt
Innovation - Neue Prozesse, Methoden und Tools sind gefragt
 
Et le français dans tout ça #29
Et le français dans tout ça #29Et le français dans tout ça #29
Et le français dans tout ça #29
 
Tintin (11)marta cano
Tintin (11)marta canoTintin (11)marta cano
Tintin (11)marta cano
 
Redes Inalambricas II
Redes Inalambricas IIRedes Inalambricas II
Redes Inalambricas II
 

Similaire à Drupal un projet comme les autres ? Drupalcamp Paris 2013

Conception et réalisation d’une application web (1).pptx
Conception et réalisation d’une application web (1).pptxConception et réalisation d’une application web (1).pptx
Conception et réalisation d’une application web (1).pptx
SouadZid
 
Conception et réalisation d’une application web (1).pptx
Conception et réalisation d’une application web (1).pptxConception et réalisation d’une application web (1).pptx
Conception et réalisation d’une application web (1).pptx
SouadZid
 
Alter way-wordcamp-paris-2014
Alter way-wordcamp-paris-2014Alter way-wordcamp-paris-2014
Alter way-wordcamp-paris-2014
ALTER WAY
 

Similaire à Drupal un projet comme les autres ? Drupalcamp Paris 2013 (20)

[Webinar Niji] Clés de succès et partage d’expériences pour mettre en œuvre e...
[Webinar Niji] Clés de succès et partage d’expériences pour mettre en œuvre e...[Webinar Niji] Clés de succès et partage d’expériences pour mettre en œuvre e...
[Webinar Niji] Clés de succès et partage d’expériences pour mettre en œuvre e...
 
Bonnes pratiques-drupal-dans-cahier-des-charges conference-dc-lyon-2012
Bonnes pratiques-drupal-dans-cahier-des-charges conference-dc-lyon-2012Bonnes pratiques-drupal-dans-cahier-des-charges conference-dc-lyon-2012
Bonnes pratiques-drupal-dans-cahier-des-charges conference-dc-lyon-2012
 
Methodologie projet
Methodologie projet Methodologie projet
Methodologie projet
 
AFUP 2010 : Industrialisation de PHP, l'exemple de CANAL+
AFUP 2010 : Industrialisation de PHP, l'exemple de CANAL+AFUP 2010 : Industrialisation de PHP, l'exemple de CANAL+
AFUP 2010 : Industrialisation de PHP, l'exemple de CANAL+
 
Développement d'un grand projet piloté par les tests (BDD)
Développement d'un grand projet piloté par les tests (BDD)Développement d'un grand projet piloté par les tests (BDD)
Développement d'un grand projet piloté par les tests (BDD)
 
Think tank présentation
Think tank   présentationThink tank   présentation
Think tank présentation
 
Meetup daikibo 1
Meetup daikibo 1Meetup daikibo 1
Meetup daikibo 1
 
Introduction scrum
Introduction scrumIntroduction scrum
Introduction scrum
 
La SOA au sein des systèmes d'information
La SOA au sein des systèmes d'informationLa SOA au sein des systèmes d'information
La SOA au sein des systèmes d'information
 
Conception et réalisation d’une application web (1).pptx
Conception et réalisation d’une application web (1).pptxConception et réalisation d’une application web (1).pptx
Conception et réalisation d’une application web (1).pptx
 
Conception et réalisation d’une application web (1).pptx
Conception et réalisation d’une application web (1).pptxConception et réalisation d’une application web (1).pptx
Conception et réalisation d’une application web (1).pptx
 
Accéder au développement Dot.Net et Asp.Net
Accéder au développement Dot.Net et Asp.NetAccéder au développement Dot.Net et Asp.Net
Accéder au développement Dot.Net et Asp.Net
 
Developement logiciel: comment livrer de la qualite ?
Developement logiciel: comment livrer  de la qualite ?Developement logiciel: comment livrer  de la qualite ?
Developement logiciel: comment livrer de la qualite ?
 
Ha zut, le DevOps a mangé ma vélocité par Jean-Marc Lavoie & Sylvie Trudel
Ha zut, le DevOps a mangé ma vélocité par Jean-Marc Lavoie & Sylvie TrudelHa zut, le DevOps a mangé ma vélocité par Jean-Marc Lavoie & Sylvie Trudel
Ha zut, le DevOps a mangé ma vélocité par Jean-Marc Lavoie & Sylvie Trudel
 
Customer Show case : Mise en place d’une solution de gestion de projet avec l...
Customer Show case : Mise en place d’une solution de gestion de projet avec l...Customer Show case : Mise en place d’une solution de gestion de projet avec l...
Customer Show case : Mise en place d’une solution de gestion de projet avec l...
 
Exemple de mise en place d'une solution EPM 2013
Exemple de mise en place d'une solution EPM 2013Exemple de mise en place d'une solution EPM 2013
Exemple de mise en place d'une solution EPM 2013
 
Alter way-wordcamp-paris-2014
Alter way-wordcamp-paris-2014Alter way-wordcamp-paris-2014
Alter way-wordcamp-paris-2014
 
Solutions Web « prêtes à porter » avec WordPress
Solutions Web « prêtes à porter » avec WordPressSolutions Web « prêtes à porter » avec WordPress
Solutions Web « prêtes à porter » avec WordPress
 
Eurelis - Construire une usine à sites
Eurelis - Construire une usine à sitesEurelis - Construire une usine à sites
Eurelis - Construire une usine à sites
 
Dev opsday case study
Dev opsday   case studyDev opsday   case study
Dev opsday case study
 

Plus de Artusamak

Drupal comment contribuer
Drupal comment contribuerDrupal comment contribuer
Drupal comment contribuer
Artusamak
 

Plus de Artusamak (20)

On test quoi - DCLannion 2017
On test quoi - DCLannion 2017On test quoi - DCLannion 2017
On test quoi - DCLannion 2017
 
Care for your backoffice - Drupal Dev Days Szeged 2014
Care for your backoffice - Drupal Dev Days Szeged 2014Care for your backoffice - Drupal Dev Days Szeged 2014
Care for your backoffice - Drupal Dev Days Szeged 2014
 
Agilité - Drupal et Scrum sont faits pour s'entendre
Agilité - Drupal et Scrum sont faits pour s'entendreAgilité - Drupal et Scrum sont faits pour s'entendre
Agilité - Drupal et Scrum sont faits pour s'entendre
 
Drupal 8: Mobile initiative - Drupalcamp Paris 2013
Drupal 8: Mobile initiative - Drupalcamp Paris 2013Drupal 8: Mobile initiative - Drupalcamp Paris 2013
Drupal 8: Mobile initiative - Drupalcamp Paris 2013
 
Il n'y a pas que Drupal dans la vie - Drupalcamp Paris 2013
Il n'y a pas que Drupal dans la vie - Drupalcamp Paris 2013Il n'y a pas que Drupal dans la vie - Drupalcamp Paris 2013
Il n'y a pas que Drupal dans la vie - Drupalcamp Paris 2013
 
Openlayers - Drupalcamp Paris 2013
Openlayers - Drupalcamp Paris 2013Openlayers - Drupalcamp Paris 2013
Openlayers - Drupalcamp Paris 2013
 
Retour d'expérience : France Télévisions - Drupalcamp Paris 2013
Retour d'expérience : France Télévisions - Drupalcamp Paris 2013Retour d'expérience : France Télévisions - Drupalcamp Paris 2013
Retour d'expérience : France Télévisions - Drupalcamp Paris 2013
 
Drupal, scrum et l'agilité - Drupalcamp Paris 2013
Drupal, scrum et l'agilité - Drupalcamp Paris 2013Drupal, scrum et l'agilité - Drupalcamp Paris 2013
Drupal, scrum et l'agilité - Drupalcamp Paris 2013
 
Comment contribuer à Drupal
Comment contribuer à DrupalComment contribuer à Drupal
Comment contribuer à Drupal
 
Contribuer à drupal
Contribuer à drupalContribuer à drupal
Contribuer à drupal
 
Drupal comment contribuer
Drupal comment contribuerDrupal comment contribuer
Drupal comment contribuer
 
Drupal commerce - Drupalcamp Toulouse
Drupal commerce - Drupalcamp ToulouseDrupal commerce - Drupalcamp Toulouse
Drupal commerce - Drupalcamp Toulouse
 
Drupal commerce nuts and bolts seville
Drupal commerce nuts and bolts   sevilleDrupal commerce nuts and bolts   seville
Drupal commerce nuts and bolts seville
 
Drupalcamp Nantes - Présentation entités
Drupalcamp Nantes - Présentation entitésDrupalcamp Nantes - Présentation entités
Drupalcamp Nantes - Présentation entités
 
Drupalcamp Nantes - Présentation Drush
Drupalcamp Nantes - Présentation DrushDrupalcamp Nantes - Présentation Drush
Drupalcamp Nantes - Présentation Drush
 
Drupalcamp Nantes - Présentation GIT
Drupalcamp Nantes - Présentation GITDrupalcamp Nantes - Présentation GIT
Drupalcamp Nantes - Présentation GIT
 
Drupalcamp Nantes - Optimisations drupal
Drupalcamp Nantes - Optimisations drupalDrupalcamp Nantes - Optimisations drupal
Drupalcamp Nantes - Optimisations drupal
 
Drupalcamp Nantes - Open layers
Drupalcamp Nantes - Open layersDrupalcamp Nantes - Open layers
Drupalcamp Nantes - Open layers
 
Drupalcamp Nantes - Lost in translation
Drupalcamp Nantes - Lost in translationDrupalcamp Nantes - Lost in translation
Drupalcamp Nantes - Lost in translation
 
Drupalcamp Nantes - Open layers
Drupalcamp Nantes - Open layersDrupalcamp Nantes - Open layers
Drupalcamp Nantes - Open layers
 

Drupal un projet comme les autres ? Drupalcamp Paris 2013

  • 1. Drupal, un projet comme les autres ? Jean Semère Vincent Maucorps
  • 2. Suivez-nous sur Twitter : @Acquia Jean Semère – www.acquia.com Solution Architect Twitter : @JeanSemere Mail : jean.semere@acquia.com
  • 3. Suivez-nous sur Twitter : @GroupeSmile Vincent Maucorps – www.smile.fr CMS Business Developer Twitter : @vmaucorps Mail : vincent.maucorps@smile.fr
  • 4. 4 UN PROJET COMME LES AUTRES
  • 5. 5 EQUIPE PROJET Monteur HTML ExpertDéveloppeur Gestion de Projet
  • 7. 7 Drupal, Un projet comme les autres ? 1. Organisation 2. Technique 3. Contractualisation
  • 8. 8 Organisation 1. Quelle équipe ? 2. Quelles phases projet ? 3. Quel rythme de développement ?
  • 10. 10 QUELLE EQUIPE ? Monteur HTML ExpertDéveloppeur « Thémeur » « Module designer »« Site Builder »
  • 13. 13 SPECIFICATIONS Spécifications techniques • Choisir parmi les multiples options • Fixer les règles de nommage • Prévoir les éléments structurants Spécifications fonctionnelles • Pédagogie client renforcée • Conseil sur le périmètre fonctionnel des modules
  • 14. 14 QUAND PLANIFIER LA PHASE DE MONTAGE Comme pour n'importe quel projet • Faire le montage HTML en amont • Intégrer le montage dans les développements Améliorer la démarche • Chaque développeur prend en charge une fonctionnalité de A à Z, montage / thème compris Stratégie optimum • Réaliser les développements fonctionnels d'abord • Création du thème ensuite
  • 16. 16 DÉVELOPPEMENT RAD-LIKE Les bons côtés du développement RAD • Prototypage rapide de fonctionnalités • Richesse des composants à assembler Sans les inconvénients • Aucune adhérence à un éditeur • Composants open source, maintenus par la communauté • Respect des standards et bonnes pratiques Points d'attention • Industrialisation / Packaging • Optimisation des performances
  • 17. 17 Technique 1. Configuration VS Développement 2. Gestion des livraisons 3. Pour aller plus loin dans l'industrialisation
  • 19. 19 LES ENJEUX DU CHOIX Configuration • Rapide • Fiable Développement • Souple • Simple
  • 20. 20 LES ENJEUX DU CHOIX Répartition Configuration / Développement Charge de travail
  • 21. 21 EXEMPLE : GENERER UNE LISTE DE DONNEES Module Views • Fiabilité • Maintenabilité • Évolutivité Requête SQL • Complexité technique • Requête atypique • Enjeux de performance
  • 23. 23 LE STAGING, UN SUJET SENSIBLE AVEC DRUPAL Projet « Classique »
  • 24. 24 VERS UN DEPLOIEMENT INDUSTRIALISÉ Premières expériences avec Features • Trop de confiance dans le module • Packaging incomplet Meilleures versions et meilleure maîtrise • Module plus fiable • Suivi rigoureux du cahier de livraison • Tout est consigné dans le wiki du projet Améliorer les processus avec Drush • Drush pour mise à niveau des postes de développement • Outil maison basé sur Phing pour les déploiements (s'appuie sur Drush pour les interactions avec Drupal)
  • 25. 25 Pour aller plus loin dans l'industrialisation
  • 27. 27 Contractualisation 1. Une gestion agile dans un cadre forfait 2. Retour d'expérience 3. Vers d'autres modes de contractualisation
  • 28. 28 Une gestion agile dans un cadre forfait
  • 29. 29 MÉTHODE AGILE, AU FORFAIT Importance de voir une fonctionnalité comme un tout • Fonctionnalité = configuration + code métier + permissions + etc • Même philosophie que le module Features Fonctionnement en équipe intégrée à privilégier, notamment : • En phase de recette pour chaque sprint • Sur un sprint d'ajustement dédié à la recette en fin de projet Privilégier des sprints courts (2 semaines) • Éviter la divergence fonctionnelle • Implémentation et validation fonctionnalité par fonctionnalité
  • 31. 31 RETOUR D'EXPÉRIENCE Points clés du projet • Un espace partenaire sécurisé, différents tunnels de souscription • Suivi des comptes • 30 000 utilisateurs • Import / export de flux • Site accessible et multi-devices • 4 mois / 500 jours-homme Enjeux du projet • Délais de réalisation • Meilleure ergonomie et utilisabilité des tunnels de souscription • Évolutivité, pragmatisme technique et performance • Méthodologie, accompagnement au changement et innovation
  • 32. 32 RETOUR D'EXPÉRIENCE Gestion de projet Agile • Phase de conception ergonomique • Cadrage technique • Spécifications affinées de sprint en sprint • Sprint de 3 semaines, recette client au fil de l'eau • Montage HTML en fin de projet Bilan • Délais tenus • Peu d'allers-retours sur la partie graphique • Marge de progression sur la gestion des déploiements
  • 33. 33 Vers d'autres modes de contractualisation
  • 35. 35 DES RISQUES PARTAGES Développement en régie • Facturation au temps passé Contrat cadre à bons de commandes • Cadrage initial • Compléments de cadrage à la demande • Facturation par Sprint Engagements contractuels • Critères de réussite d'un sprint • Pénaliser les échecs consécutifs
  • 36. 36 DES RISQUES PARTAGES Développement en régie Contrat cadre à bons de commandes Engagements contractuels
  • 38. 38 DRUPAL UN PROJET COMME LES AUTRES ? Points de vigilance • Équipe : Il y a plusieurs façons d'être « expert » Drupal • Gestion des déploiements Particularité des solutions à « Thème » • Bien planifier la phase de montage Opportunité • Anéantir l'effet tunnel