Estimating software like omelettes
-
...and if you rush the chicken to produce eggs quicker, you'll end up with a burnt out chicken before long. I'm sure plenty more valid analogies can be added. C'mon CP, don't let me down...
-
...and if you rush the chicken to produce eggs quicker, you'll end up with a burnt out chicken before long. I'm sure plenty more valid analogies can be added. C'mon CP, don't let me down...
dandy72 wrote:
and if you rush the chicken to produce eggs quicker, you'll end up with a burnt out chicken before long.
And yet sales keeps telling the customers that the company has a golden goose. ;)
Latest Articles:
Fun Exploring Div and Table UI Layout -
If one of those women was already eight months pregnant, and those chances increase if you (randomly) take more women. Or have them steal a baby, at least one out of nine should be successful! If I wanted a baby, and I wanted it as fast as possible, I'd take as many women as I could get and not take any chances :D
Best, Sander sanderrossel.com Continuous Integration, Delivery, and Deployment arrgh.js - Bringing LINQ to JavaScript Object-Oriented Programming in C# Succinctly
This is exactly why you were banned from Tinder.
Sent from my Amstrad PC 1640 Never throw anything away, Griff Bad command or file name. Bad, bad command! Sit! Stay! Staaaay... AntiTwitter: @DalekDave is now a follower!
-
Gary R. Wheeler wrote:
That's easy. Use
git
for source control so that nobody really understands what a 'commit' does.Wow! You've obviously ascended into Management! :laugh:
Them's fightin' words! Put 'em up! :mad: :laugh:
Software Zen:
delete this;
-
Reading thru The Mythical Man Month and there are quite a few interesting items.
The Mythical Man-Month, Anniversary Edition: Essays On Software Engineering 2, Frederick P. Brooks Jr., eBook - Amazon.com[^]
Gutless Estimating Observe that for the programmer, as for the chef, the urgency of the patron may govern the scheduled completion of the task, but it cannot govern the actual completion. An omelette, promised in two minutes, may appear to be progressing nicely. But when it has not set in two minutes, the customer has two choices --- wait or eat it raw. Software customers have had the same choices. The cook has another choice; he can turn up the heat. The result is often an omelette nothing can save --— burned in one part, raw in another. Now I do not think software managers have less inherent courage and firmness than chefs, nor than other engineering managers. But false scheduling to match the patron's desired date is much more common in our discipline than elsewhere in engineering. It is very difficult to make a vigorous, plausible, and job-risking defense of an estimate that is derived by no quantitative method, supported by little data, and certified chiefly by the hunches of the managers. Clearly two solutions are needed. We need to develop and publicize productivity figures, bug-incidence figures, estimating rules, and so on. The whole profession can only profit from sharing such data. Until estimating is on a sounder basis, individual managers will need to stiffen their backbones and defend their estimates with the assurance that their poor hunches are better than wish-derived estimates.
I'm pretty sure that estimating hasn't changed at all since t
I keep having to tell my boss he can't schedule the release of work which isn't done yet.
-
Reading thru The Mythical Man Month and there are quite a few interesting items.
The Mythical Man-Month, Anniversary Edition: Essays On Software Engineering 2, Frederick P. Brooks Jr., eBook - Amazon.com[^]
Gutless Estimating Observe that for the programmer, as for the chef, the urgency of the patron may govern the scheduled completion of the task, but it cannot govern the actual completion. An omelette, promised in two minutes, may appear to be progressing nicely. But when it has not set in two minutes, the customer has two choices --- wait or eat it raw. Software customers have had the same choices. The cook has another choice; he can turn up the heat. The result is often an omelette nothing can save --— burned in one part, raw in another. Now I do not think software managers have less inherent courage and firmness than chefs, nor than other engineering managers. But false scheduling to match the patron's desired date is much more common in our discipline than elsewhere in engineering. It is very difficult to make a vigorous, plausible, and job-risking defense of an estimate that is derived by no quantitative method, supported by little data, and certified chiefly by the hunches of the managers. Clearly two solutions are needed. We need to develop and publicize productivity figures, bug-incidence figures, estimating rules, and so on. The whole profession can only profit from sharing such data. Until estimating is on a sounder basis, individual managers will need to stiffen their backbones and defend their estimates with the assurance that their poor hunches are better than wish-derived estimates.
I'm pretty sure that estimating hasn't changed at all since t
Third choice, make a smaller omelette. If an omelette isn't ready in thirty seconds you're doing it wrong.
Wrong is evil and must be defeated. - Jeff Ello
-
That's easy. Use
git
for source control so that nobody really understands what a 'commit' does.Software Zen:
delete this;
Fucking yes. :laugh:
-
Reading thru The Mythical Man Month and there are quite a few interesting items.
The Mythical Man-Month, Anniversary Edition: Essays On Software Engineering 2, Frederick P. Brooks Jr., eBook - Amazon.com[^]
Gutless Estimating Observe that for the programmer, as for the chef, the urgency of the patron may govern the scheduled completion of the task, but it cannot govern the actual completion. An omelette, promised in two minutes, may appear to be progressing nicely. But when it has not set in two minutes, the customer has two choices --- wait or eat it raw. Software customers have had the same choices. The cook has another choice; he can turn up the heat. The result is often an omelette nothing can save --— burned in one part, raw in another. Now I do not think software managers have less inherent courage and firmness than chefs, nor than other engineering managers. But false scheduling to match the patron's desired date is much more common in our discipline than elsewhere in engineering. It is very difficult to make a vigorous, plausible, and job-risking defense of an estimate that is derived by no quantitative method, supported by little data, and certified chiefly by the hunches of the managers. Clearly two solutions are needed. We need to develop and publicize productivity figures, bug-incidence figures, estimating rules, and so on. The whole profession can only profit from sharing such data. Until estimating is on a sounder basis, individual managers will need to stiffen their backbones and defend their estimates with the assurance that their poor hunches are better than wish-derived estimates.
I'm pretty sure that estimating hasn't changed at all since t
-
Reading thru The Mythical Man Month and there are quite a few interesting items.
The Mythical Man-Month, Anniversary Edition: Essays On Software Engineering 2, Frederick P. Brooks Jr., eBook - Amazon.com[^]
Gutless Estimating Observe that for the programmer, as for the chef, the urgency of the patron may govern the scheduled completion of the task, but it cannot govern the actual completion. An omelette, promised in two minutes, may appear to be progressing nicely. But when it has not set in two minutes, the customer has two choices --- wait or eat it raw. Software customers have had the same choices. The cook has another choice; he can turn up the heat. The result is often an omelette nothing can save --— burned in one part, raw in another. Now I do not think software managers have less inherent courage and firmness than chefs, nor than other engineering managers. But false scheduling to match the patron's desired date is much more common in our discipline than elsewhere in engineering. It is very difficult to make a vigorous, plausible, and job-risking defense of an estimate that is derived by no quantitative method, supported by little data, and certified chiefly by the hunches of the managers. Clearly two solutions are needed. We need to develop and publicize productivity figures, bug-incidence figures, estimating rules, and so on. The whole profession can only profit from sharing such data. Until estimating is on a sounder basis, individual managers will need to stiffen their backbones and defend their estimates with the assurance that their poor hunches are better than wish-derived estimates.
I'm pretty sure that estimating hasn't changed at all since t
[COCOMO](https://en.wikipedia.org/wiki/COCOMO) (and COCOMO II) is probably the only significant work regarding software estimation either before or after Mythical Man Month. And, having used it, I'm not convinced that, because of the complexity of its model, its much better than a 'finger in the air' guess, especially for enw or novel software.
Java, Basic, who cares - it's all a bunch of tree-hugging hippy cr*p
-
And like an omelette, you have to break a few eggs to get the job done. ;)
Latest Articles:
Fun Exploring Div and Table UI Layout -
Them's fightin' words! Put 'em up! :mad: :laugh:
Software Zen:
delete this;
-
Reading thru The Mythical Man Month and there are quite a few interesting items.
The Mythical Man-Month, Anniversary Edition: Essays On Software Engineering 2, Frederick P. Brooks Jr., eBook - Amazon.com[^]
Gutless Estimating Observe that for the programmer, as for the chef, the urgency of the patron may govern the scheduled completion of the task, but it cannot govern the actual completion. An omelette, promised in two minutes, may appear to be progressing nicely. But when it has not set in two minutes, the customer has two choices --- wait or eat it raw. Software customers have had the same choices. The cook has another choice; he can turn up the heat. The result is often an omelette nothing can save --— burned in one part, raw in another. Now I do not think software managers have less inherent courage and firmness than chefs, nor than other engineering managers. But false scheduling to match the patron's desired date is much more common in our discipline than elsewhere in engineering. It is very difficult to make a vigorous, plausible, and job-risking defense of an estimate that is derived by no quantitative method, supported by little data, and certified chiefly by the hunches of the managers. Clearly two solutions are needed. We need to develop and publicize productivity figures, bug-incidence figures, estimating rules, and so on. The whole profession can only profit from sharing such data. Until estimating is on a sounder basis, individual managers will need to stiffen their backbones and defend their estimates with the assurance that their poor hunches are better than wish-derived estimates.
I'm pretty sure that estimating hasn't changed at all since t
-
Reading thru The Mythical Man Month and there are quite a few interesting items.
The Mythical Man-Month, Anniversary Edition: Essays On Software Engineering 2, Frederick P. Brooks Jr., eBook - Amazon.com[^]
Gutless Estimating Observe that for the programmer, as for the chef, the urgency of the patron may govern the scheduled completion of the task, but it cannot govern the actual completion. An omelette, promised in two minutes, may appear to be progressing nicely. But when it has not set in two minutes, the customer has two choices --- wait or eat it raw. Software customers have had the same choices. The cook has another choice; he can turn up the heat. The result is often an omelette nothing can save --— burned in one part, raw in another. Now I do not think software managers have less inherent courage and firmness than chefs, nor than other engineering managers. But false scheduling to match the patron's desired date is much more common in our discipline than elsewhere in engineering. It is very difficult to make a vigorous, plausible, and job-risking defense of an estimate that is derived by no quantitative method, supported by little data, and certified chiefly by the hunches of the managers. Clearly two solutions are needed. We need to develop and publicize productivity figures, bug-incidence figures, estimating rules, and so on. The whole profession can only profit from sharing such data. Until estimating is on a sounder basis, individual managers will need to stiffen their backbones and defend their estimates with the assurance that their poor hunches are better than wish-derived estimates.
I'm pretty sure that estimating hasn't changed at all since t
I am amazed no one mentioned project creep.... "Oh, can you add some mushrooms?", once you already folded the omelet.
A programmer, like a woman's work, is never done.
-
Reading thru The Mythical Man Month and there are quite a few interesting items.
The Mythical Man-Month, Anniversary Edition: Essays On Software Engineering 2, Frederick P. Brooks Jr., eBook - Amazon.com[^]
Gutless Estimating Observe that for the programmer, as for the chef, the urgency of the patron may govern the scheduled completion of the task, but it cannot govern the actual completion. An omelette, promised in two minutes, may appear to be progressing nicely. But when it has not set in two minutes, the customer has two choices --- wait or eat it raw. Software customers have had the same choices. The cook has another choice; he can turn up the heat. The result is often an omelette nothing can save --— burned in one part, raw in another. Now I do not think software managers have less inherent courage and firmness than chefs, nor than other engineering managers. But false scheduling to match the patron's desired date is much more common in our discipline than elsewhere in engineering. It is very difficult to make a vigorous, plausible, and job-risking defense of an estimate that is derived by no quantitative method, supported by little data, and certified chiefly by the hunches of the managers. Clearly two solutions are needed. We need to develop and publicize productivity figures, bug-incidence figures, estimating rules, and so on. The whole profession can only profit from sharing such data. Until estimating is on a sounder basis, individual managers will need to stiffen their backbones and defend their estimates with the assurance that their poor hunches are better than wish-derived estimates.
I'm pretty sure that estimating hasn't changed at all since t
2 things: 1 - The more time spent getting a requirements document and initial design correct, the better the estimate. Too many weak managers (i.e. not leaders) push to get "something" instead of the right thing, and the team and customer pay for that later. 2 - If a manager cannot or will not stand up to the customer (internal or external) and push back in order to manage the software development life cycle correctly, then that person lacks the leadership, management, and sales skills necessary to do the job. An effective manager makes an understandable and convincing case for doing things the right way. In the end, customers want success, not headaches and broken promises. Managers that do their job because they read how in some book, learned in some course, or got certified in some methodology are likely to fail. All those sources of information are good, but if the manager cannot synthesize that information into their experience, insight, and intelligence to figure out how to best manage a given project, then that manager needs to step aside or be replaced.
-
I am amazed no one mentioned project creep.... "Oh, can you add some mushrooms?", once you already folded the omelet.
A programmer, like a woman's work, is never done.
-
Reading thru The Mythical Man Month and there are quite a few interesting items.
The Mythical Man-Month, Anniversary Edition: Essays On Software Engineering 2, Frederick P. Brooks Jr., eBook - Amazon.com[^]
Gutless Estimating Observe that for the programmer, as for the chef, the urgency of the patron may govern the scheduled completion of the task, but it cannot govern the actual completion. An omelette, promised in two minutes, may appear to be progressing nicely. But when it has not set in two minutes, the customer has two choices --- wait or eat it raw. Software customers have had the same choices. The cook has another choice; he can turn up the heat. The result is often an omelette nothing can save --— burned in one part, raw in another. Now I do not think software managers have less inherent courage and firmness than chefs, nor than other engineering managers. But false scheduling to match the patron's desired date is much more common in our discipline than elsewhere in engineering. It is very difficult to make a vigorous, plausible, and job-risking defense of an estimate that is derived by no quantitative method, supported by little data, and certified chiefly by the hunches of the managers. Clearly two solutions are needed. We need to develop and publicize productivity figures, bug-incidence figures, estimating rules, and so on. The whole profession can only profit from sharing such data. Until estimating is on a sounder basis, individual managers will need to stiffen their backbones and defend their estimates with the assurance that their poor hunches are better than wish-derived estimates.
I'm pretty sure that estimating hasn't changed at all since t
Upon completing the omelette, and the patron then requests that it be 3 egg omelette and not the 2 egg that you delivered, what do you do? - Cook a 3rd egg solo and sit it next to the other omelette. - start from scratch. - Cook the 3rd egg then when nearly done add in the complete omelette hoping that it looks like it merges together.
-
2 things: 1 - The more time spent getting a requirements document and initial design correct, the better the estimate. Too many weak managers (i.e. not leaders) push to get "something" instead of the right thing, and the team and customer pay for that later. 2 - If a manager cannot or will not stand up to the customer (internal or external) and push back in order to manage the software development life cycle correctly, then that person lacks the leadership, management, and sales skills necessary to do the job. An effective manager makes an understandable and convincing case for doing things the right way. In the end, customers want success, not headaches and broken promises. Managers that do their job because they read how in some book, learned in some course, or got certified in some methodology are likely to fail. All those sources of information are good, but if the manager cannot synthesize that information into their experience, insight, and intelligence to figure out how to best manage a given project, then that manager needs to step aside or be replaced.
-
Upon completing the omelette, and the patron then requests that it be 3 egg omelette and not the 2 egg that you delivered, what do you do? - Cook a 3rd egg solo and sit it next to the other omelette. - start from scratch. - Cook the 3rd egg then when nearly done add in the complete omelette hoping that it looks like it merges together.
maze3 wrote:
Upon completing the omelette, and the patron then requests that it be 3 egg omelette and not the 2 egg that you delivered, what do you do?
- Cook a 3rd egg solo and sit it next to the other omelette.
- start from scratch.
- Cook the 3rd egg then when nearly done add in the complete omelette hoping that it looks like it merges together.
:thumbsup: You make great points about the original missing something and then what do you do. Clearly, Microservices is the answer here!!! :rolleyes: Phew...just need to mention Microservices two more times and I'll get my my buzzword quota in today. :-D
-
Reading thru The Mythical Man Month and there are quite a few interesting items.
The Mythical Man-Month, Anniversary Edition: Essays On Software Engineering 2, Frederick P. Brooks Jr., eBook - Amazon.com[^]
Gutless Estimating Observe that for the programmer, as for the chef, the urgency of the patron may govern the scheduled completion of the task, but it cannot govern the actual completion. An omelette, promised in two minutes, may appear to be progressing nicely. But when it has not set in two minutes, the customer has two choices --- wait or eat it raw. Software customers have had the same choices. The cook has another choice; he can turn up the heat. The result is often an omelette nothing can save --— burned in one part, raw in another. Now I do not think software managers have less inherent courage and firmness than chefs, nor than other engineering managers. But false scheduling to match the patron's desired date is much more common in our discipline than elsewhere in engineering. It is very difficult to make a vigorous, plausible, and job-risking defense of an estimate that is derived by no quantitative method, supported by little data, and certified chiefly by the hunches of the managers. Clearly two solutions are needed. We need to develop and publicize productivity figures, bug-incidence figures, estimating rules, and so on. The whole profession can only profit from sharing such data. Until estimating is on a sounder basis, individual managers will need to stiffen their backbones and defend their estimates with the assurance that their poor hunches are better than wish-derived estimates.
I'm pretty sure that estimating hasn't changed at all since t
A better question is, why are estimates that try to give specific timeframes important at all? I understand giving a broad swath, so the business can decide to pursue a project or not: if the estimate is "wow, this is huge", maybe they figure it's not worth doing. It seems that we've demonstrated time and again that for any non-trivial projects, estimates of completion are not only not accurate, they're mostly wildly inaccurate. Not necessarily due to the estimated work itself, but other things get in the way like support of current systems, illness, life events, whatever. It seems to me that it's a lot smarter try to break big projects into releasable chunks, and understand your dependencies. Then you might be able to say something like, "when step 1 is done, we'll start on step 2. Step 2 should take X days/weeks/months from its start date (which may not be immediately after step 1 completion)". If you can get your steps into small enough chunks to be understandable, you'll probably have a bit more success getting close to the time. Presenting things in this way makes it more understandable for non-technical people to understand dependencies and the fact the development does not have constant speed, and that they can also see progress on the overall project as we're ticking off steps.
-
Reading thru The Mythical Man Month and there are quite a few interesting items.
The Mythical Man-Month, Anniversary Edition: Essays On Software Engineering 2, Frederick P. Brooks Jr., eBook - Amazon.com[^]
Gutless Estimating Observe that for the programmer, as for the chef, the urgency of the patron may govern the scheduled completion of the task, but it cannot govern the actual completion. An omelette, promised in two minutes, may appear to be progressing nicely. But when it has not set in two minutes, the customer has two choices --- wait or eat it raw. Software customers have had the same choices. The cook has another choice; he can turn up the heat. The result is often an omelette nothing can save --— burned in one part, raw in another. Now I do not think software managers have less inherent courage and firmness than chefs, nor than other engineering managers. But false scheduling to match the patron's desired date is much more common in our discipline than elsewhere in engineering. It is very difficult to make a vigorous, plausible, and job-risking defense of an estimate that is derived by no quantitative method, supported by little data, and certified chiefly by the hunches of the managers. Clearly two solutions are needed. We need to develop and publicize productivity figures, bug-incidence figures, estimating rules, and so on. The whole profession can only profit from sharing such data. Until estimating is on a sounder basis, individual managers will need to stiffen their backbones and defend their estimates with the assurance that their poor hunches are better than wish-derived estimates.
I'm pretty sure that estimating hasn't changed at all since t
You cannot estimate creative work at all. We, the software engineers, only pretend it's possible to avoid the job-risking discussions with patrons. It is all just gut feeling, based on prior experience with similar tasks. The more experience the engineer has, the better the estimation will be. I think the best way would be to handle it like Scotty in Star Trek: Estimate for yourself first, tell the captain 3 times as much, make it in 2 times as much, and be admired for being the wunderkind. ;-)