1
17-214
School of Computer Science
Toward software engineering in practice Michael Hilton School of - - PowerPoint PPT Presentation
Toward software engineering in practice Michael Hilton School of Computer Science 17-214 1 Learning Goals Introduction to Software Engineering Discussion of Test Driven Development 17-214 2 Introduction 17-214 3 SOFTWARE IS
1
17-214
School of Computer Science
2
17-214
3
17-214
4
17-214
5
17-214
6
17-214
7
17-214
8
17-214
9
17-214
10
17-214
11
17-214
12
17-214
What is engineering? And how is it different from hacking/programming?
13
17-214
14
17-214
15
17-214
– Estimable costs and risks – Expected results – High quality
and production
measurement
16
17-214
17
17-214
18
17-214
19
17-214
20
17-214
21
17-214
suggested by customer or manager. Project scope expands 25-50%
components at the very end of the project. Interfaces out of sync.
for new estimates.
22
17-214
23
17-214
24
17-214
25
17-214
26
17-214
27
17-214
A programming exercise that you repeat many many times, looking to make small, incremental improvements.
28
17-214
letter at the widest point.
A B B C C B B A
29
17-214
TDD Demo
30
17-214
31
17-214
forced to write tests first
had greater than two times code quality, but 15% more upfront setup time
more time
TDD improves productivity at the expense of internal quality
32
17-214
significant difference between TDD and TLD in terms of testing effort (p-value = .27), external code quality (p-value = .82), and developers' productivity (p-value = .83).
due to its distinctive test-first dynamic, but rather due to the fact that TDD-like processes encourage fine-grained, steady steps that improve focus and flow.
33
17-214
34
17-214