Most people do not know how to adequately assess the timing of tasks. Oh, how it makes you sometimes nervous ... Here, and "deadline sneaks up unnoticed." And reinsurance in 500% just in case (still not enough). And squeezing "knowingly bloated deadlines," so that the performer promised something more acceptable. And vague muttering instead of specific numbers.

This article brings together and structured the principles and methods by which you can teach yourself and others to give adequate assessments. In the beginning - the general principles and a little bit of mathematics. In the end - specifics for the studios.
The most hated question
Speaking at dozens of conferences, I often asked people in the hall: “What question do you most don’t like to answer?”. And always the answer was:
“When will it be ready?” . The question worries and causes emotions. Right now go to your colleague and ask him when it is ready. Do you know what you are likely to hear?
')
No, you will not necessarily be shown the direction and will wish a good road. There are a lot of cultured people around. But almost certainly the person will begin to
talk about their problems .
Do you understand? To the question "When?" - answer with a story about the problems! So does almost all of humanity.
Another example is for those who remember a university programming course. What
type of data should the program return to the “When?” Request. DataTime or something like that. The person on it steadily throws out Exception. Yes, not one, but many, preferably with the General Protection Fault. This is a real bug in the firmware of almost all people!
What kind of nastiness is this? Why do people not like so much about timing? After all, everything is simple:

Uncertainty hits the head
The root cause is that when assessing the amount of work, we are faced with uncertainty.
We have to predict the future - to build a forecast and take responsibility for it. Managers and customers demand this from us, and we from our subordinates.
But we need forecasts as a support. As an attempt to isolate oneself from uncertainty. As an attempt to satisfy the main desire. And I'm not talking about sex, hunger and sleep, but about the desire to control reality. Everyday. Oh, how great is the temptation at this moment to push the contact with uncertainty onto another ...
The best thing we can do is build an adequate model of work with uncertainty. Which will allow you to create an evaluation algorithm, or at least divide the responsibility between this model and the appraiser. Know the limitations of this model. And then - to teach to use the model of those who give you an estimate.
Since ancient times, such models have been fortune-telling: throwing bones, fortune-telling on the insides of animals, over the shadows and other mystical joy. On divination based world religions. But this is not exactly what I would like to base my business processes on.
Apparently, even God obeys the principle of uncertainty, and cannot simultaneously know the position and velocity of a particle.
Stephen HawkingThis is a philosophical question, there is no technical solution.
Let's return to the formula. It is, in principle, true.

The dirty trick is that neither the numerator nor the denominator of this fraction is known. At least because:
- The signature of the customer (in blood) under the terms of reference does not guarantee that the document describes exactly the amount of work that is really needed. It does not even guarantee that the customer read the TK. You will find out the actual amount of work only after the acceptance of the project.
- Any formulation of the problem is guaranteed to contain "holes" that can be interpreted in two ways. The thicker the production, the more such places.
- The performance of people (especially programmers) may differ by TIMES and depends on so many factors that it is simply impossible to take into account the influence of all.
All the mathematical models I know that are trying to answer the question "DOCHE?" Are based on serious simplifications. To put them into practice is possible only to demonstrate the inconsistency of these models and the futility of being.
With a certain probability, you can predict the date of completion of the task or project, if:
- you have a stable, well-performing team of performers;
- the works are performed for the same client, which gives stable feedback (read - generates the predicted number of “pravochek”) and demonstrates stable quality requirements;
- the team has already worked with similar tasks;
- workflow, technology stack, and environment are unchanged;
- the project itself fits in the heads of the team;
- satisfied with the assessment in relative, and not in absolute values (no you rubles and hours!);
- already have experience in the same conditions and data obtained in previous iterations; or the client is ready to work iteratively and receive forecasts based on real measurements of the performance of the previous stages.
Worst of all things are with sales, who are forced to pretend that all these conditions are met (although quite the opposite). But we will try to penetrate this hallucination. In this case, we can assume that the probability of completing the task by a certain date corresponds to the normal Gaussian distribution.
About the bell of Gauss something heard even by the humanities. This distribution is often found in nature. The concept of "normal height", "normal weight" and "normal person" - this is just from the field of Gaussian normality. The Gauss bell is attempted to be tied wherever it is possible and impossible, if we are talking about something susceptible to the influence of a huge number of random interferences.
So, if the question arises: “What is the probability of meeting the estimate?” - you can answer - “Normal” - and show this graph.

