Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Time Estimates - Black Art? [modified]

Time Estimates - Black Art? [modified]

Scheduled Pinned Locked Moved The Lounge
businesshelpquestionannouncement
62 Posts 18 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • C Offline
    C Offline
    Chris S Kaiser
    wrote on last edited by
    #1

    Alright, how many of you claim to be skilled in this area, and what are your methodologies for ensuring accuracy, or at least coming close? I fall victim to the "Can-do" approach. Mostly from some vain need to please. :doh: But half the time I really do think I can get it done in that time, but there always seems to be something that pops up to stall release, whether its an obscure bug or a lack of good requirements. Or something else altogether? This statement is false. -- modified at 13:06 Monday 17th July, 2006

    L P A N T 15 Replies Last reply
    0
    • C Chris S Kaiser

      Alright, how many of you claim to be skilled in this area, and what are your methodologies for ensuring accuracy, or at least coming close? I fall victim to the "Can-do" approach. Mostly from some vain need to please. :doh: But half the time I really do think I can get it done in that time, but there always seems to be something that pops up to stall release, whether its an obscure bug or a lack of good requirements. Or something else altogether? This statement is false. -- modified at 13:06 Monday 17th July, 2006

      L Offline
      L Offline
      led mike
      wrote on last edited by
      #2

      Chris S Kaiser wrote:

      or a lack or good requirements.

      Then what did you base your estimate on? :~

      R C 2 Replies Last reply
      0
      • L led mike

        Chris S Kaiser wrote:

        or a lack or good requirements.

        Then what did you base your estimate on? :~

        C Offline
        C Offline
        Chris S Kaiser
        wrote on last edited by
        #3

        led mike wrote:

        Then what did you base your estimate on?

        A limited set of requirements. I also said "should" and other approximating terms. But its always interpreted as a deadline. So a secondary question is what do you do when forced to give an date when requirements are lacking when demanding more might be a detriment to retaining the project? This statement is false.

        R L 2 Replies Last reply
        0
        • L led mike

          Chris S Kaiser wrote:

          or a lack or good requirements.

          Then what did you base your estimate on? :~

          R Offline
          R Offline
          Red Stateler
          wrote on last edited by
          #4

          Bad requirements?

          L 1 Reply Last reply
          0
          • C Chris S Kaiser

            Alright, how many of you claim to be skilled in this area, and what are your methodologies for ensuring accuracy, or at least coming close? I fall victim to the "Can-do" approach. Mostly from some vain need to please. :doh: But half the time I really do think I can get it done in that time, but there always seems to be something that pops up to stall release, whether its an obscure bug or a lack of good requirements. Or something else altogether? This statement is false. -- modified at 13:06 Monday 17th July, 2006

            P Offline
            P Offline
            Paul Conrad
            wrote on last edited by
            #5

            Chris S Kaiser wrote:

            what are your methodologies

            Personal Software Process.

            Chris S Kaiser wrote:

            there always seems to be something that pops up to stall release, whether its an obscure bug or a lack of good requirements. Or something else altogether

            That always seems to happen, and I try to add onto my estimates to compensate for any unseen issues that may crop up.

            C 2 Replies Last reply
            0
            • C Chris S Kaiser

              led mike wrote:

              Then what did you base your estimate on?

              A limited set of requirements. I also said "should" and other approximating terms. But its always interpreted as a deadline. So a secondary question is what do you do when forced to give an date when requirements are lacking when demanding more might be a detriment to retaining the project? This statement is false.

              R Offline
              R Offline
              Red Stateler
              wrote on last edited by
              #6

              I would say that based on your own experience, you should offset your time by the typical amount you're off. If you're consistently 30% late, then add 30%-40% to your estimate.

              1 Reply Last reply
              0
              • P Paul Conrad

                Chris S Kaiser wrote:

                what are your methodologies

                Personal Software Process.

                Chris S Kaiser wrote:

                there always seems to be something that pops up to stall release, whether its an obscure bug or a lack of good requirements. Or something else altogether

                That always seems to happen, and I try to add onto my estimates to compensate for any unseen issues that may crop up.

                C Offline
                C Offline
                Chris S Kaiser
                wrote on last edited by
                #7

                What's your typical padding range? Is it a blanket approach like double it and add 3, or is more specialized to the project? And mostly I'm concerned with new development, and major enhancements that might require refactoring to the base architecture. Smaller enhancement requests and bug fixes to an existing app haven't been too troublesome. This statement is false.

                P 1 Reply Last reply
                0
                • C Chris S Kaiser

                  What's your typical padding range? Is it a blanket approach like double it and add 3, or is more specialized to the project? And mostly I'm concerned with new development, and major enhancements that might require refactoring to the base architecture. Smaller enhancement requests and bug fixes to an existing app haven't been too troublesome. This statement is false.

                  P Offline
                  P Offline
                  Paul Conrad
                  wrote on last edited by
                  #8

                  Chris S Kaiser wrote:

                  What's your typical padding range? Is it a blanket approach like double it and add 3, or is more specialized to the project?

                  Most of the projects I have done for one of my clients are similar to previous projects done for them. I typically put about 25% overage on time estimates.

                  Chris S Kaiser wrote:

                  mostly I'm concerned with new development, and major enhancements that might require refactoring to the base architecture

                  I have those concerns, too. You are not the only one :)

                  1 Reply Last reply
                  0
                  • C Chris S Kaiser

                    Alright, how many of you claim to be skilled in this area, and what are your methodologies for ensuring accuracy, or at least coming close? I fall victim to the "Can-do" approach. Mostly from some vain need to please. :doh: But half the time I really do think I can get it done in that time, but there always seems to be something that pops up to stall release, whether its an obscure bug or a lack of good requirements. Or something else altogether? This statement is false. -- modified at 13:06 Monday 17th July, 2006

                    A Offline
                    A Offline
                    Anna Jayne Metcalfe
                    wrote on last edited by
                    #9

                    Try reading Painless Software Schedules[^]. Basically, if you can break the task down into small pieces (say 2 days work or less), you've a far better chance of coming up with an accurate estimate. Anna :rose: Currently working mostly on: Visual Lint :cool: Anna's Place | Tears and Laughter "Be yourself - not what others think you should be" - Marcia Graesch "Anna's just a sexy-looking lesbian tart" - A friend, trying to wind me up. It didn't work.

                    C P RaviBeeR 3 Replies Last reply
                    0
                    • C Chris S Kaiser

                      Alright, how many of you claim to be skilled in this area, and what are your methodologies for ensuring accuracy, or at least coming close? I fall victim to the "Can-do" approach. Mostly from some vain need to please. :doh: But half the time I really do think I can get it done in that time, but there always seems to be something that pops up to stall release, whether its an obscure bug or a lack of good requirements. Or something else altogether? This statement is false. -- modified at 13:06 Monday 17th July, 2006

                      N Offline
                      N Offline
                      Not Active
                      wrote on last edited by
                      #10

                      I have found this to be a good resourceSoftware Estimation: Demystifying the Black Art (Best Practices (Microsoft)) [^] Although the Best Practices and Microsoft seem to be in conflict ;P

                      C 1 Reply Last reply
                      0
                      • A Anna Jayne Metcalfe

                        Try reading Painless Software Schedules[^]. Basically, if you can break the task down into small pieces (say 2 days work or less), you've a far better chance of coming up with an accurate estimate. Anna :rose: Currently working mostly on: Visual Lint :cool: Anna's Place | Tears and Laughter "Be yourself - not what others think you should be" - Marcia Graesch "Anna's just a sexy-looking lesbian tart" - A friend, trying to wind me up. It didn't work.

                        C Offline
                        C Offline
                        Chris S Kaiser
                        wrote on last edited by
                        #11

                        Good article. So really we need to be gathering statistics ongoing as to how long it took at the task level vs the project level to get a bearing on where the estimates are failing. This last one isn't that bad. I'm late by about 8 hours or so. Better than a month, but even this grates on me. This statement is false.

                        A 1 Reply Last reply
                        0
                        • N Not Active

                          I have found this to be a good resourceSoftware Estimation: Demystifying the Black Art (Best Practices (Microsoft)) [^] Although the Best Practices and Microsoft seem to be in conflict ;P

                          C Offline
                          C Offline
                          Chris S Kaiser
                          wrote on last edited by
                          #12

                          Ahhh.. McConnell... I have a couple of his books already, but this one looks promising.

                          Mark Nischalke wrote:

                          Although the Best Practices and Microsoft seem to be in conflict

                          Funny, in terms of their practices I agree, at least what limited visibility I have, but they seem to churn out some of the better books regarding process. This statement is false.

                          1 Reply Last reply
                          0
                          • C Chris S Kaiser

                            Alright, how many of you claim to be skilled in this area, and what are your methodologies for ensuring accuracy, or at least coming close? I fall victim to the "Can-do" approach. Mostly from some vain need to please. :doh: But half the time I really do think I can get it done in that time, but there always seems to be something that pops up to stall release, whether its an obscure bug or a lack of good requirements. Or something else altogether? This statement is false. -- modified at 13:06 Monday 17th July, 2006

                            T Offline
                            T Offline
                            Taka Muraoka
                            wrote on last edited by
                            #13

                            How good an estimator are you?[^] Apparently from the Software Estimation: Demystifying the Black Art book.


                            0 bottles of beer on the wall, 0 bottles of beer, you take 1 down, pass it around, 4294967295 bottles of beer on the wall. Awasu 2.2.2 [^]: A free RSS/Atom feed reader with support for Code Project.

                            C 1 Reply Last reply
                            0
                            • C Chris S Kaiser

                              Alright, how many of you claim to be skilled in this area, and what are your methodologies for ensuring accuracy, or at least coming close? I fall victim to the "Can-do" approach. Mostly from some vain need to please. :doh: But half the time I really do think I can get it done in that time, but there always seems to be something that pops up to stall release, whether its an obscure bug or a lack of good requirements. Or something else altogether? This statement is false. -- modified at 13:06 Monday 17th July, 2006

                              K Offline
                              K Offline
                              Kim0618
                              wrote on last edited by
                              #14

                              I just think of a formula for estimating the extra buffer time that being added to a project for time estimation consider the project comprised of modules : extra buffer time = a*(overall time to complete each module) + (degree of coupling within modules)^b where 0 < a < 1, and 1 < b < 3 cheers

                              C 1 Reply Last reply
                              0
                              • C Chris S Kaiser

                                Alright, how many of you claim to be skilled in this area, and what are your methodologies for ensuring accuracy, or at least coming close? I fall victim to the "Can-do" approach. Mostly from some vain need to please. :doh: But half the time I really do think I can get it done in that time, but there always seems to be something that pops up to stall release, whether its an obscure bug or a lack of good requirements. Or something else altogether? This statement is false. -- modified at 13:06 Monday 17th July, 2006

                                J Offline
                                J Offline
                                James R Twine
                                wrote on last edited by
                                #15

                                IMHO, this is more art than science.  I tend to take the available information, even if incomplete, estimate how long it would take me to do averaging 7 working hours a day (8 minus time for answering emails, phone calls and meetings), and then after I get a value, I add in another 20-40% depending on how certain I am about the estimate.  That extra percentage does not include the normal "padding" that program/project management should do.      Other thoughts, take 'em or leave 'em...    Never give an estimate including crunch time.  Sometimes crunch time is necessary, but often it really is not.  (Crunch time is almost always the result of a mistake in planning or design.)  Never build an estimate around more than the amount of work per day that you normally accomplish.  If you do, you will just be creating unnecessary stress for yourself, and the quality of your work (and perhaps personal life) will suffer.  Even though you may be capable of being super-productive every now and then, you likely cannot sustain that kind of output for a long time without burn-out, and you do not want management expecting that kind of output all the time.    The most important thing you can do when giving an estimate is to remind all parties involved that it is an estimate, and not a firm deadline.  An estimate is nothing more than a Hypothesis, and is subject to revision over time as more information is discovered, or Real Life intercedes.  As such, some people need to be reminded that it is inappropriate to make any firm commitments based on it.     If people want a firm number, give them something that you cannot possibly miss (unless you are dead or in an extended hospital stage) - if you think it would take 3 months, tell them 12. :)   One of the biggest problems that I see happening to developers is when they allow themselves to get painted into a corner by getting forced by their management to reduce an estimate or give a firm value with without enough information.    Lastly, and most importantly, if ANYTHING the estimate is based on changes (like a spec/design change, change of staff/resources, etc.), the estimate immediately becomes invalid!  Sadly, people sometimes need to be reminded of that...    Peace! -=- James


                                If you think it costs a lot to do it right, just wait un

                                T C 2 Replies Last reply
                                0
                                • J James R Twine

                                  IMHO, this is more art than science.  I tend to take the available information, even if incomplete, estimate how long it would take me to do averaging 7 working hours a day (8 minus time for answering emails, phone calls and meetings), and then after I get a value, I add in another 20-40% depending on how certain I am about the estimate.  That extra percentage does not include the normal "padding" that program/project management should do.      Other thoughts, take 'em or leave 'em...    Never give an estimate including crunch time.  Sometimes crunch time is necessary, but often it really is not.  (Crunch time is almost always the result of a mistake in planning or design.)  Never build an estimate around more than the amount of work per day that you normally accomplish.  If you do, you will just be creating unnecessary stress for yourself, and the quality of your work (and perhaps personal life) will suffer.  Even though you may be capable of being super-productive every now and then, you likely cannot sustain that kind of output for a long time without burn-out, and you do not want management expecting that kind of output all the time.    The most important thing you can do when giving an estimate is to remind all parties involved that it is an estimate, and not a firm deadline.  An estimate is nothing more than a Hypothesis, and is subject to revision over time as more information is discovered, or Real Life intercedes.  As such, some people need to be reminded that it is inappropriate to make any firm commitments based on it.     If people want a firm number, give them something that you cannot possibly miss (unless you are dead or in an extended hospital stage) - if you think it would take 3 months, tell them 12. :)   One of the biggest problems that I see happening to developers is when they allow themselves to get painted into a corner by getting forced by their management to reduce an estimate or give a firm value with without enough information.    Lastly, and most importantly, if ANYTHING the estimate is based on changes (like a spec/design change, change of staff/resources, etc.), the estimate immediately becomes invalid!  Sadly, people sometimes need to be reminded of that...    Peace! -=- James


                                  If you think it costs a lot to do it right, just wait un

                                  T Offline
                                  T Offline
                                  Taka Muraoka
                                  wrote on last edited by
                                  #16

                                  James R. Twine wrote:

                                  Sadly, people sometimes need to be reminded of that

                                  Even more sadly, even when you remind them it still doesn't make any difference. For the life of me, I can't remember a time when someone has come to me with a change to the spec and when I've pointed out that it will therefore require more time to do, they've said "OK, you can have more time" :~ X|


                                  0 bottles of beer on the wall, 0 bottles of beer, you take 1 down, pass it around, 4294967295 bottles of beer on the wall. Awasu 2.2.2 [^]: A free RSS/Atom feed reader with support for Code Project.

                                  1 Reply Last reply
                                  0
                                  • A Anna Jayne Metcalfe

                                    Try reading Painless Software Schedules[^]. Basically, if you can break the task down into small pieces (say 2 days work or less), you've a far better chance of coming up with an accurate estimate. Anna :rose: Currently working mostly on: Visual Lint :cool: Anna's Place | Tears and Laughter "Be yourself - not what others think you should be" - Marcia Graesch "Anna's just a sexy-looking lesbian tart" - A friend, trying to wind me up. It didn't work.

                                    P Offline
                                    P Offline
                                    Paul Conrad
                                    wrote on last edited by
                                    #17

                                    Anna-Jayne Metcalfe wrote:

                                    Try reading Painless Software Schedules[^].

                                    Joel on Software always has good readings on the site :)

                                    A 1 Reply Last reply
                                    0
                                    • T Taka Muraoka

                                      How good an estimator are you?[^] Apparently from the Software Estimation: Demystifying the Black Art book.


                                      0 bottles of beer on the wall, 0 bottles of beer, you take 1 down, pass it around, 4294967295 bottles of beer on the wall. Awasu 2.2.2 [^]: A free RSS/Atom feed reader with support for Code Project.

                                      C Offline
                                      C Offline
                                      Chris S Kaiser
                                      wrote on last edited by
                                      #18

                                      Another vote.. looks like that might be my next purchase then. This statement is false.

                                      1 Reply Last reply
                                      0
                                      • C Chris S Kaiser

                                        led mike wrote:

                                        Then what did you base your estimate on?

                                        A limited set of requirements. I also said "should" and other approximating terms. But its always interpreted as a deadline. So a secondary question is what do you do when forced to give an date when requirements are lacking when demanding more might be a detriment to retaining the project? This statement is false.

                                        L Offline
                                        L Offline
                                        led mike
                                        wrote on last edited by
                                        #19

                                        Chris S Kaiser wrote:

                                        detriment to retaining the project?

                                        ummmm... "bidding" is not the same as "estimating"

                                        C 2 Replies Last reply
                                        0
                                        • K Kim0618

                                          I just think of a formula for estimating the extra buffer time that being added to a project for time estimation consider the project comprised of modules : extra buffer time = a*(overall time to complete each module) + (degree of coupling within modules)^b where 0 < a < 1, and 1 < b < 3 cheers

                                          C Offline
                                          C Offline
                                          Chris S Kaiser
                                          wrote on last edited by
                                          #20

                                          Kim0618 wrote:

                                          ^b [snip] where 0 < a < 1, and 1 < b < 3

                                          Oooooh... fractional exponents. Neat. ;) How often is this accurate? Another question is when padding estimates how often is it an over-estimate? This statement is false.

                                          K 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups