Task estimation — the basis of JazzTeam employees’ soft skills
Estimation and decomposition imply a preliminary assessment of tasks and breaking down various work activities into smaller subtasks. These approaches are implemented in JazzTeam at the level of daily work values and standards. Not only developers and QA specialists are guided by them, but also administrative staff, marketing, sales and HR departments. This is an important part of our culture, which ensures predictability, timely risk prevention and a calm working environment without stress and overtime.
We not only strictly adhere to the principles of decomposition and estimation, but also train the company’s specialists to estimate the time spent on various tasks in a balanced and realistic manner. The peculiarities of these approaches are spelled out in the company’s documentation, which contains best practices ensuring effective work. Our company provides a wide range of IT services and often works with non-standard customer requests. This is why it is so important for JazzTeam engineers to continually improve their estimation and decomposition skills.
We also help to acquire this important skill to novice engineers who are practicing Java and frontend development, manual and automated testing in our company. Professionals who have successfully completed our training have the necessary knowledge to perform tasks effectively, so it is pleasant to cooperate and interact with them in one team.
Based on our experience, we can confidently say that the skill of decomposition and estimation is the most important soft skill for an IT specialist. And this skill must be grasped and developed.
How to effectively allocate working time, achieve results on time, avoid overtime and solve complex research problems using the principles of estimation and decomposition? We will discuss these issues below.
What qualities does estimation develop in a team?
Estimation not only improves the skill of task complexity assessment, but also helps to organize the working day and contributes to the timely achievement of results. This practice helps engineers develop useful and workable qualities.
Self-organization. The need for independent assessment teaches engineers to rationally plan their working hours and less often get into an overtime situation. Estimating day by day, employees polish up this skill and see a clear picture of labor costs needed for current tasks. They know what they are going to do today, tomorrow, and until the end of the week. To make progress, they do not need an extra reminder from the manager or the team. They know their job and constantly move towards their goal.
Realism. Everyone is either a pessimist or an optimist by nature. Estimating on a regular basis, the engineer better understands themselves. They learn to realistically understand their strength and speed of work. This helps them to be more accurate in evaluating their tasks and complete them on time. Over time, the team develops a clear understanding that matching the estimation is the norm.
Responsibility. Estimating on their own, the engineer understands that they bear full responsibility for the timely completion of the task. In the practice of estimation, there is no room for delegating tasks to others, pointing fingers or blaming the manager for the wrong deadlines. Your job = your responsibility.
Openness and honesty. To achieve the result within the specified period, the engineer must be honest and, if something goes wrong, notify the manager and the team in a timely manner. For example, in our company, engineers constantly talk about progress at daily stand-ups. If there is a risk of not meeting the time limit, they tell it in advance and explain the reasons for the situation. This approach helps to analyze what issues have become an obstacle and what can be done differently, as well as get support and advice from colleagues.
Calmness and confidence. A team of employees who are realistic in terms of estimation is manageable and predictable, works calmly and in unison, which ultimately gives an excellent overall result.
Professional maturity. The process of estimation is a great opportunity for professional development. When assessing tasks, the engineer gets used to analyzing the situation, justifying their position, thinking about risks, thereby developing their thinking.
How does estimation help to handle risks?
If the company managers and management listen to the vision of employees about possible risks, this allows them to correctly assess the situation on the project as a whole. By clearly understanding task statuses, the manager will be able to plan progress so that the team does not have to work overtime and at a leisurely pace achieves the necessary results, taking into account possible risks.
In our company, risk management and estimation are associated with the Red Flag concept. We trust the estimates of our employees because we know that they will notify the manager and the team about the difficulties before they use two-thirds of the time allocated for the task. So, the risk of not achieving the result by the scheduled deadline will be handled in advance.
There is a more complex technique for assessing tasks associated with risk management — composite estimation. This approach involves the creation of a table containing the risks most frequently encountered in project development. In case of changes in requirements or conditions, the table is supplemented and updated.
The use of composite estimation allows to accurately determine the time required to complete a particular task without missing critical risks. The more scrupulous about risk assessment the team is, the more accurate the final result will be. The results of composite estimation can be presented to the founder, so the client will see reasoned and realistic deadlines for the creation of each feature.
What is task decomposition?
The practice of estimation in JazzTeam culture is closely related to task decomposition and the Definition of Done concept — criteria for completing tasks. If a task is too large, non-trivial or, at first glance, impossible to implement, we break it down into small subtasks. At the same time, we take into account an important nuance: the result of each small subtask should be specific and demonstrable.
What are the benefits and importance of decomposition?
- Employees regularly show a clear, measurable, specific result of the work, presented in the form of subtasks. All project participants track the progress and understand by how many percent a certain activity has been actually completed.
- More experienced team members, facilitators, managers or scrum masters can assess the correctness of the logic in the distribution of labor costs for tasks and the priority of their implementation. Facilitators help to direct the logical way to the most effective achievement of the goal, which can significantly save time. Decomposition contributes to the designation of this logical chain.
- Decomposition allows managers to see the risks in advance in order to inform the customer, if necessary, and not to be in a situation where the team bit off more than it can chew, did not achieve demonstrable results and did not satisfy expectations.
Is the task completed? Let’s talk about performance criteria
We have already mentioned that when using decomposition, each small task must have certain characteristics in order to be considered complete. The concept of a “completed task” is closely related to the Definition of Done — agreed with the customer and the team criteria for completing the task. They are usually presented in the form of a short checklist. It highlights the main requirements that the result should correspond to. The use of such a checklist is especially relevant for complex tasks: for example, in the development of a system module, which can have an impact on the performance of other functionality.
Here are some examples of items that may be in the Definition of Done:
- Unit tests written/updated.
- The result was checked on the development server.
- The code has been merged into the master branch.
The requirements for the application can also be the basis for the checklist items.
Creating checklists is a useful tool that contributes to the task quality. It also unifies the work of engineers and helps newcomers quickly join the new project and adhere to the principles of the team work.
In addition to the Definition of Done, all completed tasks must have a number of common characteristics:
- Demonstrable result. It can be a prepared feature, a detected and fixed bug — anything that is easy to prove and show. If the task involved research, a manual on the use of the studied approach or technology, a document with conclusions, a diagram should be prepared.
- Measurable and specific result. The manager, the customer and the whole team can easily make sure that the task is completed and understand what benefit it will bring to the project.
Decomposition and risk management
Decomposition is an excellent tool for timely risk handling. Applying this practice on a regular basis allows the manager, who acts as a facilitator, to clearly understand and track progress.
So, even when risks occur, the manager comes to the customer not only with a problem, but also with a plan for its solution. For example, if the task turns out to be too difficult, you can involve another specialist in solving it to be able to complete the activity by the scheduled deadline. Also, this is part of JazzTeam’s risk management, which allows us to always meet customer expectations and successfully work on the most complex projects.
The management of a company that applies the principles of decomposition assesses in advance which tasks are more understandable and which ones are more complex and risky, and this is a specific feature of such management. In parallel with the implementation of the main activities, it can decide on the directions for research, learning new technologies that are necessary for the project.
How to implement decomposition and estimation practices on the project?
If your specialists do not estimate and decompose tasks, they will not be able to learn how to realistically estimate the necessary costs for different activities. For you, this means low control over the engineers and lack of transparency. You may be spending too much money on their work. Some tasks may be in progress for weeks. This approach often leads to developers’ infantilism.
How to gradually and painlessly introduce the practice of decomposition and estimation on your project?
- Start by introducing a culture of task decomposition. Bring in the following rule on the project: the task cannot take more than one working day. But you need to think about the fact that you may face resistance on the part of the team. The engineers may insist that they already perform decomposition, but if the task is too difficult, sometimes work on it takes even a week. Explain to the engineers that this is the wrong approach. The result of any completed task should be measurable, clear and demonstrable by the end of the day. If you do not demand seriousness in such an important issue from your developers, this can result in excessive relaxation and ineffectiveness. The practice of task decomposition contributes to the progress and development of responsibility in the team, improves logistics in the promotion of project tasks.
- It is necessary to gradually implement the system for developers’ time management: it is necessary to complete 3 small tasks 2-3 hours long every day. The result should be measurable, concrete and demonstrable. For example, if your developer is mastering a new technology, let them prepare a manual or a diagram of its application.
- At stand-ups, engineers must analyze and tell the entire team why they failed to complete the task on time. All project participants should strive for realism, constant progress, and understand that completing the task within the stated estimation is the norm.
- If the engineer is engaged in a research task, it is necessary to set them the following conditions: 1-2 hours can be spent on this task daily for several weeks. After that, it is necessary to assess the results that have been achieved. In our experience, the best progress is made if the task is done gradually. In this mode, the brain has time to delve into the issue raised, and creative energy is evocated. Good ideas can even come while you are sleeping or taking a shower.
Benefits of combining decomposition and estimation practices
The use of decomposition and estimation practices requires each team member to be highly concentrated and independent. However, they bring really important results if used properly and on a regular basis.
1. Professional and personal growth of employees. An employee of a company that adheres to the principles of estimation and decomposition is responsible, organized and realistic. They understand the level of their performance, realize how optimistic or pessimistic they are about their strength. They clearly know what is required from them, and in which case the task will be considered really completed. They focus on the results and do not hesitate to talk about them and, if necessary, ask the team for help in a timely manner. These qualities help engineers to progress in a quietly confident manner and complete tasks on time.
2. Healthy psychological climate in the team. The ability of each project participant to correctly assess their tasks has a positive effect on the entire team. If the engineer correctly uses decomposition and estimation, timely reports on possible risks, teamwork will always go to plan without stress and conflict and the need for overtime. This approach provides comfort and predictability of work for the whole team, allows establishing a healthy psychological atmosphere and protects project participants from nervousness.
3. Prevention and timely handling of risks. If the situation turns out to be extraordinary and requires additional resources, the customer will be informed about this in advance. This will allow to agree on a response strategy with the founder in advance and to maintain a good relationship with them.
4. Trust and sizable reputation in the eyes of the customer. The customer sees that the time and resources are used effectively on the project. The team strives to complete all tasks on time and expediently spends its resources constantly achieving results. The customer fully trusts the team, is confident in the professionalism of the engineers and pays heed to them.
Estimation and decomposition of tasks establish an effective working culture without scholasticism, with good management, rational consideration of risks, without overtime.
We work under a T&M contract, so sometimes even the list of tasks that need to be implemented may not be available at the first iterations on the project. Despite this, our managers are ready to take on task formulation and, at the request of the customer, make a preliminary assessment of them. When the list of tasks is compiled, we decompose and estimate each task of the project plan. In the future, we will closely monitor the budget and inform the customer in advance if there is a risk of deviation from estimation, we will offer options for solving the problem. Due to the effective application of task estimation and decomposition, the deviation of the time spent from the initial estimation for T&M projects in our company does not exceed 20%.