Estimation of Project Duration and Team Size

Posted on 2007-07-21
Last Modified: 2013-11-25
In the project i have to work, i have 3 large applications, 10 medium sized applications and 30 small applications.

Applications written in Java, .NET etc. are to be rewritten into Oracle Pl/Sql.
So that they can be integrated into Oracle Apps.

The company is moving from mainframes into Oracle Apps architecture.

How do i estimate the team size and duration of the project.

The client wants to start the work from 1 August and finish off by 31 December
Question by:gram77
    LVL 3

    Accepted Solution

    This almost impossible to answer since it depends upon the skills of the developers and complexity of the applications.  Here is something I have used in the past to do the same sort of project.

    Break up each application into individual tasks and assign a size to each task, S, M, L.  There should be an even number of each task size.

    Take a good guess at the duration for each size of task:
     S = 1 day
     M = 3 days
     L = 8 days

    Staff the team to meek the project deadline and have them go for 2 weeks tracking the actual amount of time it takes to complete each of their tasks.  After that time compare the actuals against the estimates, then adjust the estimated durations of the rest of the project and restaff accordingly.  At the end of the second 2 weeks do the same thing, by now you will have a pretty good idea of how long tasks really take.  Continue the same process for the entire project.

    By using this I've been able to correctly staff a project after only 4 weeks and know pretty well how long it will take.  Just make sure that you break the applications down into small enough tasks and that you have an even number of each size of task.

    LVL 17

    Expert Comment

    Here is a project estimated using Use Cases..

    You could use this again as the basis for your estimates. Again it is based on complexity of the tasks..
    LVL 3

    Assisted Solution

    Hi gram77,

    As @markcallen says, it is pretty much impossible to estimate something as complex as a software project, especially a migration project, with the information you provide.  After all, something that is large to you could be considered medium/small to someone who is used to working with massuve systems, or vice versa.  

    The approach provided by @markcallen is sound, but i would add the following additional comments/suggestions:
    Do you have clearly documented and complete functional descriptions of what the existing applications do?  If you don't then how can you be sure the migrated app will perform in the same manner?  So you may need to spend some time documenting, or at least agreeing with the person who will sign-off the test results what is acceptable bahaviour and boundaries for the apps.

    I would also add, as a separate, parallel stream on your plan, testing for the migrations.  You need people for that too.  There are general 'rules of thumb' for proportion of test time vs development time, but I'm always a bit skeptical of these rules as again, it depends on the skill of the resources and the tools available to them.  Again, the 'try a little bit and revise your estimates on-the-fly' model will work here too.

    Another thing not to overlook in large migration work is the availablilty of kit to do your work on.  You will need development platform to do the work, but you will also need test platform to test it and perhaps user acceptance testing somewhere else.  then of course you need the target/production environment.  

    You should consider data too as mainframe to Oracle can result in data type incompatibilities and invariably, when you are asked to migrate something, you will get a raft of 'can you make this field bigger' or  'can you allow alpha characters in there' requests too.

    Hope this Helps - MorFF
    LVL 3

    Expert Comment

    Hi There - Did any of the above help?

    Thanks - MorFF

    Author Comment

    Markcallen  & MorFF:
    Thanks for your explanation. It is indeed helpful

    Featured Post

    How your wiki can always stay up-to-date

    Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
    - Increase transparency
    - Onboard new hires faster
    - Access from mobile/offline

    Join & Write a Comment

    I worked at a US software company that used offshore contractors for ten years and offshore employees for three years. We had a positive experience and you can too.   When I interviewed people for positions in the US, I would tell them that we wor…
    Documentation is a big contentious issue in Agile. There is a reason for this. When you start your presentation on Agile you start by going through the 4 statements of agile manifesto (…
    This video shows information on the Oracle Data Dictionary, starting with the Oracle documentation, explaining the different types of Data Dictionary views available by group and permissions as well as giving examples on how to retrieve data from th…
    This video shows how to copy an entire tablespace from one database to another database using Transportable Tablespace functionality.

    746 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    15 Experts available now in Live!

    Get 1:1 Help Now