0% found this document useful (0 votes)
9 views5 pages

9 Class Activity 1

Software metrics are crucial for managing risks, estimating costs, and ensuring quality in software projects, focusing on size and defects. The document discusses various measures such as Lines of Code (LOC) and Halstead metrics, along with the COCOMO method for estimating effort and productivity. It also outlines software complexity types and presents a GQM graph for evaluating the effectiveness of a programming tool.

Uploaded by

Ali Sultan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views5 pages

9 Class Activity 1

Software metrics are crucial for managing risks, estimating costs, and ensuring quality in software projects, focusing on size and defects. The document discusses various measures such as Lines of Code (LOC) and Halstead metrics, along with the COCOMO method for estimating effort and productivity. It also outlines software complexity types and presents a GQM graph for evaluating the effectiveness of a programming tool.

Uploaded by

Ali Sultan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 5

Class Activity – SOFTWARE METRICS

Why Software Metrics are important?


Software metrics are essential for managing risks, estimating costs, and ensuring
quality in projects. They assess software size, defects, methods, and processes to
improve efficiency and outcomes.

What are the two central attributes used in Software Metrics?


1.Measuring Size

2.Measuring Defect

What LOC measure could be used for?


1. Estimating Effort and Cost

2. Quality assessment

3. productivity assessment

Mention 4 problem with LOC measure:


NO standard Definition
Length of programs are measure rather than size
Fails to take account of redundancy and resuse
Is only available at the end of the development life-cycle

Calculate the effort, the schedule, the productivity and the average staffing using
COCOMO method:
Assumption 1: our project fits the characteristics of Semi-Detached mode
Assumption 2: The project will have 32,000 Delivered Source Instructions.
Using the formulas, we can estimate:
Effort = 3.0*(48.5 ) =146 man-months (PM)
Schedule = 2.5*(145.5 )^0.35 = 14.3 months
Productivity = DSI / PM=32/146=0.21
= DSI/PM
Average Staffing = PM / months = 145.5/14.3= 10.1 FSP
(Full-time equivalent Software Personnel = Number of People Working on the
Project at a given Time)
What are the software size attributes?
1. Lines of Code (LOC):

2. Function Points (FP):

3. Unadjusted Function points.

What are the four types of software complexity?


1. – Problem complexity

2. – Structural complexity

3. – Algorithmic complexity

4. – Cognitive complexity

Calculate the program length, vocab, volume, difficulty and effort using Halstead
measure for the following block of code:
if (k < 2)
{
if (k > 3)
x = x*k;
}
Program length =17
Vocabulary=12
Volume=1037
Difficulty=7
Effort-7259
Calculate the program complexity by using McCabe’s Cyclomatic:

number of edges= 9
number of nodes= 7
9-7=2
2+2 =4
V(p)=4
Calculate the unadjusted function point for the following software assuming they
have average complexity:

UFC=4A +5B+4C+10D+7R=58 FPs

Construct a GQM graph for the goal of “Evaluate Effectiveness of Programming


Tool “X””

Goal
Evaluate Effectiveness of Programming Tool

Questions How easy is it to Are there fewer


•Does Tool “X” bugs/errors when
learn and use reduce the time
Tool “X”? using Tool “X”?
taken to complete
tasks compared to
other tools?

Metrics Time taken to learn Average time to Number of defects


the tool complete tasks using or bugs per line of
Tool “X” vs. other tools. code.
(hours/days).

You might also like