Presentation is loading. Please wait.

Presentation is loading. Please wait.

Creator: ACSession No: 7 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringSeptember 2005 Software Measurement – Estimation and Productivity CSE300.

Similar presentations


Presentation on theme: "Creator: ACSession No: 7 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringSeptember 2005 Software Measurement – Estimation and Productivity CSE300."— Presentation transcript:

1 Creator: ACSession No: 7 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringSeptember 2005 Software Measurement – Estimation and Productivity CSE300 Advanced Software Engineering University of Sunderland © 2005 Anne Comer anne.comer@sunderland.ac.uk

2 CSE300Advanced Software EngineeringSeptember 2005 Creator/Editor: ACSession No:7 Slide No: 2Reviewer: SS Objectives for this Lecture 1.The review the estimation and measurement of product attributes 2.Identify the range of product attributes 3.Look in detail at cyclomatic complexity

3 CSE300Advanced Software EngineeringSeptember 2005 Creator/Editor: ACSession No:7 Slide No: 3Reviewer: SS Product Attributes There are a range of attributes that can be measured.. Size, Data flow structure, Control flow structure, Functionality

4 CSE300Advanced Software EngineeringSeptember 2005 Creator/Editor: ACSession No:7 Slide No: 4Reviewer: SS Product type vs. measure Code - KLOC ( KDSI + NCLOC), bytes, Specification - function points, Natural Lang. - no. of words/sentences/pages/diagrams Documents Design - no. of subsystems, modules, ‘children’

5 CSE300Advanced Software EngineeringSeptember 2005 Creator/Editor: ACSession No:7 Slide No: 5Reviewer: SS Structure Measurement of structure has been influenced by two things: Structured design & programming methods Complexity of individual modules

6 CSE300Advanced Software EngineeringSeptember 2005 Creator/Editor: ACSession No:7 Slide No: 6Reviewer: SS Measures from Graph Models flow of control of a program or within a design flow of data within a program or between modules in a design

7 CSE300Advanced Software EngineeringSeptember 2005 Creator/Editor: ACSession No:7 Slide No: 7Reviewer: SS Control Flow Graph 10 input p 20 if p > 39 then 50 30 m = 3 40 g = ‘fail’ 50 if p > 65 then 80 60 m = 4 70 g = ‘pass’ 80 m = 5 90 g = ‘distinction’ 100 print g 10 20 30 50 40 60 80 70 90 100

8 CSE300Advanced Software EngineeringSeptember 2005 Creator/Editor: ACSession No:7 Slide No: 8Reviewer: SS Graph properties Edge- a connection between two nodes Node- a l.o.c., a statement Loop- a loop

9 CSE300Advanced Software EngineeringSeptember 2005 Creator/Editor: ACSession No:7 Slide No: 9Reviewer: SS Attributes of Graphs There are a number of measurable attributes of graph models of control flow… no. of edges- size no. of nodes- size min. no. of paths covering each edge once - testability min. no. of paths covering each loop once - testability min. no. of paths covering every node - testability

10 CSE300Advanced Software EngineeringSeptember 2005 Creator/Editor: ACSession No:7 Slide No: 10Reviewer: SS Cyclomatic Complexity (i) McCabe was interested in control flow.. Cyclomatic complexity measures - no. of linearly independent paths through the program

11 CSE300Advanced Software EngineeringSeptember 2005 Creator/Editor: ACSession No:7 Slide No: 11Reviewer: SS Cyclomatic Complexity (ii) Measured in three ways… no. edges - no. nodes +2 no. of regions in the graph no. of predicate nodes +1

12 CSE300Advanced Software EngineeringSeptember 2005 Creator/Editor: ACSession No:7 Slide No: 12Reviewer: SS Cyclomatic Complexity (iii) When is it useful? - As an indicator of testability - OK - As a measure of ‘complexity’ - dubious

13 CSE300Advanced Software EngineeringSeptember 2005 Creator/Editor: ACSession No:7 Slide No: 13Reviewer: SS Key Points LOC is too specific a measure LOC is language dependent – no really accepted standards Size, data structure, control structure, function Graph measures indicate complexity Cyclomatic complexity does not measure complexity; it may measure testedness


Download ppt "Creator: ACSession No: 7 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringSeptember 2005 Software Measurement – Estimation and Productivity CSE300."

Similar presentations


Ads by Google