aspose file tools*
The moose likes Agile and Other Processes and the fly likes pls discuss about various estimation methods/techniques used in Java/OO projects.. Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Engineering » Agile and Other Processes
Bookmark "pls discuss about various estimation methods/techniques used in Java/OO projects.." Watch "pls discuss about various estimation methods/techniques used in Java/OO projects.." New topic
Author

pls discuss about various estimation methods/techniques used in Java/OO projects..

Ranga Kalidindi
Greenhorn

Joined: Mar 04, 2005
Posts: 17
Hi everyone,

Want to know about various estimation techniques for projects. Well, yes, I have been using Java since sometime now and I presume most ranchers do that as well, though many of you have rich overall project initiation and estimation experience. Just thought a discussion on that would only help me (us) in designing and executing projects better.

If some of you employ specific techniques like function-points or any other basis to estimate 'new development' projects (which start from a Buiness-Requirements phase) pls direct me to some good articles. I could find few articles on the net but they are too generic/vague.

Thanks,
-Ranga
Scott Ambler
author
Ranch Hand

Joined: Dec 12, 2003
Posts: 608
I have posted some good Estimating Tips at my Ambysoft site.

- Scott


<a href="http://www-306.ibm.com/software/rational/bios/ambler.html" target="_blank" rel="nofollow">Scott W. Ambler</a><br />Practice Leader Agile Development, IBM Rational<br /> <br />Now available: <a href="http://www.ambysoft.com/books/refactoringDatabases.html" target="_blank" rel="nofollow">Refactoring Databases: Evolutionary Database Design</a>
Ilja Preuss
author
Sheriff

Joined: Jul 11, 2001
Posts: 14112
We use a variant of the XP Planning Game: http://c2.com/cgi/wiki?PlanningGame


The soul is dyed the color of its thoughts. Think only on those things that are in line with your principles and can bear the light of day. The content of your character is your choice. Day by day, what you do is who you become. Your integrity is your destiny - it is the light that guides your way. - Heraclitus
Stan James
(instanceof Sidekick)
Ranch Hand

Joined: Jan 29, 2003
Posts: 8791
It's interesting that none of those tips tells you how to decide some task will take some number of days. That's still up to you based on your skills and a zillion unknowns that might speed you up or slow you down, like new technology, new business domain, new management.

Agile stuff doesn't really give you a new way to decide "This project will take ten people eleven months". If you have something that works for you, stick with it. My team is doing "more of the same" kind of work now, so we can eyeball a new deliverable and say "It's about like the last one ... 4 months!" fairly well - but not perfectly.

Agile stuff does give you great visibility and feedback to know how you're doing. You'll know in just a couple iterations whether your big estimate is any good. Break down small tasks, estimate them consistently with each other, and observe how fast you knock them off. Revise your scope / date estimate often!

Here are some things my team tries to do with Estimating and Planning


A good question is never answered. It is not a bolt to be tightened into place but a seed to be planted and to bear more seed toward the hope of greening the landscape of the idea. John Ciardi
Karthik Guru
Ranch Hand

Joined: Mar 06, 2001
Posts: 1209
Originally posted by Stan James:
It's interesting that none of those tips tells you how to decide some task will take some number of days.


For some reason I feel compelled to thank you for *stating* this.
May be its because of my ignorance - I was looking for something like that in the book xp Explained.
I picked up 'User Stories Applied'.. by cohn couple of days back (as well as the links that you provided ) and it makes me feel a lot better
Ilja Preuss
author
Sheriff

Joined: Jul 11, 2001
Posts: 14112
Originally posted by Stan James:
It's interesting that none of those tips tells you how to decide some task will take some number of days.


That's not true, as far as I can tell. The XP Planning Game, for example, can give you a rather accurate estimate, *if* you know the typical velocity of the team *and* the team can compare what will be done to things they did in the past.
Stan James
(instanceof Sidekick)
Ranch Hand

Joined: Jan 29, 2003
Posts: 8791
I think we're saying the same thing, I just left out a big *if* or two.

I meant none of the books will tell you what that velocity will be. You have to learn your own velocity from experience or take a wild guess. I'm not sure that an XP expert will give a better overall time/cost estimate for a business case than a RUP expert or a cocomo expert. I think stories are a sane and effective work breakdown for such an estimate but without sufficiently similar experience the story point to calendar day ratio is a big unknown. Until you actually start delivering stories.
[ November 17, 2005: Message edited by: Stan James ]
Scott Ambler
author
Ranch Hand

Joined: Dec 12, 2003
Posts: 608
Yes, fundamentally, if you don't know what you're doing then estimating is going to be problematic at best.

With the agile techniques you need to understand your velocity and have a handle on the relative complexity of the feature that you're implementing. You figure this out by model storming, discussion, ...

With traditional techniques such as function point counting or COCOMO you need to do a heck of a lot of up front analysis to get sufficient information to feed into those techniques.

Either way, you need to know what you're talking about to get a good estimate.

- Scott
Ranga Kalidindi
Greenhorn

Joined: Mar 04, 2005
Posts: 17
Thank you.
Use Case Points 'estimation technique' seem very convincing to me. Let me explain why claim it that way. I have a requirement with me and I was supposed to estimate the effort (and cost).

I tried using/applying Use Case Points on a recently 'completed' project (we initially estimated this using Function Points analysis and this project took about double the estimated effort) assuming that I knew very little about the problem (as in the initial stage of any project). To my surprise UCP gave me a near actual effort, as close as 18%.

Thanks a lot guys.

rgds,
Rangaraju.K
Jeff Langr
author
Ranch Hand

Joined: May 14, 2003
Posts: 762
You might take a look at Mike Cohn's new book Agile Estimating and Planning for some good techniques, even if you don't think you're doing agile software development.

-Jeff-


Books: Agile Java, Modern C++ Programming with TDD, Essential Java Style, Agile in a Flash. Contributor, Clean Code.
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: pls discuss about various estimation methods/techniques used in Java/OO projects..
 
Similar Threads
Estimating techniques
Question on Software Estimation.
XP:user stories
Software Project Estimation
Function Point Analysis