User:

Log in user:

(step 1 of 2)


Write your email address in the white field and then click the "Confirm" button.

Log in user:

(step 2 of 2)


Write your password in the white field and then click the "Confirm" button.
Or click the "Request password" button to request forgotten password.

Log in user - Failure:


Email address has not been found!
Click the "Previous step" button to to enter your email address again.
Or click the "Register user" button to register your email address.

Log in user - Failure:


Pasword does't match!
Click the "Previous step" button to enter the password again.
Or click the "Request password" button to request forgotten password.

Request password:

(step 1 of 2)


Write your email address in the white field and then click the "Confirm" button.

Request password:

(step 2 of 2)


Your password has been sent to your email.
Please also check your spam folder.

Request password - Failure:


Email address has not been found!
Click the "Previous step" button to enter your email address again.
Or click the "Register user" button to register your email address.

Register user:

(step 1 of 5)


Write your email address in the white field and then click the "Confirm" button.

Register user:

(step 2 of 5)


Registration code has been sent to your email.
Please also check your spam folder.
Copy the registration code from your email in the white field and then click the "Confirm" button.
Or click the "Previous step" button to request the registration code again.

Register user - Failure:


Email address already exists!
Click the "Previous step" button to enter the email address again.
Or click the "Log in user" button to log in with your email address and password.
Or click the "Request password" button to request forgotten password.

Register user:

(step 3 of 5)


Set your user name in the white field and then click the "Confirm" button.

Register user - Failure:


Registration code does't match!
Click the "Previous step" button to enter the registration code again.

Register user:

(step 4 of 5)


Set your password in the white field and then click the "Confirm" button.

Register user - Failure:


User name already exists!
Click the "Previous step" button to set another user name.

Register user:

(step 5 of 5)


User has been successfully registered.
Click the "Log in user" button to log in.

User settings:

User settings:


Please log in to be able to open user settings.
Click the "Log in user" button to log in with your email address.
Or click the "Register user" button to register your email address.

User settings:


Your subscription has been successfully canceled.

User settings:


Your subscription has been successfully established.

Write comment:

Write your comment in the white field and then click the "Add comment" button.

Avoid overly optimistic estimates!



Long road

"Software types tend to be optimistic, and leaders tend to be in a hurry - a deadly combination that leads to planned schedules and budgets that never had may chance to be realized." - Gary A. Gack1
"People tend to be overoptimistic when asked to make predictions."1
"In the case of software estimation, developers tend to underestimate effort required to complete complex tasks."1
"Overoptimism of estimators is their belief that the work being estimated will run under optimal (best case) conditions."1
"Estimators should base effort prediction on objective project information and avoid an overoptimistic view from management or an unrealistic demand from the customer."1
"Overoptimism can be avoided by a careful, reflective approach to estimation, as opposed to a "quick and dirty" or intuitive one."1

We should define what we want to achieve, what features we want to have and what work we have to do. (= project objectives)
Divide the project objectives into many small work tasks.
Perform the effort estimate for each work task separately.
Take possible risks and task complications into account.
Don't forget the test effort and the need for multiple iterations.
Tasks priority, order, and dependencies must also be considered.
If possible, make estimates based on quantitative, objective information from similar tasks performed in the past.
Discuss the workload estimate with assigned people and also with independent experts.
Make more estimates considering the worst-case, best-case and most likely scenarios.

At the beginning of a project there is the greatest uncertainty about estimates.
There are things that you know are going to happen, things that you know can happen, and things that you never thought could happen.
The area of estimation uncertainty diminishes while the project is getting more and more completed.
The actual project effort is only known when the project has been completed and all project goals have been achieved.
The ratio of the real effort to your estimated effort defines your estimation accuracy and your optimism bias.
You should take this ratio (your optimism bias) into account when predicting the next project effort.

How many times has it happened, that you had to postpone a deadline due to an overoptimistic plan?

Reference:

  1. Adam Trendowicz, Ross Jeffery. (2014). Software Project Effort Estimation, Foundations and Best Pactice Guidelines for Success. Springer.

© Radim-Automation, 2020–2025. All rights reserved.
Sharing of this article is permitted with proper attribution (link to the original page).


Related previous articles:


Related next articles:


If you want to find out how much time a developer needs to complete a task.
You ask three developers individually how much time they would need for the task.
And then ...
...
...
...
You make the sum of these three estimates ...
And then ...
...
...
...
That's it.
This the actual time it takes a developer to complete the task.
:)

It's not nice when your estimate isn't popular. However, you can get into big trouble if you are forced to accept an estimate that is not realistic!

