📜 ⬆️ ⬇️

8 principles of development planning, simplifying life

Let's face it, it’s hard for a Russian person to plan. People in Russia are strong with improvisation and the ability to gather at a critical moment, producing amazing results. But life shows that a team of programmers on a similar ideology will not go far. Heroic efforts at one time will not be able to compensate pofigism to another.


What do zombie apocalypse and software development have in common? Simple rules help relive both.

The planning stage involves the conscious and purposeful activity of the team on the way to achieving the result. Defining tasks, breaking down into milestones, and anticipating deadlines is a necessary step towards the realization of our plans. Especially when it comes to Agile's flexible methodology, which we consider the best.

Development teams make such mistakes when planning software creation.
')

1. Programmers, not managers, should plan the dates.


It is a common mistake when a project manager, who does not properly understand the scope and specifics of the tasks, sets the project’s deadlines not in accordance with the team’s experience, capabilities and competencies, but based on the client’s own ideas, wishes or requests. Programmers in such groups do not envy. The discrepancy between the planned and real terms is 40-80%. The atmosphere in the team creates an oppressive and discouraging desire to work. Problems follow one after another, and direct developers are guilty.

2. It is necessary to determine in advance the approximate deadlines for the delivery of the entire project and the actual time for solving the problem


In no case it is impossible to release processes on drift. Ignoring the planning procedure leads to laxity, low motivation of developers in the periods preceding the deadline, the team does not understand what to do, where to go and what to get in the end. In associations, where the approximate deadlines for the delivery of the project are not determined, it is advisable to think that such chaos will not lead to good.

3. The project is divided into small stages with clear goals and a mandatory discussion of the results.


The application of the principle is necessary to counteract the Parkinson law, which determines that the total amount of work will always increase in order to fill all the time allocated for work. By following the advice, you can avoid the desire to work hard only shortly before the deadline for the project. The breakdown of the process of achieving the global goal for control periods with the need to perform specific tasks within a week or two will allow the team to use the work potential to the maximum. With this approach, a high level of motivation and efficiency of developers throughout the entire period of software development is maintained and the probability of achieving the desired goals increases.

4. Team members should interact as closely as possible.


First of all, the cohesion of the team is enhanced and the provision of mutual assistance is stimulated. With insufficient communication between members of the association, there is no “team spirit” that ensures harmonious work. Joint productive activity satisfies the social needs of a person in the sense of the importance of the work performed. Observance of the principle allows you to replace any member of the team without serious consequences, because the participants know who does what and how.

5. Include time reserve to cover force majeure, new customer requirements, vacations and holidays, for integration and testing


At the initial planning stage, it is impossible to foresee all situations. Therefore, you need to reserve time in reserve so that the team does not have to hurry and, as a result, make mistakes. Do not ignore the need to debug and bring the software to the level of stable operation and an acceptable number of bugs. The release of the raw product due to the time saving is not reasonable. The Agile methodology assumes the variability of external conditions and the need for quick and painless adaptation to them.

6. You can not rush, violate the plan and reduce software development time


A common mistake of managers thinking that programmers can pull any deadlines. First, the team demotivates, sabotages the labor process, or writes statements of its own accord. Secondly, a sharp acceleration of working operations depletes the resources of the body and the human psyche, leading to professional burnout. Thirdly, an excessive rate leads to an increase in the number of errors in the code. Debugging and fixing in the future will require significantly more time than it will be possible to save in this way.

7. Document planning with the right task manager.


The choice of a specific program is a matter of taste. Plans should be fixed. It requires visibility for both developers and customers, while still being able to make changes. This allows you to improve the understanding of the development team, management and client. The number of disputes regarding the interpretation of working actions is reduced. Clarity of the wording of the plan will help to avoid ambiguous interpretation.

8. Set priorities for tasks and concentrate on the main


Try first to implement the most important functionality. Keep in mind that some features in the development process will have to sacrifice, as well as the implementation of some of the ideas. And prioritization is possible only through communication and exchange of views.

What do you think about planning in software development? Leave your comments on the article. We'd love to hear your feedback.



About development technologies:
Once again about the seven main development methodologies .
10 major system scaling errors .
8 principles of development planning, simplifying life .
5 major risks in custom software development .

Source: https://habr.com/ru/post/272085/


All Articles