3 ms·
So let me ask you a simple question, how much time do I have to give the initial estimate and how long do I get to increase confidence? Is it in the order or da
by FollowSteph3 10y ago
So let me ask you a simple question, how much time do I have to give the initial estimate and how long do I get to increase confidence? Is it in the order or days, weeks, or months? I ask because a 25% confidence level on 4-8 weeks would most likely require some time to increase the confidence, more than you would be permitted.
I agree with what you're saying and that's all great and awesome but in the real world it unfortunately doesn't work that way. In most cases you have a day to a week to come up with an estimate for a year long project. If you by great luck get a cognate to do a spike, you get maybe an extra day. Ok most cases actually you would've maybe gotten an hour to a day at best and there would be no spike, and if you did get a spike it would be maybe an hour. Again I agree with what you're saying but it just doesn't work this way for the vast majority of companies.
Also is this real time or actual time? In other words does it include time for meetings, holidays, sick days, change in staff, etc.
- HeyLaughingBoy 10y agoNot to argue with you Steph, but that indicates a management problem. If I ask one of my guys for an estimate, I expect that it will take them time. If I need a SWAG, I'll say that. If I need an accurate estimate, I'll tell them that and ask how long it will take. Most (competent)management understands that everything has a cost. The problem that I've seen repeatedly is that devs toss off a quick guess without thinking about it very much and then act surprised when they're held to it. That said, I believe that a week is plenty of time to estimate a year-long project. However, you need experience estimating. Look, I'm no genius at this but when asked to estimate a task, this is what my manager would normally get: Time to Research fuzzy task C Find libraries for X, Y, and Z Assume cost of $A for libraries. Make sure we have this in the budget to avoid delays Repository setup time Tool configuration time (if different) Feature A Feature B ... Integration Test time for x, y, z I'm on vacation for a week Bug fix I need to interact with Susie in Manufacturing around this date and she says she will be having a baby and out for 6 months. You need to find me a replacement contact. Incorporate feedback from Manufacturing. Historically this adds about 2 weeks to any project. Add up all the times and provide an estimate along with any confidence intervals around each line item. This is how I have done it in the past before we implemented more rigorous processes and never gotten complaints. It gives management plenty to data to work with and talking points for them to ask questions about.
- FollowSteph3 10y agoI absolutely agree with you, what I'm saying is that this rarely happens. Most people say it's just bad management, but that's the norm. I use to consult until I started my own company and over the many companies I worked with maybe only a couple did it correctly. Just to give you an idea, do you think Steve jobs ever really allowed an estimate like this or would've accepted it? It's not just him think Amazon, oracle, EA games, etc. they all have reputations for being aggressive and you either provide and estimate they like or they will provide it for you. And not just the big companies but most of the companies are like this too. Working long hours to try and meet estimates is more than common in our industry. Again I agree with you, and I've seen a couple times, but that's it. It's very very rare is all I'm saying. It's part of the reason I started my own company. I understand that estimates are just estimates, and in most cases they aren't going to work without spending a good amount of time on them. But even then an estimate is an estimate, the same as you get an estimate when doing some major renovations on your house. It's only when you open up the walls and do the actual work that you'll know the true time and costs. You can't predict the plumbing is bad and leaking in your estimation. And sometimes you don't even know who the staff will be. The only way to do a proper estimate is to start the actual work. The only thing I disagree with is that what your describing is the exception rather than the norm. Well that and a week is not enough to do a year long estimate. Of course that also depends on the size of your team, it's easier to estimate for one person than a 20 person team. But 1 week is too short. but even with the appropriate amount of time you should still be ready to accept that once the walls are opened you never truly know what you will find...
- FollowSteph3 10y agoJust a quick note, the reason many developers give quick estimates is that they know management won't give them the time to perform a proper estimate or they won't accept anything they don't want to hear, or after all is said and done will just override whatever you say and tell you how long it takes. This is wrong on all accounts but I would say this happens at 80-90% of companies. So after a while developers learn there's no point in even trying to give a proper estimate, or at least not spend a lot of time trying to be too accurate. That and many times there would be change requests, changes in features and functionality, but even less common was to see a revision of the estimate. I never saw a single revision, the original estimate was used, regardless how much chbage had happened since. I'm all for changing the features as you learn more but I've never seen an estimate be adjusted. If it's a year it stays a year. What's even more interesting is that most of the discussions around anything tend to be bike shedding discussions, discussing the color of the paint, rather than actual hard stuff. There are exceptions but that's much more the norm. You estimate based on what you know right now and it will never be adjusted if things get added. And you will only be given the minimal amount of time to make an estimate. And of course you hope they listen and agree, many many times your estimate gets overridden.