A SEMINAR ON COCOMO Presentation by Kongkon Mahanta

  • Slides: 13
Download presentation
A SEMINAR ON “COCOMO” Presentation by, Kongkon Mahanta MCA 4 th sem Roll no-

A SEMINAR ON “COCOMO” Presentation by, Kongkon Mahanta MCA 4 th sem Roll no- 8

PROJECT ESTIMATION TECHNIQUES The important project parameters that are estimated include Project size Effort

PROJECT ESTIMATION TECHNIQUES The important project parameters that are estimated include Project size Effort required to develop the software Project duration Cost Three broad categories of estimation techniques: Emipirical estimation techniques: EXPERT JUDGEMENT & DELPHI ESTIMATION Analytical estimation techniques: HALSTEAD’S SOFTWARE SCIENCE Heuristic technique: COCOMO

COCOMO(COnstructive COst estimation MOdel) Boehm’s definition of different kinds of software as follows :

COCOMO(COnstructive COst estimation MOdel) Boehm’s definition of different kinds of software as follows : Organic v Developmental team is small v Team members are experienced in developing similar types of project Semidetached v Developmental team consist of experienced and inexperienced staff v Team members have limited experience on related system

COCOMO(COnstructive COst estimation MOdel) Embedded v Developmental project is of embedded type v Software

COCOMO(COnstructive COst estimation MOdel) Embedded v Developmental project is of embedded type v Software being developed is strongly coupled to complex hardware According to boehm, software cost estimation should be done through three stages: Ø Basic COCOMO Ø Intermediate COCOMO Ø Complete COCOMO

BASIC COCOMO model The basic COCOMO model is given by the following expression: Effort=

BASIC COCOMO model The basic COCOMO model is given by the following expression: Effort= a 1 x (KLOC)a 2 PM Tdev= b 1 x (Effort)b 2 months Where o KLOC=Estimated size of software product expressed in Kilo lines of code o a 1, a 2, b 1, b 2 are constants for each category of software products o Tdev is the estimated time to develop the software expressed in months o Effort is the total effort required to develop the software product, expressed in person month(PMs)

BASIC COCOMO model Estimation of development effort ORGANIC: Effort = 2. 4 x (KLOC)1.

BASIC COCOMO model Estimation of development effort ORGANIC: Effort = 2. 4 x (KLOC)1. 05 PM SEMIDETACHED: Effort = 3. 0 x (KLOC)1. 12 PM EMBEDDED : Effort = 3. 6 x (KLOC)1. 20 PM Estimation of development time ORGANIC: Tdev = 2. 5 x (Effort)0. 38 months SEMIDETACHED: Tdev = 2. 5 x (Effort)0. 35 months EMBEDDED : Tdev = 2. 5 x (Effort)0. 32 months

AN EXAMPLE PROBLEM: Assume that the size of an organic type software product has

AN EXAMPLE PROBLEM: Assume that the size of an organic type software product has been estimated to be 32, 000 lines of source code. Assume that the average salary of software developers is Rs 15, 000 per month. Determine the effort required to develop the software product, the development time, and the cost to develop the product SOLUTION: Effort = 2. 4 x (32)1. 05 = 91 PM Nominal developmental time = 2. 5 x (91)0. 38 =14 months Cost required to develop the software = 91 X 15, 000 = Rs 1, 465, 000

INTERMEDIATE COCOMO MODEL After determining the initial estimate, some other factors are incorporated to

INTERMEDIATE COCOMO MODEL After determining the initial estimate, some other factors are incorporated to get the final estimate. It uses a 15 different cost drivers based on various attributes of software development. Each cost driver has a rating scale, and for each rating, a multiplying factor is provided. Cost drivers can be classified as being attributes of: 1. Product 2. Computer 3. Personnel 4. Development environment

EFFORT MULTIPLIERS FOR COST DRIVER Product attributes Very low Requires reliability 0. 75 Database

EFFORT MULTIPLIERS FOR COST DRIVER Product attributes Very low Requires reliability 0. 75 Database size Product complexity Computer attributes 0. 70 Very low nominal high Very high Personnel attributes Very low nominal High Very high 0. 88 1. 00 1. 15 1. 40 Analyst capability 1. 46 1. 19 1. 00 0. 86 0. 94 1. 00 1. 08 1. 16 Application experience 1. 29 1. 13 1. 00 0. 91 0. 71 0. 85 1. 00 1. 15 1. 30 Programmer capabilty 1. 42 1. 17 1. 00 0. 86 0. 82 Virtual machine exp. 1. 21 1. 10 1. 00 0. 90 0. 70 Programming language exp. 1. 14 1. 07 1. 00 0. 95 nominal high very high 1. 30 Project atttibutes Very low nominal High Very high Modern programming 1. 24 1. 10 1. 00 0. 91 0. 82 Execution time 1. 00 Main storage 1. 00 1. 06 1. 21 1. 11 Virtual machine 0. 8 7 1. 00 1. 15 1. 30 Use of s/w tools 1. 24 1. 10 1. 00 0. 91 0. 83 Turnaround time 0. 8 7 1. 00 1. 07 1. 15 Developmental schedule 1. 24 1. 08 1. 00 1. 04 1. 10

Product attributes Very low Requires reliability 0. 75 Database size Product complexity Computer attributes

Product attributes Very low Requires reliability 0. 75 Database size Product complexity Computer attributes 0. 70 Very low EXAMPLE TO USE THE EFFORT MULTIPLIERS FOR COST DRIVER(Product low nominal high Very high and Computer) 0. 88 1. 00 1. 15 1. 40 Let the database size is high and the turnaround time is low 0. 94 1. 00 1. 08 1. 16 0. 85 1. 00 1. 15 1. 30 Then effort adjustment factor(EAF)= 1. 08 * 0. 87=0. 9396 low nominal high very high From earlier example, the effort for the project is, E = 2. 4 x (32)1. 05 = 91 pm Execution time 1. 00 1. 11 1. 30 Main storage 1. 00 1. 06 1. 21 Virtual machine 0. 87 1. 00 1. 15 1. 30 Turnaround time 0. 87 1. 00 1. 07 1. 15 Using the EAF, the adjusted effort estimate is E(f)=91* 0. 9396= 85. 5 PM

COMPLETE COCOMO Large systems are break down into several small subsystem Subsystems may have

COMPLETE COCOMO Large systems are break down into several small subsystem Subsystems may have different characteristics. Maybe organic, semidetached and embedded The cost of the each subsystem is estimated separately ans summed up to give the overall cost of the system

LIMITATION OF COCOMO is not a perfect realistic model. Assumptions made at the beginning

LIMITATION OF COCOMO is not a perfect realistic model. Assumptions made at the beginning may vary as time progresses in developing the project. When need arises to revise the cost of the project. A new estimate may show over budget or under budget for the project. Thus any changes in the requirements are not accommodated for calculation of cost of the project.

Thank you for your cooperation……… Any queries? ? ? then please forward

Thank you for your cooperation……… Any queries? ? ? then please forward