07 - Ch7.3 More On Implementation
07 - Ch7.3 More On Implementation
ENGINEERING
CO3001
Implementation meaning
Coding style & standards
Code with correctness justification
Integration meaning
Integration process
Counting lines
Lines of code (LoC)
How to count statements that occupy several lines (1 or n?)
How to count comments (0?)
How to count lines consisting of while, for, do, etc. (1?)
IEEE metrics
14. Software Science Measures
n1, n2 = num. of distinct operators (+,* etc.), operands
N1, N2 = total num. of occurrences of the operators, the operands
Estimated program length = n1(log n1) + n2(log n2)
Program difficulty = (n1N1)/(2n2)
16. Cyclomatic Complexity
…
Custom metrics?
Sep 2019 CHAPTER 7.3. MORE ON IMPLEMENTATION 20
CYCLOTOMIC COMPLEXITY
1
1 int x = anX; C= E -N+1
else y
*
6 y = y - x; 7
* 4 6
7 }
y
8 ...println( x );
: independent loop
*
Single level
iteration
....
Design Requirements
analysis
First iteration Second iteration
2. Design for
additional
requirements 1. Get additional
requirements
3. Code
additional
5. Test
4. Integrate
new code
Implementation Test
4. Perform
Sep 2019 acceptance tests CHAPTER 7.3. MORE ON IMPLEMENTATION
25
Job completed
FACTORS DETERMINING THE SEQUENCE OF
INTEGRATION
Technical:
Usage of modules by other modules
build and integrate modules used before modules that use them
Defining and using framework classes
Risk reduction:
Exercising integration early
Exercising key risky parts of the application as
early as possible
Requirements:
Showing parts or prototypes to customers
Sep 2019 CHAPTER 7.3. MORE ON IMPLEMENTATION 26
SUMMARY