SlideShare uma empresa Scribd logo
1 de 39
Bonnes pratiques Drupal
dans le Cahier des Charges
     Léon CROS - Chipway
Chipway : Spécialiste
• Formations Drupal 6 et 7
  –   Webmaster 1 : Prise en main et création d'un site
  –   Webmaster 2 : Perfectionnement
  –   Webmaster 3 : Administration avancée
  –   Développeur 1 : Field, CCK + Views
  –   Développeur 2 : Programmation
  –   Designer 1 : Créer un thème Drupal
  –   Commerce 1 : création d'une boutique
• Accompagnement, Assistance à MOA
• Développement, Conseil, Séminaires
Bonnes pratiques Drupal / CdC
•   Pourquoi cette session ?
•   Objectifs
•   Guide de Bonnes Pratiques ?
•   BP Drupal dans CdC ou Guide BPD ?
•   Quelles BP mentionner ?
•   Adapter les BP
•   Impact sur les relations client/fournisseur
•   Questions/Réponses


Léon Cros - Chipway   Drupalcamp Lyon 2012        3
35 minutes ?

                      Sacré challenge !


                             GO !


Léon Cros - Chipway       Drupalcamp Lyon 2012   4
Pourquoi cette session ?
 Promesse Drupal
 Résultats obtenus
 Cherchez l'erreur




Léon Cros - Chipway   Drupalcamp Lyon 2012   5
La « promesse » Drupal
Pérennité de l'investissement
• Polyvalence
• Evolutivité
• Facilité de maintenance
• Performance
• Montée en charge
• Rapidité de mise en oeuvre
• Multilingue et multisite
• Solution industrielle
• Sécurité
Léon Cros - Chipway   Drupalcamp Lyon 2012   6
Résultats parfois obtenus
•   « Le premier qui met à jour ... »
•   Core hacké pour mail sur inscription
•   9 pages de codes dans un block
•   Hack first then talk
•   Pas le temps
•   Trop cher / concurrent incompétent
•   Hacké à mort
•   Développeur aux abonnés absents
•   Drupal c'est de la « M. »
•   ...
Léon Cros - Chipway   Drupalcamp Lyon 2012   7
Cherchez le coupable !
    Client ?
    Fournisseur ?
    Développeur ?
    Budget ?
    Délai ?




Léon Cros - Chipway   Drupalcamp Lyon 2012   8
Cherchez le coupable !



Bouc
 émissaire ?




Léon Cros - Chipway   Drupalcamp Lyon 2012   9
Objectifs généraux




Léon Cros - Chipway        Drupalcamp Lyon 2012   10
Objectifs généraux
    Qualité
    Pérennité investissement
    Durée de vie
    Coûts




Léon Cros - Chipway        Drupalcamp Lyon 2012   11
Bonnes Pratiques : où ?
•   Cahier des Charges
•   CCTP
•   Spécifications
•   ...


    Guide de Bonnes Pratiques Projets Drupal
             De VOTRE entreprise


Léon Cros - Chipway   Drupalcamp Lyon 2012   12
Bonnes Pratiques : Réticences
•   On connait
•   C'est sur drupal.org
•   On a un expert qui peut intervenir
•   Pas la peine de rédiger
•   Pas besoin qu'on me dise :-((
•   Concerne que codage de modules
•   Augmente le coût pour rien
•   J'adore Hacker
•   Pas le temps. On verra après
•   Bâtons dans les roues
Léon Cros - Chipway   Drupalcamp Lyon 2012   13
BP concerne quoi ?
•   Codage Drupal
•   Construction du site
•   Theming
•   Maintenance
•   Evolutions
•   Ergonomie
•   SEO
•   Déploiement
•   Mises à jour, montées de version

Léon Cros - Chipway    Drupalcamp Lyon 2012   14
BP concerne qui ?
• Tous les intervenants
   – externes
   – Internes




Léon Cros - Chipway        Drupalcamp Lyon 2012   15
BP : Quels projets ?
• Tous les projets




Léon Cros - Chipway    Drupalcamp Lyon 2012   16
Que mettre dedans ?
•   Rappel des objectifs de nos BP
•   Versions concernées
•   Niveau d'exigence par BP
•   Points de vue
•   Bonnes Pratiques Drupal




Léon Cros - Chipway   Drupalcamp Lyon 2012   17
Objectifs des Bonnes Pratiques
Faciliter
• maintenance et évolutions
• mises à jour Core + contributifs
• déploiements
• réutilisation du code
• contribution
• optimisation et performances
• design/redesign
• accessibilité

Léon Cros - Chipway   Drupalcamp Lyon 2012   18
Drupal rocks
Faciliter
• maintenance et évolutions
• mises à jour Core + contributifs
• déploiements
• réutilisation du code
• contribution
• optimisation et performances
• design/redesign
• accessibilité

Léon Cros - Chipway     Drupalcamp Lyon 2012   19
Versions concernées
• Concerne Toutes vos versions Drupal
  – D5 ?
  – D6
  – D7
• Spécificités selon version
• Mettre à jour pour D8



Léon Cros - Chipway   Drupalcamp Lyon 2012   20
Exigences du client / chaque BP
Fondements

• Politique technique
• Contraintes
  – International
  – Industrialisation

               Contexte et Objectifs

Léon Cros - Chipway     Drupalcamp Lyon 2012   21
Niveau d'exigence / chaque BP

Exigences
• Indispensable
• Obligatoire négociable
• Bonus




Léon Cros - Chipway   Drupalcamp Lyon 2012   22
Points de vue
•   Conception générale
•   Organisation des dossiers
•   Programmation ; Codage des modules
•   Sécurité du code
•   Optimisation
•   Déploiement
•   Accessibilité
•   Theming
•   Documentation

Léon Cros - Chipway   Drupalcamp Lyon 2012   23
Quelques BP Indispensables
•   Ne pas Hacker Drupal Core
•   Respecter les règles de codage
•   Site traduisible
•   Theme()
•   Nommage des fonctions, hooks, variables
•   Cohérence BD / schema des tables
•   Nettoyer les données saisies
•   Accès BD via API Drupal


Léon Cros - Chipway   Drupalcamp Lyon 2012   24
Obligatoires négociables, Ex ;
•   Utiliser des modules existants
•   Modules GLUE
•   Ne pas hacker modules/themes contribs
•   Suivi des patches dans doc
•   Contribuer les patches
•   Fork si importantes modifs
•   Sites/all/modules & custom
•   Sites/all/libraries
•   Taille des fonctions
•   Décomposition des traitements
Léon Cros - Chipway   Drupalcamp Lyon 2012   25
Exemples de BP Bonus
• Limiter le nombre de modules
• Expliquer
   – organisation des données
   – organisation des vues/affichages
• Fichiers des chaînes à traduire dispos
• Contribuer modules non stratégiques




Léon Cros - Chipway   Drupalcamp Lyon 2012   26
Détail d'une Bonne Pratique
• Codage
• Indispensable
• Chaque module doit respecter les règles
  de codage Drupal et passer sans erreur
  même mineure la revue par « Coder
  Review »
• Référence : http://drupal.org/coding-standards




Léon Cros - Chipway   Drupalcamp Lyon 2012     27
Détail d'une Bonne Pratique
• Theming
• Indispensable
• Chaque theme doit respecter les règles de
  codage Drupal en particulier des CSS et
  javascript
• Référence : http://drupal.org/coding-standards




Léon Cros - Chipway   Drupalcamp Lyon 2012     28
Détail d'une Bonne Pratique
• Codage
• Obligatoire négociable
• Utiliser autant que possible les fonctions
  de themes existantes
• Référence :
   http://api.drupal.org/api/drupal/modules--
   system--theme.api.php/group/themeable/7




Léon Cros - Chipway   Drupalcamp Lyon 2012      29
Avantages Client

•   Sécurise/pérennise son investissement
•   Allège-complète CdC/CCTP
•   Facilite les comparaisons
•   rend les offres comparables
•   Elargit palette de prestataires possibles
•   Cadre/simplifie les recettes
•   Améliore Qualité obtenue
•   Facilite dialogues internes/externes

Léon Cros - Chipway       Drupalcamp Lyon 2012   30
Avantages Fournisseur

•   En parler montre son professionnalisme
•   Valorise ses compétences
•   Concurrence plus claire
•   Aide à monter en compétences
•   Facilite dialogues internes/externes
•   Facilite intégration des nouveaux



Léon Cros - Chipway   Drupalcamp Lyon 2012   31
Conclusion
Le Guide de Bonnes Pratiques Drupal
• Référence
• Propre à l'entreprise/groupe...
• Extensible
• Déclinable selon besoins




Léon Cros - Chipway    Drupalcamp Lyon 2012   32
Conclusion
Le Guide de Bonnes Pratiques Drupal
• Facilite les dialogues
• Augmente la confiance
• Aide à monter en compétences
• Nouveaux développeurs
• Développeurs exprérimentés
• Pérennise la relation client - fournisseur



Léon Cros - Chipway    Drupalcamp Lyon 2012    33
Annexes

                      Compléments


Léon Cros - Chipway     Drupalcamp Lyon 2012   34
Autres BP Indispensables
•   Aucun traitement dans modèles du thème
•   Commentaires Doxygen
•   Nettoyer les données saisies
•   Formulaires créés via Form API
•   Pas de PHP 4




Léon Cros - Chipway   Drupalcamp Lyon 2012   35
Obligatoires négociables, Ex ;
•   hook_menu en tête
•   Fonctions _function()
•   Fonctions de themes existantes
•   Modules paramétrables
•   Select via db_rewrite_sql()
•   Désinstaller modules inutilisés
•   Fonctions de calculs dans .inc
•   Activer caches, optimisation CSS … avant
    Prod

Léon Cros - Chipway   Drupalcamp Lyon 2012   36
Obligatoires négociables, Ex ;
•   Mises en forme par feuilles CSS
•   Imbrication des templates
•   Theme sans table
•   Id et classes habituelles de base
•   Pas de Flash en frontal
•   Commentaires étendus des fonctions
•   Principes de nommage / projet-client
•   Uniquement le nécessaire sur la Prod
•   Contenu attendu de la Doc du projet

Léon Cros - Chipway   Drupalcamp Lyon 2012   37
Obligatoires négociables, Ex ;
•   hook_help
•   README.txt
•   Blocs PHP => Appel fonction (pas inline)
•   Outils de déploiement
•   Tests codés pour modules custom
•   Theme accessible
•   Champs pour accessiblité
•   Facile à indexer et SEO
•   Intégration continue

Léon Cros - Chipway   Drupalcamp Lyon 2012     38
Merci + Questions ?
       @chipway
  Lcros@chipway.com

Mais conteúdo relacionado

Semelhante a Bonnes pratiques-drupal-dans-cahier-des-charges conference-dc-lyon-2012

Keynote drupagora 2015 7
Keynote drupagora 2015 7Keynote drupagora 2015 7
Keynote drupagora 2015 7Core-Techs
 
Mener à bien un projet Drupal (Drupagora 2013)
Mener à bien un projet Drupal (Drupagora 2013)Mener à bien un projet Drupal (Drupagora 2013)
Mener à bien un projet Drupal (Drupagora 2013)LaNetscouade
 
Drupal un projet comme les autres ? Drupalcamp Paris 2013
Drupal un projet comme les autres ? Drupalcamp Paris 2013Drupal un projet comme les autres ? Drupalcamp Paris 2013
Drupal un projet comme les autres ? Drupalcamp Paris 2013Artusamak
 
Alphorm.com Formation Drupal 7 pour les utilisateurs
Alphorm.com Formation Drupal 7 pour les utilisateurs Alphorm.com Formation Drupal 7 pour les utilisateurs
Alphorm.com Formation Drupal 7 pour les utilisateurs Alphorm
 
Global Training Day Paris - Drupal 8
Global Training Day Paris - Drupal 8Global Training Day Paris - Drupal 8
Global Training Day Paris - Drupal 8Romain Jarraud
 
Drupagora 2013 : Drupal8 et Symfony2, quel impact ?
Drupagora 2013 : Drupal8 et Symfony2, quel impact ?Drupagora 2013 : Drupal8 et Symfony2, quel impact ?
Drupagora 2013 : Drupal8 et Symfony2, quel impact ?ekino
 
Drupagora 2012 - Améliorations ergonomiques pour les contributeurs dans Drupal
Drupagora 2012 - Améliorations ergonomiques pour les contributeurs dans DrupalDrupagora 2012 - Améliorations ergonomiques pour les contributeurs dans Drupal
Drupagora 2012 - Améliorations ergonomiques pour les contributeurs dans DrupalOlivier Friesse
 
Conference drupal 8 au Forum PHP 2013 à Paris
Conference drupal 8 au Forum PHP 2013 à ParisConference drupal 8 au Forum PHP 2013 à Paris
Conference drupal 8 au Forum PHP 2013 à ParisChipway
 
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 WordPressStéphane Plante
 
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 7OSInet
 
Positionner drupal-conference-drupalcamp-lyon-2012-marketing
Positionner drupal-conference-drupalcamp-lyon-2012-marketingPositionner drupal-conference-drupalcamp-lyon-2012-marketing
Positionner drupal-conference-drupalcamp-lyon-2012-marketingChipway
 
DrupalCamp Paris 2013 - Drupal un cms oriente metier
DrupalCamp Paris 2013 - Drupal un cms oriente metierDrupalCamp Paris 2013 - Drupal un cms oriente metier
DrupalCamp Paris 2013 - Drupal un cms oriente metierRomain Jarraud
 
DrupalCamp Paris 2013 - Drupal : un CMS orienté métier
 DrupalCamp Paris 2013 - Drupal : un CMS orienté métier DrupalCamp Paris 2013 - Drupal : un CMS orienté métier
DrupalCamp Paris 2013 - Drupal : un CMS orienté métierActency
 
Présentation de Kirby CMS
Présentation de Kirby CMSPrésentation de Kirby CMS
Présentation de Kirby CMSGilles Vauvarin
 
Drupal & responsive
Drupal & responsiveDrupal & responsive
Drupal & responsiveRezonova
 
Cms et-creer-un-petit-site-avec-drupal-jdll-2012
Cms et-creer-un-petit-site-avec-drupal-jdll-2012Cms et-creer-un-petit-site-avec-drupal-jdll-2012
Cms et-creer-un-petit-site-avec-drupal-jdll-2012Chipway
 
Drupal et le NoSQL - drupagora 2011
Drupal et le NoSQL - drupagora 2011Drupal et le NoSQL - drupagora 2011
Drupal et le NoSQL - drupagora 2011OSInet
 
WordPress sous stéroïdes : votre site Web vers les sommets !
WordPress sous stéroïdes : votre site Web vers les sommets !WordPress sous stéroïdes : votre site Web vers les sommets !
WordPress sous stéroïdes : votre site Web vers les sommets !Aurélien Denis
 
Présentation Symetris - Drupalcamp Montreal 2013 le diable est dans les détails
Présentation Symetris - Drupalcamp Montreal 2013 le diable est dans les détailsPrésentation Symetris - Drupalcamp Montreal 2013 le diable est dans les détails
Présentation Symetris - Drupalcamp Montreal 2013 le diable est dans les détailsSymetris
 
Cours Devops Sparks.pptx.pdf
Cours Devops Sparks.pptx.pdfCours Devops Sparks.pptx.pdf
Cours Devops Sparks.pptx.pdfboulonvert
 

Semelhante a Bonnes pratiques-drupal-dans-cahier-des-charges conference-dc-lyon-2012 (20)

Keynote drupagora 2015 7
Keynote drupagora 2015 7Keynote drupagora 2015 7
Keynote drupagora 2015 7
 
Mener à bien un projet Drupal (Drupagora 2013)
Mener à bien un projet Drupal (Drupagora 2013)Mener à bien un projet Drupal (Drupagora 2013)
Mener à bien un projet Drupal (Drupagora 2013)
 
Drupal un projet comme les autres ? Drupalcamp Paris 2013
Drupal un projet comme les autres ? Drupalcamp Paris 2013Drupal un projet comme les autres ? Drupalcamp Paris 2013
Drupal un projet comme les autres ? Drupalcamp Paris 2013
 
Alphorm.com Formation Drupal 7 pour les utilisateurs
Alphorm.com Formation Drupal 7 pour les utilisateurs Alphorm.com Formation Drupal 7 pour les utilisateurs
Alphorm.com Formation Drupal 7 pour les utilisateurs
 
Global Training Day Paris - Drupal 8
Global Training Day Paris - Drupal 8Global Training Day Paris - Drupal 8
Global Training Day Paris - Drupal 8
 
Drupagora 2013 : Drupal8 et Symfony2, quel impact ?
Drupagora 2013 : Drupal8 et Symfony2, quel impact ?Drupagora 2013 : Drupal8 et Symfony2, quel impact ?
Drupagora 2013 : Drupal8 et Symfony2, quel impact ?
 
Drupagora 2012 - Améliorations ergonomiques pour les contributeurs dans Drupal
Drupagora 2012 - Améliorations ergonomiques pour les contributeurs dans DrupalDrupagora 2012 - Améliorations ergonomiques pour les contributeurs dans Drupal
Drupagora 2012 - Améliorations ergonomiques pour les contributeurs dans Drupal
 
Conference drupal 8 au Forum PHP 2013 à Paris
Conference drupal 8 au Forum PHP 2013 à ParisConference drupal 8 au Forum PHP 2013 à Paris
Conference drupal 8 au Forum PHP 2013 à Paris
 
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
 
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
 
Positionner drupal-conference-drupalcamp-lyon-2012-marketing
Positionner drupal-conference-drupalcamp-lyon-2012-marketingPositionner drupal-conference-drupalcamp-lyon-2012-marketing
Positionner drupal-conference-drupalcamp-lyon-2012-marketing
 
DrupalCamp Paris 2013 - Drupal un cms oriente metier
DrupalCamp Paris 2013 - Drupal un cms oriente metierDrupalCamp Paris 2013 - Drupal un cms oriente metier
DrupalCamp Paris 2013 - Drupal un cms oriente metier
 
DrupalCamp Paris 2013 - Drupal : un CMS orienté métier
 DrupalCamp Paris 2013 - Drupal : un CMS orienté métier DrupalCamp Paris 2013 - Drupal : un CMS orienté métier
DrupalCamp Paris 2013 - Drupal : un CMS orienté métier
 
Présentation de Kirby CMS
Présentation de Kirby CMSPrésentation de Kirby CMS
Présentation de Kirby CMS
 
Drupal & responsive
Drupal & responsiveDrupal & responsive
Drupal & responsive
 
Cms et-creer-un-petit-site-avec-drupal-jdll-2012
Cms et-creer-un-petit-site-avec-drupal-jdll-2012Cms et-creer-un-petit-site-avec-drupal-jdll-2012
Cms et-creer-un-petit-site-avec-drupal-jdll-2012
 
Drupal et le NoSQL - drupagora 2011
Drupal et le NoSQL - drupagora 2011Drupal et le NoSQL - drupagora 2011
Drupal et le NoSQL - drupagora 2011
 
