You are preparing a bid for a refinery control system for Australian Petroleum Ltd (APL) using the CoCoMo 81 estimation model. You are familiar with industrial control system software but have not worked on a refinery system before. All costs and savings are to be measured in Person Months (PM), as these are directly equivalent to dollars. Do not make allowance for profit as that will be included in the dollars per PM. The project effort is therefore the project bid. Your preliminary analysis of the requirements (the draft System Requirements Specification) as stated in the request for proposal (RFP) from the client is as follows
Size = 256,000 sloc (source lines of code ie 256 KDS1)
Reliability = very high
Data base size = nominal
Product complexity = high
The computer system specified is a standard high end server running Unix. You estimate that there will be no significant time or storage constraints and that the virtual machine volatility and turnaround time are nominal. About 20% of the interfaces are very important as they are safety critical, the rest of the interfaces are not safety critical. You have no analysts experienced with refineries but your analysts are excellent people. Thus you rate
Analyst capability = high
Applications experience = very low
The programmers in your company are very busy. You expect to get a mix of staff from other projects that are ending and some new employees. Thus you rate
Programmer capability 'low',
Virtual machine experience 'low' and
Language experience 'very low' since the RFP specifies "C#" and none of your staff has ever used C# (which is most unusual).
You plan to use all available modern programming practices and to use the available C# programming support environment (.net) for the development, which is in its third release. You rate
MODP = 'high' and
TOOL as 'high' also.
1. Is this a semi-detached or embedded type development? Give your rationale.
For all the following questions use the embedded modes figures, even if it is not embedded mode.
2. What is your initial estimate of the total effort using the effort adjustment factors provided? Take the Schedule SCED as nominal. This answer is referred to below as the 'initial project cost' or 'initial estimate'.
3. The RFP specifies a 42 month schedule for development following a 12 month 'Requirements Review" phase (based on the "draft" SRS in the RFP). Rate the development schedule in one of the CoCoMo 81 categories and give your rationale. Recalculate the EAF if necessary.
For all the following questions use SCED=1.0
4. You can send your programmers to a 6 hour credit C# course at UTS during the six month "Requirements Review" and subsequently supplement this course with a "C# Techniques" in house course from a US vendor. The UTS course is a pre requisite for the C# techniques course
- The UTS course will cost the equivalent of 20 person months. You estimate that this course will raise the language rating from 'very low' to 'low'.
- The C# Techniques Class will cost the equivalent of 46 person months and raise the language rating to nominal.
What is the new project cost estimate (in Person Months) compared to the initial estimate if the two courses are the only changes you make? Should you therefore invest in the course?
5. During a meeting of IE(Aust) you meet an American assignee to Caltex from Texaco, (USA). You discover that he was the lead systems analyst on a recently completed refinery automation project in Beaumont, Texas. He is completing a refinery automation Feasibility Study for Caltex. You find out that he is available at a fixed fee that is the equivalent of 200 PM's (person months) over the project duration (he is very expensive!). You estimate that having "Mr X" as your lead analyst will raise your overall application experience rating to "nominal". Is it worth it to hire Mr. "X" as a consultant on these terms if you get the job? What is the new project cost compared to the initial project cost if this is the only change you make?
6. You estimate that 8 KDSI of your project is various utility routines. On the internet you find a C# utility module package from a very reputable vendor. You get the detailed documentation and give it to one of your senior programmers. He estimates that at least 3K of your 8K can be eliminated if you buy this package. It costs the equivalent of 12 person months in licence charges over the life of the project. What is the new project cost compared to the initial project cost if this is the only change you make? Should you plan on buying this package as part of your bid?