1. Intermediate cocomo
• Intermediate COCOMO introduces sets of 15 subjective assessment
called “Cost Drivers” to ensure that other aspects of Software
Development are taken into account in the cost estimation. Cost
drivers are divided into 4 groups including, product attributes,
hardware attributes, personal attributes, and project attributes.
• Subjective assessment, based on your weightage assigned
2. • When should you use it?
• ● Can be applied across the entire software product for easy and
rough cost estimation during the early stage
• ● or it can be applied at the software product component level for
more accurate cost estimation in more detailed stages
3. Why cocomo II
• approach uses various multipliers and exponents the values of which
have been set initially by experts.
• However, a database containing the performance details of executed
projects has been built up and periodically analysed so that the
expert judgements can be progressively replaced by values derived
from actual projects.
4. • estimates are required at different stages in the system life cycle and
COCOMO ll has been designed to accommodate this by having
models for three different stages
5. • Application composition Here the external features of the system that
the users will experience are designed. Prototyping will typically be
employed to do this. With small applications that can be built using
high-productivity application-building tools, development can stop at
this point.
• Early design- Here the fundamental software structures are designed.
With larger, more demanding systems, where, for example, there will
be large volumes of transactions and performance is important,
careful attention will need to be paid to the architecture to be
adopted.
6. • Post architecture Here the software structures undergo final
construction, modification and tuning to create a system that will
perform as required
7.
8.
9. • Each of cost driver is rated on the scale of are very low to
extremely high to calculate the specific effort multiplier and each
of them returns an adjustment factor which multiplied yields in
the total EAF (Effort Adjustment Factor).
• The scale includes very low, low, normal, high very high, extra
high, accordingly. The adjustment factor is 1 for a cost driver
that is judged as normal. In practice, typical values for EAF
range from 0.9 to 1.4.
10.
11.
12.
13.
14.
15.
16. Extension of COCOMO
• Although this article only cover about the COCOMO I model
(1981), but it is worthy for you to do further research on the
extension of this effective COCOMO model.
• An obvious example of COCOMO II (1995) is an extension of
COCOMO I used in other categories of Software development
process, such as Agile, Iterative waterfall, and spiral waterfall
model.
18. Exercise 2
• Using COCOMO and based on the team size (small) and experience (high), the concerned project could be
categorized as "organic". The experts, based on their prior experience, suggested that the project size could
roughly be around 10 KLOC. This would serve as the basis for estimation of different project parameters
using basic COCOMO
20. Exercise 3
• Consider a project to develop a full screen editor. The major
components identified and their sizes are (i) screen edit-4K ii)
Command Lang interpreter - 2K iii) File Input and output - 1K
• iv) Cursor movement- 2K v) screen movement- 3k.
• Assume the required software realiability is high, product complexity
is high, analyst capability is high and programming langauge
experience is low. Use COCOMO model II to estimate cost and time.
• Calculate the cost and time for each phases.
26. Shortcoming of basic and intermediate
cocomo
• Both models:
• consider a software product as a single homogeneous entity:
• However, most large systems are made up of several smaller sub-
systems.
• Some sub-systems may be considered as organic type, some may be
considered embedded, etc. for some the reliability requirements may
be high, and so on.
27. Pros
• COCOMO is transparent, one can see how it works unlike other
models such as SLIM.
• COCOMO works on historical data or the past experience, therefore it
is predictable and more accurate.
• Easy to implement factors, as the drivers help to estimate the impact
of different factors that affect the projects.
• Easy to estimate the total cost of the projects. This is because
COCOMO uses a regression formula from historical projects.
28. Cons
• Cocomo ignores the requirements of the project and also all the
related documentation related to the project.
• Cocomo ignores customer skills, cooperation, knowledge and other
parameters.
• When the Cocomo cannot establish a good understanding of the
project between the customers and the developers.
• Cocomo is dependent, If there are changes to the actual amount of
time spent on these phases, it will affect the accuracy.
• There are certain factors that are beyond the control of the
developers or customers such as hardware malfunctions and failures.
29. • “The models are just there to help, not to make the management
decisions for you.” -- Barry Boehm