WordPress sous stéroïdes : votre site Web vers les sommets !
WordPress sous stéroïdes : votre site Web vers les sommets !WordPress sous stéroïdes : votre site Web vers les sommets !
WordPress sous stéroïdes : votre site Web vers les sommets !
 
Présentation Symetris - Drupalcamp Montreal 2013 le diable est dans les détails
Présentation Symetris - Drupalcamp Montreal 2013 le diable est dans les détailsPrésentation Symetris - Drupalcamp Montreal 2013 le diable est dans les détails
Présentation Symetris - Drupalcamp Montreal 2013 le diable est dans les détails
 
Cours Devops Sparks.pptx.pdf
Cours Devops Sparks.pptx.pdfCours Devops Sparks.pptx.pdf
Cours Devops Sparks.pptx.pdf
 

Mais de Chipway

Drupal 8-decouverte-modules-du-coeur
Drupal 8-decouverte-modules-du-coeurDrupal 8-decouverte-modules-du-coeur
Drupal 8-decouverte-modules-du-coeurChipway
 
Wordcamp paris-2016 : Comment fonctionnent le projet et la communauté open so...
Wordcamp paris-2016 : Comment fonctionnent le projet et la communauté open so...Wordcamp paris-2016 : Comment fonctionnent le projet et la communauté open so...
Wordcamp paris-2016 : Comment fonctionnent le projet et la communauté open so...Chipway
 
SymfonyCon Paris 2015 - Lightning-talk Drupal 8 is available
SymfonyCon Paris 2015 - Lightning-talk Drupal 8 is availableSymfonyCon Paris 2015 - Lightning-talk Drupal 8 is available
SymfonyCon Paris 2015 - Lightning-talk Drupal 8 is availableChipway
 
ForumPHP-2015-drupal-exemple-reussite-projet-communautaire-php_2015-11-24_slides
ForumPHP-2015-drupal-exemple-reussite-projet-communautaire-php_2015-11-24_slidesForumPHP-2015-drupal-exemple-reussite-projet-communautaire-php_2015-11-24_slides
ForumPHP-2015-drupal-exemple-reussite-projet-communautaire-php_2015-11-24_slidesChipway
 
Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...
Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...
Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...Chipway
 
Conference drupal8-jres2013
Conference drupal8-jres2013Conference drupal8-jres2013
Conference drupal8-jres2013Chipway
 
Conference drupal-8-drupagora2013
Conference drupal-8-drupagora2013Conference drupal-8-drupagora2013
Conference drupal-8-drupagora2013Chipway
 
Pourquoi et comment contribuer à Drupal 8
Pourquoi et comment contribuer à Drupal 8Pourquoi et comment contribuer à Drupal 8
Pourquoi et comment contribuer à Drupal 8Chipway
 
Presentation Drupal 8 au DrupalCamp Paris 2013
Presentation Drupal 8 au DrupalCamp Paris 2013Presentation Drupal 8 au DrupalCamp Paris 2013
Presentation Drupal 8 au DrupalCamp Paris 2013Chipway
 
Conference drupagora-drupal-8 2012-11-09
Conference drupagora-drupal-8 2012-11-09Conference drupagora-drupal-8 2012-11-09
Conference drupagora-drupal-8 2012-11-09Chipway
 
Réunion drupal-lyon-2012-10-11
Réunion drupal-lyon-2012-10-11Réunion drupal-lyon-2012-10-11
Réunion drupal-lyon-2012-10-11Chipway
 
Réunion drupal-lyon-2012-09-25 avec-programme
Réunion drupal-lyon-2012-09-25 avec-programmeRéunion drupal-lyon-2012-09-25 avec-programme
Réunion drupal-lyon-2012-09-25 avec-programmeChipway
 
Réunion drupal-lyon-2012-04-26
Réunion drupal-lyon-2012-04-26Réunion drupal-lyon-2012-04-26
Réunion drupal-lyon-2012-04-26Chipway
 
Conference git-drupal-lyon-2012-03-22
Conference git-drupal-lyon-2012-03-22Conference git-drupal-lyon-2012-03-22
Conference git-drupal-lyon-2012-03-22Chipway
 
Réunion drupal-lyon-2012-03-22
Réunion drupal-lyon-2012-03-22Réunion drupal-lyon-2012-03-22
Réunion drupal-lyon-2012-03-22Chipway
 
Drupal pour-utilisateurs-editeurs-redacteurs-dc-toulouse-2011 slideshare
Drupal pour-utilisateurs-editeurs-redacteurs-dc-toulouse-2011 slideshareDrupal pour-utilisateurs-editeurs-redacteurs-dc-toulouse-2011 slideshare
Drupal pour-utilisateurs-editeurs-redacteurs-dc-toulouse-2011 slideshareChipway
 