Don't let time and cost pressures force you to compromise on fundamental questions of project fulfillment and quality.

Every mountain seems small in the distance.
You will know the actual size when you get to it.
And you will only know how difficult it is to get to the top if you try to climb on it.

If a fixed price has to be set for the project, this is only possible if the requirements are precisely formulated and we know how we will achieve them.

Every project, regardless of its size, consists of a series of small steps.

Each work package can be described as follows:
1. Responsibility
2. Task, goal
3. Dependencies
4. Resources
5. Time effort
6. Deadline
7. Costs

"We're all terrible estimators. We think we can guess how long something will take, when we really have no idea. We see everything going according to a best-case scenario, without the delays that inevitably pop up. Reality never sticks to best-case scenarios.
That's why estimates that stretch weeks, months, and years into the future are fantasies. The truth is you just don't know what's going to happen that far in advance."
- Jason Fried, David Heinemeier Hansson. 37signals (2010). Rework.

"I also recommend that you always only plan for the coming week or the coming day. Your advantage? You can react more flexibly to the unforeseen and at the same time have an overview of everything current.
When planning, take into account your overarching corporate goals, the fixed dates and your individual to-dos from the task list. Plan realistically and rather conservatively, because experience has shown that we overestimate the time that is available to us every day. And at the same time, we underestimate anything that we can do over a longer period of time."
Translated from:
- Gabriele Thies. 8 Wege, um deine Aufgaben sinnvoll zu strukturieren.
- https://www.gabrielethies.de/blog/aufgaben-sinnvoll-strukturieren

"Today, technical debt, also known as tech debt and code debt, usually occurs when development teams choose to write speedy code while building new features of a software development product. Speedy code delivery can help your team meet deadlines, and the debt you accrue may be worth it, though it could also lead to negative outcomes if managed incorrectly. These negative outcomes aren’t always avoidable once the decision to accrue technical debt has been made."
- https://asana.com/resources/technical-debt

Why is there never enough time to do it right the first time, but always enough time to do it over?

"The saying "There's never enough time to do it right the first time, but always enough time to do it over" reflects a common observation about human behavior and project management. It suggests that people often rush through tasks or projects initially, hoping to save time and effort, but end up making mistakes or producing subpar results. As a result, they eventually need to invest more time and resources to fix those mistakes or redo the work properly.

There are several reasons why this phenomenon occurs:

1. Underestimation of Complexity: People might underestimate the complexity or difficulty of a task or project at the outset. This can lead to inadequate planning and allocation of resources, resulting in mistakes or oversights.

2. Pressure to Meet Deadlines: There is often pressure to complete tasks or projects quickly to meet deadlines. This can lead to shortcuts being taken or important steps being skipped in the interest of saving time.

3. Lack of Attention to Detail: When rushing through a task, individuals might not pay enough attention to details, leading to errors that require corrections later.

4. Overconfidence: Sometimes, people might overestimate their abilities or knowledge, leading them to believe they can complete a task quickly without proper preparation or diligence.

5. Incomplete Information: In some cases, tasks or projects might be started without having all the necessary information or requirements. This can lead to incorrect assumptions and decisions.

6. Limited Resources: Constraints on resources such as time, money, or manpower might force people to cut corners initially, with the intention of fixing things later when more resources are available.

7. Learning Curve: Sometimes, tasks involve new skills or technologies that individuals need to learn along the way. Initial attempts might be suboptimal as people are still acquiring the necessary expertise.

The saying serves as a reminder that investing the necessary time and effort upfront to do a task properly can save more time and resources in the long run. Proper planning, attention to detail, and thorough execution can help prevent mistakes and the need for redoing work.

However, it's worth noting that the saying is not universally true. In some cases, rushing through tasks might yield acceptable results, and redoing work might not be necessary. It all depends on the nature of the task, the level of expertise involved, and the specific circumstances."

- https://chat.openai.com (Why is there never enough time to do it right the first time, but always enough time to do it over?)

"Never discourage anyone who continually makes progress, no matter how slow."
- Plato

"Having the right boss early in your career is a huge blessing."
- Sandeep M.

Let's speed things up!

One man needs one hour to dig a hole 1 meter deep, 1 meter wide and 1 meter long. How much time does it take if you engage 10 men?

ChatGPT: "If one man can dig a hole that is 1 meter deep, 1 meter wide, and 1 meter long in one hour, and you have 10 men working simultaneously, you can divide the time by the number of men to find the total time it takes for the group to complete the task.

So, it would take 1 hour / 10 men = 0.1 hours (or 6 minutes) for the group of 10 men to dig the hole."

Do you agree with ChatGPT's answer?