Professional Documents
Culture Documents
Software Metrics
1 2
Software Engineering UNIT III . 3 Dr. Rabins Porwal Software Engineering UNIT III . 4 Dr. Rabins Porwal
3 4
Software Engineering UNIT III . 5 Dr. Rabins Porwal Software Engineering UNIT III . 6 Dr. Rabins Porwal
5 6
7 8
• productivity
Software Engineering UNIT III . 9 Dr. Rabins Porwal Software Engineering UNIT III . 10 Dr. Rabins Porwal
9 10
11 12
Software Engineering UNIT III . 13 Dr. Rabins Porwal Software Engineering UNIT III . 14 Dr. Rabins Porwal
13 14
Software Engineering UNIT III . 15 Dr. Rabins Porwal Software Engineering UNIT III . 16 Dr. Rabins Porwal
15 16
17 18
19 20
Function point approach is independent of the language, Function points are directly linked to the statement of
tools, or methodologies used for implementation; i.e. they requirements; any change of requirements can easily
do not take into consideration programming languages, be followed by a re-estimate.
data base management systems, processing hardware or Function points are based on the system user’s
any other data base technology.
external view of the system, non-technical users of
Function points can be estimated from requirement the software system have a better understanding of
specification or design specification, thus making it what function points are measuring.
possible to estimate development efforts in early phases of
development.
Software Engineering UNIT III . 21 Dr. Rabins Porwal Software Engineering UNIT III . 22 Dr. Rabins Porwal
21 22
23 24
25 26
Software Metrics
Software Metrics Table 3 : Computing function points
Rate each factor on a scale of 0 to 5.
0 1 2 3 4 5
determining whether a particular entry is Low, Average or High. 1. Does the system require reliable backup and recovery ?
Nonetheless, the determination of complexity is somewhat 2. Is data communication required ?
3. Are there distributed processing functions ?
subjective. 4. Is performance critical ?
5. Will the system run in an existing heavily utilized operational environment ?
FP = UFP × CAF 6. Does the system require on line data entry ?
7. Does the on line data entry require the input transaction to be built over multiple screens or operations ?
8. Are the master files updated on line ?
Where CAF is complexity adjustment factor and is equal to [0.65 + 9. Is the inputs, outputs, files, or inquiries complex ?
0.01 x ΣFi]. The Fi (i=1 to 14) are the degree of influence and are 10. Is the internal processing complex ?
based on responses to questions noted in table 3. 11. Is the code designed 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 ?
Software Engineering UNIT III . 27 Dr. Rabins Porwal Software Engineering UNIT III . 28 Dr. Rabins Porwal
27 28
These metrics are controversial and are not universally acceptable. Number of user enquiries = 35
There are standards issued by the International Functions Point User Number of user files = 06
Group (IFPUG, covering the Albrecht method) and the United
Number of external interfaces = 04
Kingdom Function Point User Group (UFPGU, covering the MK11
method). An ISO standard for function point method is also being Assume all complexity adjustment factors and weighting factors are
developed. average. Compute the function points for the project.
Software Engineering UNIT III . 29 Dr. Rabins Porwal Software Engineering UNIT III . 30 Dr. Rabins Porwal
29 30
31 32
33 34
35 36
Hence FP = 449
Software Engineering UNIT III . 37 Dr. Rabins Porwal Software Engineering UNIT III . 38 Dr. Rabins Porwal
37 38
Software Engineering UNIT III . 39 Dr. Rabins Porwal Software Engineering UNIT III . 40 Dr. Rabins Porwal
39 40
41 42
Software Engineering UNIT III . 43 Dr. Rabins Porwal Software Engineering UNIT III . 44 Dr. Rabins Porwal
43 44
Software Engineering UNIT III . 45 Dr. Rabins Porwal Software Engineering UNIT III . 46 Dr. Rabins Porwal
45 46
Software Engineering UNIT III . 47 Dr. Rabins Porwal Software Engineering UNIT III . 48 Dr. Rabins Porwal
47 48
and difficulty
The first term in the parentheses, 2, represents the two operators for the
procedure call – the procedure name and a grouping symbol that
separates the procedure name from its parameters. The second term
represents the number of conceptually unique input and output
parameters. It can probably be determined for small appln. programs, it is
much more difficult to compute for large programs, such as compiler or
an operating system.
Software Engineering UNIT III . 49 Dr. Rabins Porwal Software Engineering UNIT III . 50 Dr. Rabins Porwal
49 50
Software Engineering UNIT III . 51 Dr. Rabins Porwal Software Engineering UNIT III . 52 Dr. Rabins Porwal
51 52
Example- 6.I
Consider the sorting program in Fig. 2 shown previously. List out the
operators and operands and also calculate the values of software
science measures like
Software Engineering UNIT III . 53 Dr. Rabins Porwal Software Engineering UNIT III . 54 Dr. Rabins Porwal
53 54
Software Engineering UNIT III . 55 Dr. Rabins Porwal Software Engineering UNIT III . 56 Dr. Rabins Porwal
55 56
57 58
D=1/L
59 60
Example- 6.2
Table 3
Software Engineering UNIT III . 61 Dr. Rabins Porwal Software Engineering UNIT III . 62 Dr. Rabins Porwal
61 62
Table 4
Table 3
Software Engineering UNIT III . 63 Dr. Rabins Porwal Software Engineering UNIT III . 64 Dr. Rabins Porwal
63 64
Table 4
Software Engineering UNIT III . 65 Dr. Rabins Porwal Software Engineering UNIT III . 66 Dr. Rabins Porwal
65 66
Software Metrics
Minimal volume V* = 20.4417
Effort
Time T =
= 1527.1295 seconds
= 25.452 minutes
67