Drupal en-do-majeur-conférence-jdll-lyon-2011-slideshare
Drupal en-do-majeur-conférence-jdll-lyon-2011-slideshareDrupal en-do-majeur-conférence-jdll-lyon-2011-slideshare
Drupal en-do-majeur-conférence-jdll-lyon-2011-slideshareChipway
 

Mais de Chipway (17)

Drupal 8-decouverte-modules-du-coeur
Drupal 8-decouverte-modules-du-coeurDrupal 8-decouverte-modules-du-coeur
Drupal 8-decouverte-modules-du-coeur
 
Wordcamp paris-2016 : Comment fonctionnent le projet et la communauté open so...
Wordcamp paris-2016 : Comment fonctionnent le projet et la communauté open so...Wordcamp paris-2016 : Comment fonctionnent le projet et la communauté open so...
Wordcamp paris-2016 : Comment fonctionnent le projet et la communauté open so...
 
SymfonyCon Paris 2015 - Lightning-talk Drupal 8 is available
SymfonyCon Paris 2015 - Lightning-talk Drupal 8 is availableSymfonyCon Paris 2015 - Lightning-talk Drupal 8 is available
SymfonyCon Paris 2015 - Lightning-talk Drupal 8 is available
 
ForumPHP-2015-drupal-exemple-reussite-projet-communautaire-php_2015-11-24_slides
ForumPHP-2015-drupal-exemple-reussite-projet-communautaire-php_2015-11-24_slidesForumPHP-2015-drupal-exemple-reussite-projet-communautaire-php_2015-11-24_slides
ForumPHP-2015-drupal-exemple-reussite-projet-communautaire-php_2015-11-24_slides
 
Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...
Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...
Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...
 
Conference drupal8-jres2013
Conference drupal8-jres2013Conference drupal8-jres2013
Conference drupal8-jres2013
 
Conference drupal-8-drupagora2013
Conference drupal-8-drupagora2013Conference drupal-8-drupagora2013
Conference drupal-8-drupagora2013
 
Pourquoi et comment contribuer à Drupal 8
Pourquoi et comment contribuer à Drupal 8Pourquoi et comment contribuer à Drupal 8
Pourquoi et comment contribuer à Drupal 8
 
Presentation Drupal 8 au DrupalCamp Paris 2013
Presentation Drupal 8 au DrupalCamp Paris 2013Presentation Drupal 8 au DrupalCamp Paris 2013
Presentation Drupal 8 au DrupalCamp Paris 2013
 
Conference drupagora-drupal-8 2012-11-09
Conference drupagora-drupal-8 2012-11-09Conference drupagora-drupal-8 2012-11-09
Conference drupagora-drupal-8 2012-11-09
 
Réunion drupal-lyon-2012-10-11
Réunion drupal-lyon-2012-10-11Réunion drupal-lyon-2012-10-11
Réunion drupal-lyon-2012-10-11
 
Réunion drupal-lyon-2012-09-25 avec-programme
Réunion drupal-lyon-2012-09-25 avec-programmeRéunion drupal-lyon-2012-09-25 avec-programme
Réunion drupal-lyon-2012-09-25 avec-programme
 
Réunion drupal-lyon-2012-04-26
Réunion drupal-lyon-2012-04-26Réunion drupal-lyon-2012-04-26
Réunion drupal-lyon-2012-04-26
 
Conference git-drupal-lyon-2012-03-22
Conference git-drupal-lyon-2012-03-22Conference git-drupal-lyon-2012-03-22
Conference git-drupal-lyon-2012-03-22
 
Réunion drupal-lyon-2012-03-22
Réunion drupal-lyon-2012-03-22Réunion drupal-lyon-2012-03-22
Réunion drupal-lyon-2012-03-22
 
Drupal pour-utilisateurs-editeurs-redacteurs-dc-toulouse-2011 slideshare
Drupal pour-utilisateurs-editeurs-redacteurs-dc-toulouse-2011 slideshareDrupal pour-utilisateurs-editeurs-redacteurs-dc-toulouse-2011 slideshare
Drupal pour-utilisateurs-editeurs-redacteurs-dc-toulouse-2011 slideshare
 
Drupal en-do-majeur-conférence-jdll-lyon-2011-slideshare
Drupal en-do-majeur-conférence-jdll-lyon-2011-slideshareDrupal en-do-majeur-conférence-jdll-lyon-2011-slideshare
Drupal en-do-majeur-conférence-jdll-lyon-2011-slideshare
 