In the middle of the bell - the most likely complexity. But since we work with quantities subject to randomness, we need to make an allowance for the value of dispersion of values of random variables (in an intelligent way, the standard deviation or σ). The problem is that if we take a range of ± 1σ - the probability that we will fit into our assessment interval is only 68%. In the remaining third of cases, we will be accused of incompetence and put in a corner.
The value of 2σ - the probability will be 95%, but the interval itself will turn out to be obscenely large. Here your customer will say: “Phew, you can't tell me the exact estimates, and the competitors said. You are ghouls. Goodbye". Five percent is not so little if you have a lot of tasks, and for disrupting the deadlines for each of them painfully beat.
3σ - 99.7% probability of hitting the desired interval. If the client asks "By what time you are
guaranteed to complete the project" - the answer will NEVER be mathematically correct. Even in these synthetic conditions, math is against you.
Bidding and manipulation
Unfortunately, it is incorrect to use the Gaussian distribution for estimating problems. If a company accurately collects data on forecasts and real deadlines, the probability distribution is likely to look something like this:

This is more like the Poisson distribution (it looks like it’s not). It differs from the normal Gaussian distribution in that it first has a value of 0, then begins to grow (optimists give estimates at this point), quickly reaches a peak (this is the point where realists give estimates) and has a long tail on the right (there Sit all fakapy and worked risks).
Such a probability distribution is natural, since making a task an hour earlier than a realistic deadline is more difficult than delaying a week. Work takes as much time as it took to -
Parkinson's law . Therefore, before it still does not work.
And optimists do not fit into the timeline almost always.
It is important for us to be able to give plugs to projects with a range from a realistic estimate to the most likely, for example, 80%. And the client may be interested in precisely optimistic assessment. But you cannot name it alone, because you do not know what risks may work with this person. Therefore, inform the plug.
The client can react to it extremely sharply (especially if he is a former programmer). He does not understand why the plug appeared - the task is well known! To tell the customer in the forehead that “The fork appeared because we still do not know how adequate you are” is a conflicting option. It is easier to explain that the plug is needed as a safety net.
More fun mathematical models (PERT analysis, log-normal or stable distribution) are suitable only for exquisite show-offs at conferences. But they do not really help when communicating with a client who asks
"not to load this garbage, but to clearly say how much it costs and when it will be ready .
"Nevertheless, it is very useful to acquaint your employees with the basics of these models.
To introduce and ask to act adequately, not to load this garbage and clearly say how much it costs and when it will be ready .
Adequate model
By an adequate model, I mean one that provides acceptable accuracy for practical activities.
I believe that we need to teach people to live with uncertainty. Yes, mathematics and being strongly against us. But you have to force yourself to give assessments with a good share of probability (say, 80% or 90% depending on the sphere), the remaining risks to take on. In case they arise, apologize (to the client), smile and hush up the conflict or make a trade union at your own expense (without going into negative profit).
About buffers, safety net and Murphy's law
The client must be accustomed to forks and to the fact that they have a safety net. This is not a hoax, but a reality. We can only be sure of one thing: Murphy's law works here. If he hits often, buffers should be bigger. Check the frequency of Murphy can be iteratively.
If the client is categorical and does not want to see the plug - just remove the lower limit. But it is important not only to lay adequate buffers, but also to closely control their consumption.
If the buffer is eaten by a third, and the work is not yet ready - this is a reason to start forwarding and pushing through. In web development, we use the burndown chart to visualize expense.
Forwarding and pushing with streamlined processes should take no more than 5% of all work. If less - then you have a reserve capacity. If more - you have a problem.
On complex project chains, the greatest control should be on identifying the project bottleneck and controlling its feed buffers.
Principles of adequate evaluation
There are only TWO ways to do assessments:
- drawing on your picture of the world in the past (your experience and historical data);
- extending your picture of the world into the future (expert assessments and intuition).
At the initial stage, when a person is not yet accustomed to giving accurate estimates, he needs to be told why they are needed. And do not hit, if something goes wrong - it is harmful, because they will present, and then the Parkinson's law will work, then the Murphy's law and the tendency to pack and tighten will progress. But to beat, if the performer did not escalate when a problem occurs.
The task of the leader - to
teach to evaluate their work. Do not just give the task and watch how a person shouting “Blah-fly!” Runs to do it. And make sure that the required amount of work is analyzed.
Reliance on the past
In its pure form, a forecast based on past experience is possible only in typical, frequently repeated and highly regulated professions and operations. Such still exist, but will be ousted by robots and processors for twenty dollars. Estimates of the conveyor work can be obtained from the statistics of past periods.
Reliance on the past has a number of flaws that affect the accuracy of the assessment.
- A person who repeatedly performs the same (or very similar) operation starts doing it faster. With skill grows speed. Therefore, it cannot be said that the same task for the same person will take the same time.
In addition, we are not in Japan and not in Germany. We are in Russia. And we are characterized by a creative attitude to everything. Including regulations and rules. Sometimes it is good, but it hurts heavily on conveyor production.
Creative attitude leads to the fact that at some point doing the same type of things becomes boring. And, if we have to deal with them, we try to do them in another way. And this means that the quality of work and the time spent on them will change. The risk of mistakes and failure in terms will increase.
There is nothing terrible if it is controllable: we understand that the task is experimental in nature and we set the time for the experiment (and not suddenly find out that instead of having a clear and efficient work, the employee began to experiment purely for fun) and resisted.

