Russian SCRUM. Senseless and merciless

Good time of the day, dear Habr!

I am a ā€œold schoolā€ programmer with more than 20 years of experience. He participated in the development of many projects, most of which are quite famous and successful. In some projects, he held managerial positions and achieved a good salary level. But we didnā€™t gather here in order to measure our experience, experience, salary, etc., right? Let's talk better about how startups use modern methods of managing software development. And what comes of it.

Disclaimer This publication only reflects the authorā€™s personal opinion on the development and application of modern software development management methods and can only be considered as an entertaining reading, illustrating those moments that you may suddenly encounter in a programmerā€™s daily work.

Disclaimer-2. The use of emoticons is not recommended in publications on HabrƩ. But they are implied.

So, we will talk about the most ordinary startup.

Once upon a time there was an ordinary production company in which a well-established production process has been operating for a long time and successfully. All stages of the mentioned production process are displayed in the enterprise information system. Raw materials and components arrived at the warehouse - a line appeared about this event in the ERP database ( Enterprise Resource Planning, enterprise resource planning ). The manufactured goods were shipped to the buyer - a couple more lines were added to the database. Routine, commonplace information technology in the service of a real business, nothing interesting.

But time does not stand still, information technologies are developing, banal ERP does not look so ā€œfashionableā€ (even, frankly speaking, it looks ā€œoutdatedā€ in some eyes) and a group of initiative managers had the idea to ā€œtieā€ the blockchain to the production process. No not like this. BLOCKCHAIN. Modern, Mighty, Effective and Incorruptible (all words with a capital letter).

A development team has gathered - the most common, in the most classical composition - Front-end developer, Back-end developer, Database developer. 3 developers and Project manager. Although no, there is actually no Project manager ( - Do you see the gopher? - No ... - And I donā€™t see. And he is. ), Although this author runs a little ahead.

There was no blockchain specialist in the young team, none of the developers, including the absent PM, had never dealt with the blockchain - therefore, the author of this publication, who has experience in developing several blockchain projects, was hired as a Blockchain developer.

Since the information blockchain technology planned for use at the moment is the most up-to-date, the most up-to-date software development management method was chosen - namely, SCRUM.

The author is sure that the majority of Habrā€™s readers know the basic principles of this method, but since the author himself in practice encountered this method only in this project, he will allow himself to very easily state the main points.

  1. (Project backlog) Ā« Ā» (user story) ā€” , . Ā«, , ...Ā» ( ā€” . ).
  2. . , Ā«Ā» Ā« Ā» .
  3. Ā«Ā», 1 . ( , ())
  4. Ā«Ā» Ā« Ā» ( , . )

So, here comes the answer to the question ā€œwhy the development team didnā€™t suddenly have a PMā€ - itā€™s very simple - this position is not provided for by SCRUMā€™s ideology, just like the position of Software Architect is not provided ( hello, Matrix! ) And post of Technical Writer ( down with the bureaucracy! ). The team provides for the position of the SCRUM Master, which only holds meetings, formulates and records the results of the discussion. Free development of free people developers .

And let the fun begin !

Let me remind you that the goal of the startup under discussion is to develop a "system in which the production and business processes of the enterprise are displayed on the blockchain" (instead of an outdated database).

A classic, outdated and uninteresting engineering method of development would involve the consistent implementation of such steps.

  1. Description of entities (raw materials-components-production processes-suppliers-buyers, etc.) with which the developed information system will operate.
  2. Establishing relationships between entities (the supplier supplies raw materials, the buyer buys the goods, etc.).
  3. System architecture development.
  4. Description of system components.
  5. Development of terms of reference for each component of the system.
  6. Implementation.
  7. Debugging, optimization.
  8. System implementation.

But all this is very long! The customer will not be able to see the result within ONE week!

So, we use the modern SCRUM instead of the outdated development method.

  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 . .

As a result, after a week, the customer will see a site on which 1 button. When a button is clicked, a transaction will be sent to the blockchain - ā€œa production process event has been createdā€. There will be no feedback yet. Yes, this is a full description of the successfully resolved User story "I, as a user, want to get a system in which the production and business processes of the enterprise are displayed on the blockchain." No, the author is not exaggerating.

The cost of developing such a solution is 1/4 of the monthly salary of 4 developers and 1 Scrum master (at prices in April 2020 - about $ 6,000).

Here he is, the Russian SCRUM. Senseless and merciless.

All Articles