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

enter image description here

Example of required data creation process

enter image description here

  • I'm very confused. If you know exactly how long it took you to do something, what are you trying to estimate?
    – Adam Lear
    Jun 5, 2011 at 1:24
  • 1
    @Anna Lear♦: I appreciate the feedback and sorry for being confusing. Same way, as it's unacceptable to write just an answer to a university grade math problem, with comment "I have solved set of problems like this, before.". It seems to be unacceptable, to make time estimations based on past experience, without set of assumptions, that need to be correct. You can think of this question as query, about common assumptions. And it is not trivially obvious to me, how you can make a simplification of difficulty ~ time.
    – Margus
    Jun 5, 2011 at 9:37

1 Answer 1


I think you are misunderstanding the function of time estimates. The assumption for every estimate is that it is based on your past experiences with similar problems and you've considered the novelty of the current problem.

I've been running development teams for 8 years and I've never asked someone to give an estimate for something they've already completed. I have, however, asked for someone to give me a concrete example of a similar task already completed and how long it took.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.