Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I'm a developer in large IT company that is centered around providing services to clients (by that I mean development department is <20 people and not a major part of organisation). I'm solving different tasks relevant to current problems, and everything is fine so far, but management somehow came up with idea to implement some application that replicates most of features in industry award-winning products like MS's Visio or Autodesk's AutoCad.

They want to do that using available resources I've described above. My first answer was "that's impossible even in your most bold fantasies" because project of such measure is made by dozens of teams of developers/architects/testers, costs millions of dollars and develop-from-scratch period is at least 1,5-2 years.

They consider that, but have few counterarguments such as we don't have any deadlines on this project (legislation behind subject area is not yet done and may not be adopted in next few years) nor detailed specification so each implemented functionality can be considered as minor release that will be delivered to client and tested "on the field". And of course, we don't need 1:1 copy of Autocad, just "few major features like 10% of whole product functionality".

That arguments doesn't help in estimation at all, on the contrary it means we'll have a lot of uncertain requirement changes like "look at this feature of AutoCad and implement it" and test by customers and not professional QA department is (politically correct synonym for idiocy).

Any ideas how to reason and estimate such task? Though some numbers would be helpful, but all development costs/details of large projects are unavailable, I can operate only with such ambiguous facts as average known salary say of Microsoft SDE and timeline of MS Office releases i.e. talking about Visio.

share|improve this question
    
To find a base for cost estimate would be rather easy. 1) Find data on number Autocad copies sold and on average price for the copy. 2) Multiply these two figures, then 3) divide by ten, since they say ike 10% of whole product functionality - that'll be the base –  gnat Apr 28 '12 at 8:04
    
AutoCAD is world leader among CAD programs, its DWG and DXF file formats are defacto standards in CAD data exchange. Currently there are >4.000.000 AutoCAD copies sold all over the world <br/> Taking average price of copy at $3k, thats ~$120m. Looks reasonable. –  Jaded Apr 28 '12 at 8:34
    
great, now divide by 10 as suggested above and come up to management to start negotiating from $12M –  gnat Apr 28 '12 at 8:37
1  
...also, don't forget to negotiate how long is it going to take –  gnat Apr 28 '12 at 8:51
1  
@gnat I did this once when an outside customer wanted me to recreate a major piece of software. I asked the company that made the software how much a site license for the software would be. I then doubled the price and told the customer that is how much I would charge. Plus it would take me 5 years. When he realized that he would have to wait 5 years for what he could get now he went with the site license and I was hired to create tools for his group using the API. –  mhoran_psprep Apr 28 '12 at 11:41
show 2 more comments

1 Answer 1

up vote 1 down vote accepted

This sounds like the ideal project for a by-the-book scrum methodology (http://www.scrum.org/storage/scrumguides/Scrum_Guide.pdf).

Think of the project as delivering a number of tiny modules, each able to be released as they're finished, and each with a definite business value. Get a "product owner" from the business to prioritise the modules, and estimate them within your team. Continue in this vein for several iterations; and then, when the company finally realises that this project is a bad idea, they'll actually have something usable, rather than having a whole lot of unfinished work.

From iteration to iteration, your estimates will gradually improve, and before long, you'll have a really good feel for how much your team can complete within each iteration.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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