Notre équipe se tient à votre disposition pour vous accompagner dans la mise en place de votre application web sur mesure.
Nos équipes maîtrisent toute la chaîne du développement : du backend au frontend, de l'hébergement à l'automatisation du déploiement et du build de l'application. Nos UI / UX apporteront leur savoir faire sur l'ergonomie de votre application métier. Nos chefs de projet vous accompagneront tout au long du projet. Les développeurs frontend s'occuperont d'intégrer les interfaces riches en collaboration avec les équipes "Backend".
Nous sommes en capacité d'accepter des projets complexes, à forts enjeux stratégiques et économiques, tout en respectant les délais grâce aux méthodes agiles.
Scrum est un schéma d’organisation de développement de produits complexes. Il est défini par ses créateurs comme un « cadre de travail holistique itératif qui se concentre sur les buts communs en livrant de manière productive et créative des produits de la plus grande valeur possible ».
Nos experts développent de façon incrémentale et itérative pour vous permettre de tester et valider à chaque étape. Vous avez ainsi une parfaite visibilité sur l'avancement du projet et vous pouvez faire les adaptations nécessaires pour répondre au mieux aux besoins de vos utilisateurs.
Ci-dessous figurent les différentes cérémonies qui seront mises en place lors de chaque Sprint :
Sprint Planning : le premier jour du sprint
Timebox : 1h à 1H30 par sprint en fonction de la connaissance du produit
Daily Scrum
Timebox : 15 min
Seule la Development Team y participe.
Inspection de l'équipe : ce qui a été fait la veille qui a permis d'atteindre l'objectif du sprint, les points bloquants qui pourraient m'empêcher d'atteindre l'objectif de sprint, et ce que je vais faire aujourd'hui pour atteindre l'objectif.
Update du tableau et des Radiateurs (Burndown Chat, Confidence Chart)
Refinement
Timebox : 1h par semaine
La Product Backlog Refinement permet d’affiner le contenu du Product Backlog.
Lors de la Product Backlog Refinement, le Product Owner va proposer des user-stories aux développeurs qui respecteront la définition du « Ready » préalablement défini par l’ensemble de l’équipe.
Analyse de la story / S'assurer de la bonne compréhension de la story.
Estimer la demande (planning poker). Nous utiliserons à cet effet https://www.planitpoker.com.
La Review
Timebox 1H pour un sprint de 2 semaines.
Se tiendra le vendredi matin à la fin du sprint.
L'équipe de développement présente ce qui a été fait pendant le sprint (Dans le respect du Définition of Done - DOD)
Collecte des retours client, échange sur l'incrément démontré
Inspection de l'incrément pour identifier ce qui pourrait améliorer la valeur du produit.
La retrospective
Timebox : 1H pour un sprint de 2 semaines.
Réservé à la Scrum Team
Une opportunité pour l'équipe de faire une introspection sur le sprint (ce qui s'est bien passé, ce qui s'est mal passé, comment l'améliorer)
Nous utiliserons le format RETROMAT (https://retromat.org/).
Exemples : SAD MAD GLAD, Perfection Game, Speedboat / Sailboat
A l'issue de la retro : vote de l'équipe qui doit aboutir à l'amélioration du DOD (Definition of Done) et la mise en place d'un ticket d'action à mettre au prochain Sprint pour améliorer la qualité du produit
Les outils de suivi et reporting :
- Slack
- Breeze
- JIRA
- Gitlab
Pour le développement local sur la machine d’un développeur. C’est l’environnement le plus simple, par exemple, on n’y active généralement pas de cache, pas d’accès un service d’API externe, etc.. et en mode “DEBUG” activé.
Un environnement spécial pour lancer les tâches qualité par exemple lorsque le déploiement est automatisé (via un système deCI/CD) pour bloquer une release qui inclurait des régressions. Il est aussi souvent inclus dans l’environnement de développement pour qu’un développeur puisse contrôler son travail localement avant de livrer
Qui intervient entre le développement local et la production pour présenter des preuves de concept et tester en interne des évolutions.
Il sert à pratiquer du test fonctionnel par une équipe pouvant représenter un ou plusieurs utilisateurs finaux. Son plus grand intérêt est de temporiser l’état de la pré-production qui peut valider des concepts en interne qui ne sont pas finalement souhaitables, il sert donc de tampon. C’est utile pour une équipe externe de validation qui suit son propre cahier des charges sinon la pré-production sera suffisante.
C’est la finalité pour publier un projet. Développement et Production sont les environnements naturels d’un projet et Pré-production est un atout pour éviter les régressions et les pertes de données en production.
Python a défini la PEP8 comme norme de référence, elle décrit les règles de base pour produire un code lisible et accessible sans brider l’ingéniosité du développeur. Lorsque la PEP8 a été absorbée par un développeur, il pourra plus aisément se confronter à l’usage de Flake8 qui est un outil implémentant l’intégralité de la norme pour sonder son code et lui retourner tous les manquements aux règles qu’il devra corriger car Flake ne modifie jamais le code lui-même.
Lorsqu’un outil comme Flake a été intégré aux tâches qualité, les règles de la norme s’imposent assez rapidement et avec un peu d’expérience, un développeur écrira naturellement la quasi totalité de son code en les respectant.
Le principe des tests unitaires est de valider du code par du code dans une procédure automatisée qu’il suffit d’éxecuter par une commande unique pour effectuer un contrôle qualité d’une plateforme.
Tout projet nécessite d’être testé et le test humain est le plus naturel mais aussi le moins sûr car plus un projet est conséquent plus il nécessite de tester des scénarios différents pour chaque fonctionnalité et comportement. Les tests humains mobilisent du temps et des moyens sans garantir pour autant une qualité fiable.
C’est pourquoi il est indispensable qu’un projet ait une couverture de tests automatisés, pour le backend via des tests unitaires et pour le frontend via des tests fonctionnels.
Pytest est l’outil de référence pour exécuter des tests unitaires et les rédiger naturellement par une approche de programmation fonctionnelle.
Forte d'une expérience éprouvée sur Django Python, Emencia est à même de vous accompagner et de vous conseiller pour la migration de vos projets Django.
Emencia, expert Python depuis 2002, a réalisé plus de 350 projets Django. Nous accompagnons nos clients de la conception à la mise en production.