Bonnes pratiques-drupal-dans-cahier-des-charges conference-dc-lyon-2012

  • 1. Bonnes pratiques Drupal dans le Cahier des Charges Léon CROS - Chipway
  • 2. Chipway : Spécialiste • Formations Drupal 6 et 7 – Webmaster 1 : Prise en main et création d'un site – Webmaster 2 : Perfectionnement – Webmaster 3 : Administration avancée – Développeur 1 : Field, CCK + Views – Développeur 2 : Programmation – Designer 1 : Créer un thème Drupal – Commerce 1 : création d'une boutique • Accompagnement, Assistance à MOA • Développement, Conseil, Séminaires
  • 3. Bonnes pratiques Drupal / CdC • Pourquoi cette session ? • Objectifs • Guide de Bonnes Pratiques ? • BP Drupal dans CdC ou Guide BPD ? • Quelles BP mentionner ? • Adapter les BP • Impact sur les relations client/fournisseur • Questions/Réponses Léon Cros - Chipway Drupalcamp Lyon 2012 3
  • 4. 35 minutes ? Sacré challenge ! GO ! Léon Cros - Chipway Drupalcamp Lyon 2012 4
  • 5. Pourquoi cette session ?  Promesse Drupal  Résultats obtenus  Cherchez l'erreur Léon Cros - Chipway Drupalcamp Lyon 2012 5
  • 6. La « promesse » Drupal Pérennité de l'investissement • Polyvalence • Evolutivité • Facilité de maintenance • Performance • Montée en charge • Rapidité de mise en oeuvre • Multilingue et multisite • Solution industrielle • Sécurité Léon Cros - Chipway Drupalcamp Lyon 2012 6
  • 7. Résultats parfois obtenus • « Le premier qui met à jour ... » • Core hacké pour mail sur inscription • 9 pages de codes dans un block • Hack first then talk • Pas le temps • Trop cher / concurrent incompétent • Hacké à mort • Développeur aux abonnés absents • Drupal c'est de la « M. » • ... Léon Cros - Chipway Drupalcamp Lyon 2012 7
  • 8. Cherchez le coupable !  Client ?  Fournisseur ?  Développeur ?  Budget ?  Délai ? Léon Cros - Chipway Drupalcamp Lyon 2012 8
  • 9. Cherchez le coupable ! Bouc émissaire ? Léon Cros - Chipway Drupalcamp Lyon 2012 9
  • 10. Objectifs généraux Léon Cros - Chipway Drupalcamp Lyon 2012 10
  • 11. Objectifs généraux  Qualité  Pérennité investissement  Durée de vie  Coûts Léon Cros - Chipway Drupalcamp Lyon 2012 11
  • 12. Bonnes Pratiques : où ? • Cahier des Charges • CCTP • Spécifications • ... Guide de Bonnes Pratiques Projets Drupal De VOTRE entreprise Léon Cros - Chipway Drupalcamp Lyon 2012 12
  • 13. Bonnes Pratiques : Réticences • On connait • C'est sur drupal.org • On a un expert qui peut intervenir • Pas la peine de rédiger • Pas besoin qu'on me dise :-(( • Concerne que codage de modules • Augmente le coût pour rien • J'adore Hacker • Pas le temps. On verra après • Bâtons dans les roues Léon Cros - Chipway Drupalcamp Lyon 2012 13
  • 14. BP concerne quoi ? • Codage Drupal • Construction du site • Theming • Maintenance • Evolutions • Ergonomie • SEO • Déploiement • Mises à jour, montées de version Léon Cros - Chipway Drupalcamp Lyon 2012 14
  • 15. BP concerne qui ? • Tous les intervenants – externes – Internes Léon Cros - Chipway Drupalcamp Lyon 2012 15
  • 16. BP : Quels projets ? • Tous les projets Léon Cros - Chipway Drupalcamp Lyon 2012 16
  • 17. Que mettre dedans ? • Rappel des objectifs de nos BP • Versions concernées • Niveau d'exigence par BP • Points de vue • Bonnes Pratiques Drupal Léon Cros - Chipway Drupalcamp Lyon 2012 17
  • 18. Objectifs des Bonnes Pratiques Faciliter • maintenance et évolutions • mises à jour Core + contributifs • déploiements • réutilisation du code • contribution • optimisation et performances • design/redesign • accessibilité Léon Cros - Chipway Drupalcamp Lyon 2012 18
  • 19. Drupal rocks Faciliter • maintenance et évolutions • mises à jour Core + contributifs • déploiements • réutilisation du code • contribution • optimisation et performances • design/redesign • accessibilité Léon Cros - Chipway Drupalcamp Lyon 2012 19
  • 20. Versions concernées • Concerne Toutes vos versions Drupal – D5 ? – D6 – D7 • Spécificités selon version • Mettre à jour pour D8 Léon Cros - Chipway Drupalcamp Lyon 2012 20
  • 21. Exigences du client / chaque BP Fondements • Politique technique • Contraintes – International – Industrialisation Contexte et Objectifs Léon Cros - Chipway Drupalcamp Lyon 2012 21
  • 22. Niveau d'exigence / chaque BP Exigences • Indispensable • Obligatoire négociable • Bonus Léon Cros - Chipway Drupalcamp Lyon 2012 22
  • 23. Points de vue • Conception générale • Organisation des dossiers • Programmation ; Codage des modules • Sécurité du code • Optimisation • Déploiement • Accessibilité • Theming • Documentation Léon Cros - Chipway Drupalcamp Lyon 2012 23
  • 24. Quelques BP Indispensables • Ne pas Hacker Drupal Core • Respecter les règles de codage • Site traduisible • Theme() • Nommage des fonctions, hooks, variables • Cohérence BD / schema des tables • Nettoyer les données saisies • Accès BD via API Drupal Léon Cros - Chipway Drupalcamp Lyon 2012 24
  • 25. Obligatoires négociables, Ex ; • Utiliser des modules existants • Modules GLUE • Ne pas hacker modules/themes contribs • Suivi des patches dans doc • Contribuer les patches • Fork si importantes modifs • Sites/all/modules & custom • Sites/all/libraries • Taille des fonctions • Décomposition des traitements Léon Cros - Chipway Drupalcamp Lyon 2012 25
  • 26. Exemples de BP Bonus • Limiter le nombre de modules • Expliquer – organisation des données – organisation des vues/affichages • Fichiers des chaînes à traduire dispos • Contribuer modules non stratégiques Léon Cros - Chipway Drupalcamp Lyon 2012 26
  • 27. Détail d'une Bonne Pratique • Codage • Indispensable • Chaque module doit respecter les règles de codage Drupal et passer sans erreur même mineure la revue par « Coder Review » • Référence : http://drupal.org/coding-standards Léon Cros - Chipway Drupalcamp Lyon 2012 27
  • 28. Détail d'une Bonne Pratique • Theming • Indispensable • Chaque theme doit respecter les règles de codage Drupal en particulier des CSS et javascript • Référence : http://drupal.org/coding-standards Léon Cros - Chipway Drupalcamp Lyon 2012 28
  • 29. Détail d'une Bonne Pratique • Codage • Obligatoire négociable • Utiliser autant que possible les fonctions de themes existantes • Référence : http://api.drupal.org/api/drupal/modules-- system--theme.api.php/group/themeable/7 Léon Cros - Chipway Drupalcamp Lyon 2012 29
  • 30. Avantages Client • Sécurise/pérennise son investissement • Allège-complète CdC/CCTP • Facilite les comparaisons • rend les offres comparables • Elargit palette de prestataires possibles • Cadre/simplifie les recettes • Améliore Qualité obtenue • Facilite dialogues internes/externes Léon Cros - Chipway Drupalcamp Lyon 2012 30
  • 31. Avantages Fournisseur • En parler montre son professionnalisme • Valorise ses compétences • Concurrence plus claire • Aide à monter en compétences • Facilite dialogues internes/externes • Facilite intégration des nouveaux Léon Cros - Chipway Drupalcamp Lyon 2012 31
  • 32. Conclusion Le Guide de Bonnes Pratiques Drupal • Référence • Propre à l'entreprise/groupe... • Extensible • Déclinable selon besoins Léon Cros - Chipway Drupalcamp Lyon 2012 32
  • 33. Conclusion Le Guide de Bonnes Pratiques Drupal • Facilite les dialogues • Augmente la confiance • Aide à monter en compétences • Nouveaux développeurs • Développeurs exprérimentés • Pérennise la relation client - fournisseur Léon Cros - Chipway Drupalcamp Lyon 2012 33
  • 34. Annexes Compléments Léon Cros - Chipway Drupalcamp Lyon 2012 34
  • 35. Autres BP Indispensables • Aucun traitement dans modèles du thème • Commentaires Doxygen • Nettoyer les données saisies • Formulaires créés via Form API • Pas de PHP 4 Léon Cros - Chipway Drupalcamp Lyon 2012 35
  • 36. Obligatoires négociables, Ex ; • hook_menu en tête • Fonctions _function() • Fonctions de themes existantes • Modules paramétrables • Select via db_rewrite_sql() • Désinstaller modules inutilisés • Fonctions de calculs dans .inc • Activer caches, optimisation CSS … avant Prod Léon Cros - Chipway Drupalcamp Lyon 2012 36
  • 37. Obligatoires négociables, Ex ; • Mises en forme par feuilles CSS • Imbrication des templates • Theme sans table • Id et classes habituelles de base • Pas de Flash en frontal • Commentaires étendus des fonctions • Principes de nommage / projet-client • Uniquement le nécessaire sur la Prod • Contenu attendu de la Doc du projet Léon Cros - Chipway Drupalcamp Lyon 2012 37
  • 38. Obligatoires négociables, Ex ; • hook_help • README.txt • Blocs PHP => Appel fonction (pas inline) • Outils de déploiement • Tests codés pour modules custom • Theme accessible • Champs pour accessiblité • Facile à indexer et SEO • Intégration continue Léon Cros - Chipway Drupalcamp Lyon 2012 38
  • 39. Merci + Questions ? @chipway Lcros@chipway.com