- We tend to forget the details, nuances and trivialities of those operations that we rarely perform. And this means that our estimates, based only on past experience in performing a task, will almost always be too optimistic.
- In contrast to forgetfulness in the details, we remember well if we had previously received pain for exceeding the deadlines on a similar task. And, if we don’t have a sadomaso circle, we don’t want repetitions. And we begin to reinsure.
Our safety net will be based only on fear and unwillingness to experience negative consequences. Even if they were concluded that we did not meet our own assessments, and we were not even scolded for it. On fear, but not on common sense.
We experiment, we forget, we are afraid. Therefore,
it is important for a competent manager
to stipulate not only an estimate of the time frame, but also the way in which the result will be obtained - otherwise surprises await him. Everything that
can be rationally automated and standardized -
should be automated and standardized. And tasks involving experiments with new technologies or ways of working should be separately specified as experimental (with a separate budget and time reserve).
Extending the picture of the world into the future
So, experience alone is not enough to evaluate. Two other ways - expert assessments and intuition.
The best we have to do is to imagine exactly how we will implement the task. The more detailed, the more accurate the predictions will be. It is important to tell the truth to yourself: if in the thought experiment in the course of work there appeared technological inconsistencies - they are guaranteed to result in extra time.
The picture of the world may be inadequate - then in the process we are faced with surprises. Where we do not want to understand the details and delve into the details, we just want to throw a lot of safety net. Programmers have the formula “Rate, and then multiply either by π (3.14 ...) or by e (2.71 ...). Quite a few factors, and the spread is large. But in the end fakapim even with them. It is all about inattention to trifles, laziness to understand, or lack of adequate resources to learn the nuances.
Yes, assessment requires resources, sometimes serious ones. If the task is new, the assessment process should be broken down into stages.
- Statement of the problem, analysis and preliminary assessment (estimated deadline for obtaining deadlines).
- Phase
- Refined assessment, the beginning of the work, the fixation of the assessment (after the recording and a small piece of the real work).
- The execution of the task. A further change in the rating is possible only as a force majeure or a joint, and should be based on the principle “rested - inform”. In long-term tasks - agreed control points.

The more we are attentive to the details - the more accurate our forecasts. Unfortunately, teaching someone to be attentive to small things is difficult and time consuming. But it is necessary, even through resistance. If absolutely nothing - then part.
Secret techniques of the IT world
In IT, everything is heavily confused about the accuracy of estimates, timing and resources. In other industries such scruples are not observed. In IT-Schnick this is a cult. However, as well as work on actually spent time and tricks with multiplication by e and π.
The variety of methods only says that IT professionals thought a lot about how to solve a problem. Below are a couple of techniques that help people get involved in assessments.
Absolute and relative scores
It is difficult for a person to estimate absolute values. But with relative problems less.
What is the size of Jupiter? Do not show it with your hands, do not describe it with words - the numbers are too big for the small terrestrial brain to understand.
Now tell me what size Jupiter has compared to Earth, using analogies. Here it is already easier: the Earth is about the size of a pea, and Jupiter is like a watermelon. The earth wears a T-shirt the size of S, and Jupiter - XXXL.

