SCRUM russe. Insensé et impitoyable

Bon moment de la journée, cher Habr!

Je suis programmeur «old school» avec plus de 20 ans d'expérience. Il a participé au développement de nombreux projets, dont la plupart sont assez connus et couronnés de succès. Dans certains projets, il a occupé des postes de direction et a atteint un bon niveau de salaire. Mais nous ne nous sommes pas réunis ici pour mesurer notre expérience, notre expérience, notre salaire, etc., n'est-ce pas? Parlons mieux de la façon dont les startups utilisent des méthodes modernes de gestion du développement logiciel. Et ce qui en résulte.

Avertissement Cette publication ne reflète que l'opinion personnelle de l'auteur sur le développement et l'application de méthodes modernes de gestion de développement logiciel et ne peut être considérée que comme une lecture divertissante, illustrant les moments que vous pouvez rencontrer soudainement dans le travail quotidien d'un programmeur.

Clause de non-responsabilité-2. L'utilisation d'émoticônes n'est pas recommandée dans les publications sur Habré. Mais ils sont implicites.

Donc, nous parlerons du démarrage le plus ordinaire.

Il était une fois une société de production ordinaire dans laquelle un processus de production bien établi fonctionnait depuis longtemps et avec succès. Toutes les étapes du processus de production mentionné sont affichées dans le système d'information de l'entreprise. Les matières premières et les composants sont arrivés à l'entrepôt - une ligne est apparue à propos de cet événement dans la base de données ERP ( Enterprise Resource Planning, Enterprise Resource Planning ). Les produits manufacturés ont été expédiés à l'acheteur - quelques lignes supplémentaires ont été ajoutées à la base de données. Des technologies de l'information courantes et banales au service d'une vraie entreprise, rien d'intéressant.

Mais le temps ne s'arrête pas, les technologies de l'information se développent, l'ERP banal n'a pas l'air si «à la mode» (même, à vrai dire, il a l'air «dépassé» à certains yeux) et un groupe de responsables d'initiative a eu l'idée de «lier» la blockchain au processus de production. Non pas comme ça. BLOCKCHAIN. Moderne, puissant, efficace et incorruptible (tous les mots avec une majuscule).

Une équipe de développement s'est réunie - la plus courante, dans la composition la plus classique - Développeur Front-end, Développeur Back-end, Développeur de base de données. 3 développeurs et chef de projet. Bien que non, il n'y a en fait pas de chef de projet ( - Voyez-vous le gopher? - Non ... - Et je ne vois pas. Et il l'est. ), Bien que cet auteur ait un peu d'avance.

Il n'y avait pas de spécialiste de la blockchain dans la jeune équipe, aucun des développeurs, y compris le PM manquant, n'avait jamais traité de la blockchain - par conséquent, l'auteur de cette publication, qui a de l'expérience dans le développement de plusieurs projets de blockchain, a été embauché en tant que développeur de blockchain.

Étant donné que la technologie de la chaîne de blocs d'information dont l'utilisation est actuellement prévue est la plus récente, la méthode de gestion du développement logiciel la plus récente a été choisie, à savoir SCRUM.

L’auteur est certain que la majorité des lecteurs de Habr connaissent les principes de base de cette méthode, mais comme l’auteur lui-même dans la pratique n’a rencontré cette méthode que dans ce projet, il se permettra d’énoncer très facilement les principaux points.

  1. (Project backlog) « » (user story) — , . «, , ...» ( — . ).
  2. . , «» « » .
  3. «», 1 . ( , ())
  4. «» « » ( , . )

Alors, voici la réponse à la question «pourquoi l'équipe de développement n'a pas soudainement eu un PM» - c'est très simple - ce poste n'est pas prévu par l'idéologie de SCRUM, tout comme le poste d'architecte logiciel ( bonjour, Matrix! ) Et poste de rédacteur technique ( avec la bureaucratie! ). L'équipe prévoit le poste de maître SCRUM, qui ne tient que des réunions, formule et enregistre les résultats de la discussion. Libre développement de libres personnes développeurs .

Et que le plaisir commence !

Permettez-moi de vous rappeler que l'objectif de la startup en discussion est de développer un "système dans lequel les processus de production et d'affaires de l'entreprise sont affichés sur la blockchain" (au lieu d'une base de données obsolète).

Une méthode de développement technique classique, obsolète et sans intérêt impliquerait la mise en œuvre cohérente de ces étapes.

  1. Description des entités (matières premières-composants-processus de production-fournisseurs-acheteurs, etc.) avec lesquelles le système d'information développé fonctionnera.
  2. Établir des relations entre les entités (le fournisseur fournit des matières premières, l'acheteur achète les marchandises, etc.).
  3. Développement d'architecture système.
  4. Description des composants du système.
  5. Élaboration de termes de référence pour chaque composant du système.
  6. La mise en oeuvre.
  7. Débogage, optimisation.
  8. Mise en place du système.

Mais tout cela est très long! Le client ne pourra pas voir le résultat dans une semaine!

Nous utilisons donc le SCRUM moderne au lieu de la méthode de développement obsolète.

  1. 1- — «, , , - » (… - ...).
  2. , 1 .
  3. ; -; ; ; - - .
  4. , .
  5. ( ). : 1, 2, 3, 5, 8, 13, 21. , 21 , 20. 21 () , 13 ( ), ? , SCRUM.
  6. , ? ! , 20 — 1 . — 5 8 .
  7. , .
  8. … — SCRUM- , 1 . .

En conséquence, après une semaine, le client verra un site sur lequel 1 bouton. Lorsqu'un bouton est cliqué, une transaction sera envoyée à la blockchain - «un événement de processus de production a été créé». Il n'y aura pas encore de commentaires. Oui, ceci est une description complète de l'histoire de l'utilisateur résolue avec succès "Je, en tant qu'utilisateur, souhaite obtenir un système dans lequel la production et les processus commerciaux de l'entreprise sont affichés sur la blockchain." Non, l'auteur n'exagère pas.

Le coût de développement d'une telle solution est de 1/4 du salaire mensuel de 4 développeurs et 1 Scrum master (à des prix en avril 2020 - environ 6000 $).

Le voici, le SCRUM russe. Insensé et impitoyable.

All Articles