CMU-CS 462 - Software Meassurement and Analysis - 2024S - Lecture Slides - 1
CMU-CS 462 - Software Meassurement and Analysis - 2024S - Lecture Slides - 1
CMU-CS 462 - Software Meassurement and Analysis - 2024S - Lecture Slides - 1
1 2
1
08/01/2024
Contents
1. What is measurement?
Overview of Software Metrics 2. What are software metrics?
3. Scope of software engineering metrics:
a chronological review.
Nguyen Duc Man
E: [email protected]
T: 0904235945
10
3 4
2
08/01/2024
5 6
5 6
3
08/01/2024
Entity Attribute
◼ An entity in software measurement can be ◼ An attribute is a feature or property of an entity
e.g., blood pressure of a person, cost of a journey, duration of
any of the following: ◼
7 8
4
08/01/2024
10
9 10
5
08/01/2024
◼ Attribute: Size
◼ What entities (objects) should be selected? ◼ Possible measures:
◼ NCSLOC (Not Commented Source Lines of
◼ What attributes should be selected?
Code Code)
◼ What values should be assigned to the attributes? ◼ #Statements
◼ #Modules
◼ What shall be the rules (relationships) ascribed to the
◼ #Procedures
attributes and their entities?
◼ #Classes
◼ …
either quantitative or qualitative.
11
11 14
6
08/01/2024
22 16
15 16
7
08/01/2024
◼ The less you know, the more you make! - Counter intuitive measurements, such as software quality.
- Needs validation
17 18
17 18
8
08/01/2024
Measurement in SE Measurement in SE /1
◼ Measurement in SE is selecting, measuring ◼ Before a measurement project can be planned
and putting together many different attributes ◼ Objectives and scope should be established
of the software, and adding our subjective ◼ Alternative solutions should be considered
interpretations in order to get a whole picture ◼ Technical and management constraints should be
of the software. identified.
◼ This is not a ◼ This information is required to estimate costs,
trivial task! project tasks, and a project schedule.
◼ 300+ metrics have
been defined.
19 20
19 20
9
08/01/2024
Measurement in SE /2 Measurement in SE /3
◼ In order to manage software measurement project ◼ Software metrics help us understand the technical
one must understand and plan: process that is used to develop a software product.
◼ The goal and scope of work ◼ The process is measured to be improved.
◼ The product is measured to increase its quality.
◼ Risks
◼ Resources required But …
◼ Measuring software projects is controversial.
◼ Tasks to be accomplished
◼ Milestones to be tracked ◼ It is not yet clear which are the appropriate metrics
21 22
21 22
10
08/01/2024
23 International 24
School
23 24
11
08/01/2024
Failure number
◼ Maker’s data shows that we need to change the toner every
10,000 pages. We would like to have only one failure during the ◼ Using reliability
period. demonstration
chart we can
◼ During test period, we observe that failures occur at 4,000 conclude that the
printer must be
pages, 6,000 pages, 10,000 pages, 11,000 pages, 12,000 pages
rejected. Normalized measurement unit
25 26
12
08/01/2024
35 36
27 28
13
08/01/2024
39
29 30
14
08/01/2024
39 40
31 32
15
08/01/2024
41 42
33 34
16
08/01/2024
43 44
35 36
17
08/01/2024
0
(P) ( ) =
0 +1
45 46
37 38
18
08/01/2024
39 40
19
08/01/2024
49 50
41 42
20
08/01/2024
51 52
43 44
21
08/01/2024
53 54
45 46
22
08/01/2024
55 56
47 48
23
08/01/2024
◼ https://www.youtube.com/watch?v=bnydxXPN_rI
(overview SM)
◼ https://www.youtube.com/watch?v=jiOaywcVssQ
(Software Metrics)
◼ Questions
◼ How important software measures are?
◼ List at least 5 software metrics and short description
for each.
◼ What are the characteristics of software metrics?
49
24