In software engineering, it IS possible to estimate the cost of a production ticket in…
In software engineering, it IS possible to estimate the cost of a production ticket in an efficient way… It is difficult, but possible.
However it is not the case for every project, nor for every team, not for every developer, nor for every product.
The real cost of feature - is the sum of essential and accidental complications.
Knowing that accidental complications >>>(dominates) essential complications.
Any experienced software engineer can estimate with an acceptable precision the cost of the essential complication.
Estimating the rest is nearly impossible.
As a Solution you need to:
- always refactor your code to ensure that your next move will be as smooth as possible and prepare your model for changes.
Be ready for changement by respecting SOLID principles.
-
keep improving your processes and communication within the product team.
-
slice small! Work with your product team on making your steps tiny yet valuable so you can reduce impact of your estimates.
-
try to be bug-free so you can focus only on the features. Bugs should be treated immediately and should not take you more than few minutes to solve.
-
don’t ship code without tests and take good care of your test suites. They give you confidence to refactor the code steadily.
-
keep reading and studying architecture to improve your solution continuously.
-
monitor your production and prove your design choices.
-
keep your functional specifications simple and focus only on what matters. Code related to unused features should be removed asap.
-
have all the teams member agree on this culture and practices and share the mindset.
By doing all this you reduce accidental complications! And you will never bring it to zero ^^
Well, I believe all those are to target but hard to setup from day one so…just don’t estimate and make it small enough so you can avoid risky and long steps. 😅
Instead, work with the product team continuously to make it smaller and simpler.
#mindset
#softwareengineering
#estimates
📎 7 minutes, 26 seconds, and the Fundamental Theorem of Agile Software Development
