Software Engineering

profileXdevil69
EstimatingEffortv2.pptx

Effort Estimates

COMP 380: Software Engineering

Estimating Process

Identify Requirements

Create High-Level Design

Break High-Level Design into smaller work packages

Map requirements to work packages

Create work packages for each development activity (Requirements, Design, Implementation, Testing)

Add in work packages related to project management

Add in work packages of other activities

Create Effort Estimate for each work package

Requirements

Create Deliverable

Define attributes

Requirements satisfied by Deliverable

Tasks necessary to complete Deliverable

Save Deliverable

Retrieve Deliverable

Display Deliverable

Attribute
Unique Identifier
Name
Description
Due Date
List of Requirements
List of Tasks

Hight-Level Design

Graphical User Interface

Middle-Ware

Database

Work Break-down Structure

Estimating S/W Development Effort - WBS

Phase
Component Requirements Design Implementation Testing Total
Deliverable Creation Form          
Deliverable Display Form          
Create Deliverable          
Retrieve Deliverable          
Update Deliverable          
Delete Deliverable          
Display Deliverables          
Associate Requirements to Deliverable          
Retrieve Requirements for Deliverable          
Update Requirements for Deliverable          
Un-associate Requirement to Deliverable          
Associate Tasks to Deliverable          
Retrieve Tasks for Deliverable          
Update Tasks for Deliverable          
Un-associate Task to Deliverable          
Grand Total

Estimating S/W Dev. Effort - COCOMO

Component SLOC
Deliverable Creation Form  
Deliverable Display Form  
Create Deliverable  
Retrieve Deliverable  
Update Deliverable  
Delete Deliverable  
Display Deliverables  
Associate Requirements to Deliverable  
Retrieve Requirements for Deliverable  
Update Requirements for Deliverable  
Un-associate Requirement to Deliverable  
Associate Tasks to Deliverable  
Retrieve Tasks for Deliverable  
Update Tasks for Deliverable  
Un-associate Task to Deliverable  
Grand Total

Organic: Effort = [3.2 x (size)1.05] x PROD(f’s)

Semidetached: Effort = [3.2 x (size)1.12] x PROD(f’s)

Embedded: Effort = [3.2 x (size)1.20] x PROD(f’s)

Estimating S/W Dev. Effort - Function Points

Component Type Function Points Weight Total
Deliverable Creation Form        
Deliverable Display Form        
Create Deliverable        
Retrieve Deliverable        
Update Deliverable        
Delete Deliverable        
Display Deliverables        
Associate Requirements to Deliverable        
Retrieve Requirements for Deliverable        
Update Requirements for Deliverable        
Un-associate Requirement to Deliverable        
Associate Tasks to Deliverable        
Retrieve Tasks for Deliverable        
Update Tasks for Deliverable        
Un-associate Task to Deliverable        
Unadjusted Function Points (UFP)

Total Complexity Factor (TCF) = 0.65 + [(0.01) x (sum of technical complexity factors)]

Function Points = UFP x TCF

Effort = (Function Points) / (Function Points per Person-Month)

Estimating S/W Dev. Effort – Simplified OO

Component Classes GUI Weight Productivity Total
Deliverable Creation Form        
Deliverable Display Form        
Create Deliverable        
Retrieve Deliverable        
Update Deliverable        
Delete Deliverable        
Display Deliverables        
Associate Requirements to Deliverable        
Retrieve Requirements for Deliverable        
Update Requirements for Deliverable        
Un-associate Requirement to Deliverable        
Associate Tasks to Deliverable        
Retrieve Tasks for Deliverable        
Update Tasks for Deliverable        
Un-associate Task to Deliverable        
Grand Total

Project Management Tasks

Initiating Planning Executing Monitoring and Controlling Closing
Develop Project Charter Develop Project Management Plan Direct and Manage Project Work Monitor & Control Project Work Close Project or Phase
Identify Stakeholders Plan Scope Management Perform Quality Assurrance Perform Integrated Change Control Close Procurement
Collect Requirements Acquire Project Team Control Schedule
Define Scope Develop Project Team Control Costs
Create Work Breakdown Structure Manage Project Team Control Quality
Plan Cost Management Manage Communications Control Communications
Estimate Costs Conduct Procurement Control Risks
Determine Budget Manage Stakeholder Engagement Control Procurement
Plan Quality Management Control Stakeholder Engagement
Plan Human Resource Management
Plan Communications Management
Plan Risk Management
Identify Risks
Perform Qualitative Risk Analysis
Perorm Quantitative Risk Analyiss
Plan Risk Response
Plan Procurement Management
Plan Stakeholder Management

Other Tasks

Miscellaneous Software Development Tasks

High-Level Design

Training

Help System

Documentation

Integration (Component, Subsystem, System)

Integration Testing (Component, Subsystem, System)

Packaging

Delivery

Other Tasks

Meetings (internal and client)

Other Factors

Use of Libraries and existing code

Use of commercial products (e.g., DBMS)

Re-usability

Interactive Development Environments

Programming Language(s) used

Deliverables

A Deliverable is a tangible or intangible good or service produced as a result of a project that is intended

to be delivered to the Custom er.

Project Managers must know the requirements satisfied by the Deliverable , when each Deliverable is

scheduled to be delivered to the Customer and the Tasks necessary to complete the deliverable .

The PMS shall provide a Project Manager with the capability to create Deliverables and list the

Deliverables created. The PMS shall permit a Project Manager to define the attributes listed

Deliverable

Requirement

Task

Deliverable

Requirement

Task

GUI

Deliverables

Tasks

Deliverable Input

Form

Deliverable List

Project

Management

System

Middleware

Database