Date post: | 03-Apr-2018 |
Category: |
Documents |
Upload: | meljun-cortes-mbampa |
View: | 224 times |
Download: | 0 times |
of 22
7/29/2019 MELJUN CORTES JEDI Slides-7.6 Software Metrics and Estimation
1/22
Software Engineering 1
Basic Software Project
Management
Software Metricsand Estimation
TOPIC SIX
7/29/2019 MELJUN CORTES JEDI Slides-7.6 Software Metrics and Estimation
2/22
Software Engineering 2
Software Metrics
It refers to a variety of measure used in computer software..
Measurements can be:
applied to software process with the intent of continuous
improvement. used throughout a software project to assist in estimation, quality
control, productivity assessment and project control.
used by software engineers to help assess the quality of technicalwork products and to assists in the tactical decision making as
project proceeds.
7/29/2019 MELJUN CORTES JEDI Slides-7.6 Software Metrics and Estimation
3/22
Software Engineering 3
Software Measurement
Reasons to indicate the quality of the product
to assess the productivity of the people who produce theproduct
to assess the benefits derived from new softwareengineering methods and tools
to form a baseline for estimation
to help justify request for new tools or additional training.
7/29/2019 MELJUN CORTES JEDI Slides-7.6 Software Metrics and Estimation
4/22
Software Engineering 4
Categories of Measurements
Direct Measurements
Software process measurements are cost and effort applied to thedevelopment of the software.
Product measurements are lines of code (LOC) produced,execution, speed, memory size and defects report over a period oftime.
Indirect Measurements
Product measurements are functionality, quality, complexity,efficiency, reliability, maintainability etc.
7/29/2019 MELJUN CORTES JEDI Slides-7.6 Software Metrics and Estimation
5/22
Software Engineering 5
Metrics Categorization
Size-oriented Metrics
It is used to collect direct measures of software outputand quality based on the line of codes (LOC) produced.
Function-oriented Metrics It is used to collect direct measures of software output
and quality based on the program's functionality orutitlity.
Human-oriented Metrics It provides measures collected about the manner in
which people develop computer software and humanperception about the effectiveness of methods and tools.
7/29/2019 MELJUN CORTES JEDI Slides-7.6 Software Metrics and Estimation
6/22
Software Engineering 6
Metrics Categorization Productivity Metrics
It refers to the measure on the output of softwareprocess.
Quality Metrics
It refers to the measure that provides indication of howclosely software conforms to implicit and explicitcustomer requirements.
It is used for software fitness.
Technical Metrics
It refers to the measure on the characteristic of theproduct such as logical complexity and degree ofmodularity.
7/29/2019 MELJUN CORTES JEDI Slides-7.6 Software Metrics and Estimation
7/22
Software Engineering 7
Size-oriented Metrics (LOC)
It consists of a table which keeps track of the followinginformation on each software project done by anorganization:
effort in terms of man-days or person-month
cost
lines of code generated
pages of documentation
number of people
7/29/2019 MELJUN CORTES JEDI Slides-7.6 Software Metrics and Estimation
8/22
Software Engineering 8
Size-oriented Metrics (LOC)
Project Effort Cost KLOC Pages Errors People
(in P)
Project One 22 222 .222 222 2 2 2
Project Two 22 222 .2 2 2 2222 22 2
Project Three 22 222 .222 2222 22 2
Project Four 22 22 22 22 22 2
Derived Metrics:Productivity = KLOC / person-months
Quality = errors / KLOC
Cost = Cost / KLOC
7/29/2019 MELJUN CORTES JEDI Slides-7.6 Software Metrics and Estimation
9/22
Software Engineering 9
Function-oriented Metrics:
Function Points (FP) focus on the program's functionality or utility
are derived using an empirical relationship based oncountable measures of software's information domain and
assessment of software complexity used for business information system applications
7/29/2019 MELJUN CORTES JEDI Slides-7.6 Software Metrics and Estimation
10/22
Software Engineering 10
Computation of Function
Point Determine the value of the information domain. Determine the complexity adjustment value.
Use the Function Point formula.
7/29/2019 MELJUN CORTES JEDI Slides-7.6 Software Metrics and Estimation
11/22
Software Engineering 11
Information Domain
Weighing Factor
Measurement Count Simple Average Complex
Number of User Input x 2 2 2 =
Number of User Output x 2 2 2 =
Number of User Inquiries x 2 2 2 =
Number of Files x 2 22 22 =
Number of External Interfaces x 2 2 22 =
Count-Total =
7/29/2019 MELJUN CORTES JEDI Slides-7.6 Software Metrics and Estimation
12/22
Software Engineering 12
Complexity Adjustment Value2 2 2 2 2 2
No Influence Incidental Moderate Average Significant Essential
Fx:1. Does the system requirereliable backup?
2. Are data communications required?3. Are there distributed processing functions?4. Is performance critical?5. Will the system run in an existing, heavily utilized operational environment?6. Does the system require on-line data entry?7. Does the on-line data entry require the input transaction to be built over multiplescreens or operations?8. Are the master files updated on-line?
9. Are the inputs, outputs, files, or inquiries complex?10. Is the internal processing complex?11. Is the code design to be reusable?12. Are conversion and installation included in the design?13. Is the system designed for multiple installations in different organizations?14. Is the application designed to facilitate change and ease of use by the user?
7/29/2019 MELJUN CORTES JEDI Slides-7.6 Software Metrics and Estimation
13/22
Software Engineering 13
Function Point Formula
FP = Count-Total x [0.65 + 0.01 x sum(Fx)]
7/29/2019 MELJUN CORTES JEDI Slides-7.6 Software Metrics and Estimation
14/22
Software Engineering 14
Function Points
Derived Metrics:
Productivity = FP / person-months
Quality = Defects / FP
Cost = Cost / FP
7/29/2019 MELJUN CORTES JEDI Slides-7.6 Software Metrics and Estimation
15/22
Software Engineering 15
Reconciling LOC and FP
Program m ing LanguagesLOC/FP (Average)
Assem bly Language 222
C 222
Cobol 22
Ada 2 2 2
Java 22
Perl 2 2
Visual Bas ic 22
SQL 22C++ 22
7/29/2019 MELJUN CORTES JEDI Slides-7.6 Software Metrics and Estimation
16/22
Software Engineering 16
Software Estimation
Requirements
experience
access to good historical information
courage to commit to quantitative measures when qualitative dataare all that exists
7/29/2019 MELJUN CORTES JEDI Slides-7.6 Software Metrics and Estimation
17/22
Software Engineering 17
Using FP and LOC
Assume that the project similar to PROJECT FOUR of theSoftware Metrics History.
Steps:
Compute the Function Point. Determine the estimated LOC.
Use Derived Formulas for the effort and cost estimation.
7/29/2019 MELJUN CORTES JEDI Slides-7.6 Software Metrics and Estimation
18/22
Software Engineering 18
Compute the Function Point
Information Domain Weighting FactorMeasurement Parameter Count S imple Average Complex
Number of User Inputs 2 x 3 4 6 6
Number of User Outputs 5 x 4 5 7 20Number of User Inquiries 3 x 3 4 6 9
Number of Files 2 x 7 10 15 14
Number of External
Interfaces
2 x 5 7 10 10
Count-Total 59
7/29/2019 MELJUN CORTES JEDI Slides-7.6 Software Metrics and Estimation
19/22
Software Engineering 19
Compute the Function Point
2. Are data communications required? 3
3. Are there distributed processing functions? 1
4. Is performance critical? 2
5. Will the system run in an existing, heavily utilized operational environment? 3
6. Does the system require on-line data entry? 4
7. Does the on-line data entry require the input transaction to be built over multiplescreens or operations? 2
8. Are the master files updated on-line? 2
9. Are the inputs, outputs, files, or inquiries complex? 1
10.Is the internal processing complex? 1
11.Is the code designed to be reusable? 4
12.Are conversion and installation included in the design? 3
13.Is the system designed for multiple installations in different organizations? 1
14.Is the application designed to facilitate change and ease of use by the user? 1
Total= 31
FP = 59 X [0.65 + 0.01 x 31] = 56.64 FP
7/29/2019 MELJUN CORTES JEDI Slides-7.6 Software Metrics and Estimation
20/22
Software Engineering 20
Determine the LOC
The project heavily uses JAVA.
LOC = 56.64 * 63 = 3568.32 LOC
7/29/2019 MELJUN CORTES JEDI Slides-7.6 Software Metrics and Estimation
21/22
Software Engineering 21
Derive effort and cost
estimatesCost Estimates are computed as follows:
Cost of Producing a single LOC (From the Database): KLOC / Cost
Cost/KLOC = P30,000/15,000LOC = P2.00/LOC
Cost of the project = 3568.32 * 2.00 = P7136.64
Effort Estimates are computed as follows:
Number of LOC produced in a month (From the Database): KLOC/EffortKLOC/Effort = 15,000LOC / 8 months = 1875 LOC / month
Effort of the project = 3568.32 / 1875 = 1.9 or 2 months
7/29/2019 MELJUN CORTES JEDI Slides-7.6 Software Metrics and Estimation
22/22
Software Engineering 22
Summary
Software Metrics
Categories of Measurement
Size-oriented Metrics
Lines Of Code (LOC)
Software Metric History
Function-oriented Metrics
Function Points (FP
Reconciling LOC and FP Metrics Project Estimations