I want to make excellent estimations about, how much effort is required for a particular task.
The constraint is, that I have already solved the problem and written down steps required to solve it. Also I have the description of what kind of problems it solves, compiled example program, it's source code with comments, tests and test data, language abnormalities involved with particular solution and etc. And I have done this for set of languages X.
My sub questions are:
- did I ask right sub questions?
- is this a Fermi problem (or paradox)?
- on what should I base my decision upon?
- what elements should it contain to be effective?
- what should a I know, before giving a rough estimation?
- what kind of argument scales should it use: linear, logarithmic, ...?
- how does estimation change, if definition of required feature changes?
- how do I evaluate it, is there some-kind of table like this IBM's (bogus) one ?
- how does estimation differ, if i'm asked to solve it in language {x, y}? Where x ⊇ X and y ∉ X.
My question is: What is the most efficient way, to rate task recreation difficulty?
About the question
Although I have been learning the profession of software engineering for quite some time, only now I find myself going to work as one. In university I found, that 2 time managemanet techniques work really well:
- doing projects ASP - several weeks early also means virtually no competition at all, to be graded
- timesliceing - deciding how much continuous time I will spend on a task, before switching to a new one. If it's important, I'll just schedule a new time slice sooner, then I would.
Thy seem incompatible for this task or rather, it seems a complex problem to adapt them.
Example: Irregular click event hot-spots
Difficulty rating : ★ ★ ☆ | Time estimation : 1 work day
Example of required data creation process