Bcse301l Se Module-2 Smsatapathy
Bcse301l Se Module-2 Smsatapathy
Bcse301l Se Module-2 Smsatapathy
Changed Functionality
Function Point Counting Steps
Step – 5: Calculate the Adjusted Function Point Count
Deleted Functionality
Function Point Counting Steps
Step – 5: Calculate the Adjusted Function Point Count
Unadjusted Function Point Count
(Added, Changed and Deleted)
Function Point Counting Steps
Step – 5: Calculate the Adjusted Function Point Count
The application value adjustment factor was 1.05 before the project
began.
The value adjustment factor remained the same after the project was
completed.
Using the complexity and contribution counts for this example, the
enhancement project function point count is shown below.
Function Point Counting Steps
Step – 5: Calculate the Adjusted Function Point Count
Use the formula in this section to establish the initial function point count for
an application. Initially, the user is receiving new functionality. There are no
changes to the existing functionality or deletions of obsolete or unneeded
functionality. The application function point count does not include conversion
requirements.
Establish the Initial Count
AFP = UFP * VAF
AFP is the initial application function point count.
UFP is the unadjusted function point count of those functions that were installed by the
development project.
VAF is the value adjustment factor of the application.
Function Point Counting Steps
Step – 5: Calculate the Adjusted Function Point Count
calculate the application function point count after an enhancement project:
AFP = [(UFPB + ADD + CHGA) - (CHGB + DEL)] * VAFA
AFP is the application's adjusted function point count.
UFPB is the application's unadjusted function point count before the enhancement project begins.
ADD is the unadjusted function point count of those functions that
were added by the enhancement project.
CHGA is the unadjusted function point count of those functions that were changed by the
enhancement project. This number reflects the size of the functions after the changes.
CHGB is the unadjusted function point count of those functions that were changed by the
enhancement project. This number reflects the size of the functions before the changes were made.
DEL is the unadjusted function point count of those functions that were deleted by the enhancement
project.
VAFA is the value adjustment factor of the application after the enhancement project is complete.
Function Point Counting Steps
Step – 5: Calculate the Adjusted Function Point Count
Initial Count
The initial application project count is shown below. The value adjustment factor is
1.05
AFP = UFP * VAF
AFP = 115 * 1.05
AFP = 120.75 or 121
Count after Enhancement
The application project function point count to reflect enhancements is shown
below. The value adjustment factor is 1.05.
Function Point Example
Function Point Example
Function Point Example
Function Point Example
An application has the following:
10 low external inputs, 12 high external outputs, 20 low
internal logical files, 15 high external interface files, 12 average
external inquiries, and a value of complexity adjustment factor of
1.10.
Interactive cost estimation software package that models the cost, effort
and schedule for a new software development activity.
Can be used on new systems or upgrades
Semidetached Mode
Effort = 3.0 (200)1.12 = 1133.12 PM
MTDEV = 2.5(1133.12)0.35 = 29.3 Months
1133.12
Average Staff Size (SS) = = 38.67 Persons
29.3
𝐾𝐿𝑂𝐶 200
Productivity = = = 0.1765 KLOC/PM
𝐸𝑓𝑓𝑜𝑟𝑡 1133.12
= 176 LOC/PM
Intermediate COCOMO
Takes basic COCOMO as starting point
Identifies personnel, product, computer and project attributes
which affect cost and development time.
Multiplies basic cost by attribute multipliers which may increase or
decrease costs
Intermediate COCOMO
Personnel attributes Computer attributes
Analyst capability Execution time constraints
Virtual machine experience Storage constraints
Programmer capability Virtual machine volatility
Programming language experience
Computer turnaround time
Application experience
What is the impact of hiring all developers from one or the other pool ?
Intermediate COCOMO Example
Solution:
This is the case of embedded mode and model is intermediate COCOMO.
Embedded Mode
CASE – I: Developers are very highly capable with very little experience in
the programming being used.
EAF = 0.82 x 1.14 = 0.9348
Effort = 0.9348 x 2.8 (400)1.20 = 3470 PM
MTDEV = 2.5(3470)0.32 = 33.9 Months
Intermediate COCOMO Example
Solution:
Embedded Mode
CASE – II: Developers are of low quality but lot of experience with the
programming language being used.
EAF = 1.29 x 0.95 = 1.22
Effort = 1.22 x 2.8 (400)1.20 = 4528 PM
MTDEV = 2.5(4528)0.32 = 36.9 Months
Case II requires more effort and time. Hence, low quality developers with lot of
programming language experience could not match with the performance of very
highly capable developers with very litter experience.
COCOMO Family
COCOMO 81, Revised Enhanced Version of Intermediate
COCOMO (REVIC), and COCOMO II
COCOMO 81
15 cost drivers
REVIC
Developed by Mr Raymond Kile, Hughes Aerospace
Uses PERT statistical method to determine SLOCs
PC compatible
The latest version of AFCAA REVIC is 9.2 released in 1994.
COCOMO Family
COCOMO II
Sensitivity analysis and calibration very important
17 cost drivers
In 1995 COCOMO II was developed and finally published in 2000 in
the book Software Cost Estimation with COCOMO II
Accuracy based on 89 projects
COCOMO - II
COCOMO 81 was developed with the assumption that a waterfall process
would be used and that all software would be developed from scratch.
Since its formulation, there have been many changes in software engineering
practice and COCOMO II is designed to accommodate different approaches to
software development.
COCOMO - II
COCOMO - II incorporates a range of sub-models that produce increasingly
detailed software estimates.
The sub-models in COCOMO - II are:
Application composition model - Used when software is composed from
existing parts.
Early design model - Used when requirements are available but design has
not yet started.
Reuse model - Used to compute the effort of integrating reusable
components.
Post-architecture model - Used once the system architecture has been
designed and more information about the system is available.
COCOMO - II
Application Prototype systems
Number of Based on Used for developed using
application points composition model scripting, DB
programming etc.
24 ∗(100 −10)
NOP = 100
= 21.6
COCOMO – II Example
Low value of Productivity (PROD) is 7
𝑁𝑂𝑃 21.6
Efforts in PM = 𝑃𝑅𝑂𝐷 = 7
= 3.086 PM
Project Scheduling
Scheduling is an important activity for the project managers.
To determine project schedule:
Identify tasks needed to complete the project.
Determine the dependency among different tasks.
Determine the most likely estimates for the duration of the identified
tasks.
Plan the starting and ending dates for various tasks.
Project Scheduling
Key Steps:
Project Scope and Requirements
Work Breakdown Structure (WBS)
Task Estimation
Determine Task Dependencies
Task Prioritization
Allocate Resources
Develop a Project Schedule
Identify Critical Path
Work Breakdown Structure
Work Breakdown Structure (WBS) provides a notation for
representing task structure:
Activities are represented as nodes of a tree.
The root of the tree is labelled by the problem name.
Each task is broken down into smaller tasks and represented as
children nodes.
A WBS is arranged in a hierarchy and constructed to allow for
clear and logical groupings, either by activities or deliverables.
Work Breakdown Structure
Example
Work Breakdown Structure
Example
Hierarchical Levels – contains three levels of work
Numbering Sequence – uses outline numbering as a unique identifier for all
levels
Level one is 1.0, which illustrates the project level.
Level two is 1.X (1.1, 1.2, 1.3, etc.), which is the summary level, and often the level at
which reporting is done.
Level three is 1.X.X (1.1.1, 1.1.2, etc.), which illustrates the work package level. The
work package is the lowest level of the WBS where both the cost and schedule can be
reliably estimated.
Lowest Level Descriptions – expressed using verbs and objects, such as
“make menu.”
Work Breakdown Structure
Three Types of WBS Structures
Product
Process / Service
Result / Outcome
Work Breakdown Structure
Product WBS
Decomposition of the Natural, Physical Structure of the Deliverable
The Deliverable is a Tangible Product
Work Breakdown Structure
Process / Service WBS
No Tangible Output Product
Main Event or “Service”
Decomposition Based on a Logical Grouping (not Physical Structure)
Often Developed Bottom-up
Detailed Activities May be Checklists
Lend Themselves to Templates
Work Breakdown Structure
Process / Service WBS
Work Breakdown Structure
Result / Outcome WBS
Project Does not have a Well-Structured Primary Product as a
Deliverable
May Have Several Products that Collectively Achieve the Planned
“Result”
Work Breakdown Structure
Result / Outcome WBS
Work Breakdown Structure
WBS is The Basis For......
Cost estimates and budgets.
Milestones & schedules.
Responsibility assignment.
Allocation of resources.
Schedule horizontal and vertical traceability.
Risk analysis.
Concurrence of participants.
Integrating the total project effort.
Summarizing costs, schedules, performance.
Forcing the Project Manager to think through all elements of the project.
Work Breakdown Structure
Methodology
Top-Down
Bottom- Up
Analogy
Mind Mapping
Project Scheduling
Project network representation involves using diagrams to
visualize the flow of activities in a project.
If required, the activities T1, T3 and T6 can be delayed, since they have
largest slack times.
Project Scheduling
Project Duration and Critical Activity
Hence, the critical activities are
T2, T4, T7, T9, T10
If required, the activities T1, T3 and T6 can be delayed, since they have
largest slack times.
Project Scheduling
Project Scheduling with Probabilistic Activity Durations
The CPM approach assumes that the duration of activities are known with certainty and
the actual duration will turn out to be exactly as estimated.
However, in practice this is not always possible and many projects involve variability in
activity times due to factors such as lack of prior experience, equipment breakdown,
unpredictable weather conditions, late delivery of supplies, and others.
PERT analysis is used when the duration of activities are not known with certainty.
PERT (Program Evaluation and Review Technique) is a variation of CPM:
incorporates uncertainty about duration of tasks.
Gantt charts can be derived automatically from PERT charts.
Gantt chart representation of schedule is helpful in planning the utilization of resources,
while PERT chart is more useful for monitoring the timely progress of activities.
Project Scheduling
Project Scheduling with Probabilistic Activity Durations
It involves three types of estimates of the duration of an activity instead of one
single value as in the case of CPM.
The optimistic duration a = the time an activity will take under the most
favourable conditions.
The pessimistic duration b = the time an activity will take under the most
unfavourable conditions.
The most likely duration m = the most realistic time an activity will require to be
completed, that is, the time an activity will take under normal conditions.
Project Scheduling
Project Scheduling with Probabilistic Activity Durations
Project Scheduling
Project Scheduling with Probabilistic Activity Durations
WHAT IS THE PROBABILITY OF COMPLETING THE PROJECT WITHIN 46 WEEKS?