Trop gros pour des mercenaires, trop petit pour une armée: Comment s'attaquer un à projet Drupal...

Post on 11-Apr-2017

222 views 0 download

Transcript of Trop gros pour des mercenaires, trop petit pour une armée: Comment s'attaquer un à projet Drupal...

Trop gros pour des mercenaires,trop petit pour une armée:

Comment s'attaquer un à projet Drupal

de moyenne envergure

Drupal North Montreal 2016 – Symetris.ca

Libérez votre potentiel webavec Symetris

***• Fondé en 2004 – déjà plus de 12 ans!• 14 spécialistes web• Maîtrise de plateformes CMS open-source

Notre équipe

Notre équipe• 14 spécialistes web• 3 chargés de compte• 3 chargés de projets• 8 développeurs (2 certifiés Acquia)

Pascal RiouxDéveloppeur @ Symetris

Hubert CarignanChargé de projets @ Symetris

À PROPOS DE NOUS

ORDRE DU JOUR1. Objectifs de la conférence2. Mesurer l’envergure d’un projet3. Impacts d’une envergure mitoyenne4. Recommandations et bonnes pratiques5. Questions

1. OBJECTIFS DE LA CONFÉRENCE

2. MESURER L’ENVERGURE D’UN PROJET

Mesurer l’envergure d’un projet1. Critères:

• Nombre d’heures: 500 à 1500 heures• Durée: 6 à 12 mois• Criticalness client: Site dont le

fonctionnement est critique aux opérations du client

• Complexité: 3 à 4• Taille de l’équipe: 2 à 4 développeurs

Mesurer l’envergure d’un projetComment on se sent?

• Passer d’un petit à un moyen projet• Passer d’un grand à un moyen projet

3. IMPACTS D’UNE ENVERGURE MITOYENNE

Impacts d’une envergure mitoyenneImpacts sur le développement• Collaboration entre développeurs• Durée du mandat• Contrôle qualité

Collaboration entre développeurs• Plus grande responsabilité pour

chaque développeur• Besoin de standardiser les méthodes de

travail au sein de l’équipe de développement

• L’incorporation d’un système de gestion de version devient primordial

Durée du mandat• Augmentation considérable du nombre

de déploiements• La dette technique entre en ligne

de compte

Impact de la dette technique(Absolument pas scientifique)

Contrôle qualité• Plus complexe = Plus de choses à tester• Plus d’intervenants sur le contrôle qualité• Dépendance des fonctionnalités

entre elles

Impacts d’une envergure mitoyenneImpacts sur la gestion de projet

• Nombre d’intervenants• Importance de la maîtrise de l’application• Gestion en plusieurs phases• Gestion des dépassements

Nombre d’intervenants• Contact principal n’est peut-être pas le

décideur• Structure hiérarchique plus complexe • Inclusion d’un consultant externe• Gestion du changement à considérer

Importance de la maîtrise de l’application

• Plus complexe = Plus de demandes pouvant être liées à une mauvaise compréhension

• Importance de la transmission de la maîtrise au client

• Contact principal n’est peut-être pas l’utilisateur final

Gestion en plusieurs phases • Plusieurs mises en ligne• Importance de la confiance envers les

livrables• Protection des données déployées• Gestion de la garantie et accompagnement

de la phase 1 pendant le développement de la phase 2

Gestion des dépassements• Plus haute complexité peut impacter la

transmission et la compréhensiondes besoins

• Erreur dans les estimés et changementsde scope peuvent mener à une pertede contrôle

4. RECOMMANDATIONS ET BONNES PRATIQUES

Recommandations et bonnes pratiqueRecommendation DEV• Incorporer un système de déploiement

automatisé• Définir un plan de test clair• Instaurer un système de code review au sein

de l’équipe

Incorporer un système de déploiement automatisé

Avantages Inconvénients

● Plus besoin de faire de déploiement à la mitaine

● Risque d’erreur diminué

● Diminue le temps de déploiement

● Nécessite une formation de l’équipe