The brain perceives relative values better - use this in evaluating tasks. One big break into a dozen smaller and give an assessment of each separately. Compare the subtasks to each other: which one wears an XS T-shirt, and which one is L? T-shirts do not even have to translate into hours - you already understand the approximate amount of work.
In IT, with properly educated customers, it is permissible to make estimates of tasks not in absolute terms, but in relative values. New tasks are evaluated for some simple and well-known. In addition, the evaluation in relative terms allows to compensate for the natural errors in the estimates themselves and in the wording of the tasks (since the project will have a number of clumsy tasks and evaluation curves approximately from stage to stage).
Unfortunately, the author does not know whether relative estimates are used elsewhere in practice. Give everyone exact time and money.
Planning poker
If T-shirts and other comparisons do not suit you, go to Planning Poker. This is a way to play out all the details of the process and possible problems from the performers in a gaming manner. And in the end, get an assessment of the problem, close to reality. In the poker deck there are cards with numbers (this is a turn!), Which designate a clock: ½, 1, 2, 3, 5, 8, 13, 20, 40, 100.
Gather a team of performers together, voice the task, ask to put a map on the table with the time it takes to perform. Cards are laid out face down - this reduces the influence of authorities. After all simultaneously opened.
If the numbers are the same or slightly different, write a general arithmetic into the plan. If there is a significant difference - check with those who have distinguished themselves, why they rated the task so. Someone did not take into account the long delivery of parts from another city? Or forgot about the innovative software that was installed last week? New details will pop up, and the assessment will be more accurate.

Do not push, that in terms which you received in poker, everything was done - nobody canceled Murphy's law. In this case, the manager must lay a safety net.
If using a poker to get an estimate is impossible (because it requires experience) - add a startup / research stage. On it, the performer does part of the task, estimates the volume and complexity of the entire work, and can estimate how long it will take him to complete.
Decomposition
Use decomposition - break the abstract big task into small and concrete ones that are easy to evaluate.
Decompositions need to be trained. If we consider the example of IT - something like this. First, a ready-made project is taken, which is broken down into components - so that the person who has to give an assessment will understand what is the essence and what is wanted of him. Gradually, the task becomes more complicated: a project is given for decomposition, in which there is only a prototype. Then - the standard technical task, then - the bad and complex TK.
A person must learn to prepare a complete project or divide the TK into stages and components. And each give a rating. When he learns, his grades will be adequate, close to the ideal percentage of probability and without unexplained buffers.
How to teach people to make assessments
In order for a person to be able to make assessments close to reality, he must have the exactingness to himself, honesty before himself and an understanding of the technological process.
If you already have these skills, then bring it up according to the following scheme:
- Show mathematical models of distributions and explain that you will not be able to merge with the estimates.
- Tell us what is meant by an adequate assessment, how it will be used and why you need it. Tell them that you need a valuation without re-mortgaged 100,500 times insurance.
- Show how planning the work flow for the entire company based on this assessment or how it will be used by your client. Do not hold people for idiots - if they tell the truth and real needs, most of them will try to make the most accurate predictions.
- Teach to the principles of "rested - inform" and "any task must be analyzed and evaluated."
- Make people evaluate all their tasks on their own.
- Let me study the statistics of the organization (estimates and real project costs).
- Teach to the principle of "you do not know what to do - decompose." Give a few projects for decomposition. Check and look for holes and inconsistencies. Long and tedious talk about the inconsistencies found.
- Let us evaluate the real TK. Go through the final assessment line by line, ask how you came to it. Check for completeness and consistency. Show holes in ratings where time can go.
In our industry, you can teach a person to make good grades in a couple of weeks. For training, you need to use typical objects and give constant feedback. With this kind of work, the zone where a person can make predictions will constantly expand.