● Augmente le temps de préparation au projet

Incorporer un système de déploiement automatisé

Définir un plan de test clair

Avantages Inconvénients

● Diminution du nombre de retours client

● Assure qu’une fonctionnalité n’en brise pas une autre

● Meilleure confiance en notre produit

● Nécessite une rigueur de la part de toute l’équipe

● Augmente le temps de développement

Instaurer un système de code review

Avantages Inconvénients

● Permet de standardiser les méthodes de développement

● Augmente les compétences des développeurs moins expérimentés

● Augmente la qualité du projet

● Représente du temps supplémentaire à investir pour l’entreprise

Recommandations et bonnes pratiqueRecommendations PM• Identifier la structure décisionnelle et

impliquer les décideurs• Instaurer et mettre à profit des rencontres

hebdomadaires• Assurer la maîtrise de l’application par le

gestionnaire de projet• Gérer rigoureusement les dépassements

Identifier la structure décisionnelle et impliquer les décideurs

Avantages Inconvénients

● Évite que des décisions prises soient révoquées dans le futur

● Facilite la transmission des messages (pas d’intermédiaire)

● Facilite la création d’un climat de collaboration

● Gestion de l’horaire plus complexe

Instaurer et mettre à profit des rencontres hebdomadaires

Avantages Inconvénients

● Facilite le suivi des KPI

● Facilite le suivi des tâches

● Contribue à la transmission fluide des informations

● Soulève les enjeux rapidement

● Faire attention au surenchère de rencontres

● Faire attention d’impliquer seulement les personnes pertinentes

Instaurer et mettre à profit des rencontres hebdomadaires

Quelques outils

● KPI○ % Complété versus % des heures○ Taux de bonheur du client

● Slack: https://symetris.slack.com/messages/drupal-north/● Suivi de progression des tâches

Instaurer et mettre à profit des rencontres hebdomadaires

Suivi de progression des tâches

0%10 - 50%60%70%80%90%100%

NewIn ProgressQA-QCQA-QCComm. ClientTo deployClosed / Celebrate

Le développement n'a pas débutéDéveloppement en progressionLe développeur doit faire son QC / QALe chargé de projet doit faire son QC / QALe client doit faire son QC / QARetours client faits et prêt à déployerYay!!! (High five!)

Assurer la maîtrise de l’application par le gestionnaire de projet

Avantages Inconvénients

● Filtre à code 18

● Aide à l’accompagnement et à la gestion du changement

● Réduit les retours clients

● Nécessite une connaissance technique plus grande de la part du gestionnaire

● Demande du temps de gestion et de formation supplémentaire

Instaurer et mettre à profit des rencontres hebdomadaires

Quelques outils

● Participer à l’analyse de départ● Réviser la documentation et faire les présentations en personne

avec le client● Faire le contrôle qualité avec le client● Guide utilisateur● Offrir une formation directement aux utilisateurs finaux

Gérer rigoureusement les dépassements

Avantages Inconvénients

● Aide au respect du budget

● Aide au respect de l’échéancier

● Offre plus de contrôle sur les demandes du client

● Peut créer des frustations chez le client

● Source de stress sur l’équipe de production

Instaurer et mettre à profit des rencontres hebdomadaires

Quelques outils

● Suivi hebdomadaire des heures● Classement des nouvelles demandes avec le Lead

développeur● Banque d’heures vendues avec le projet

En résumé

Recommandations Dev Recommandations PM● Incorporer un système de

déploiement automatisé● Définir un plan de test clair● Instaurer un système de code

review au sein de l’équipe

● Identifier la structure décisionnelle et impliquer les décideurs

● Instaurer et mettre à profit des rencontres hebdomadaires

● Assurer la maîtrise de l’application par le gestionnaire de projet

● Gérer rigoureusement les dépassements

Merci !

Des questions?

Contactez-nous :

pascal@symetris.ca hubert@symetris.ca

info@symetris.ca

Présentation PPT bientôt disponible sur Slideshare