Table of Contents

Course Outline

The topics to be discussed each week will be listed here. Slides will be posted here as well.

Week 1

Topics: Introduction to Software Engineering

Slides: PDF

Week 2

Topics: Version Control

Slides: PDF

Week 3

Topics: Test-Driven Development, JUnit

Slides: PDF

Code: Counter.java, CounterTest.java, AllTests.java

Week 4

Topics: Debugging

Slides: PDF

Code: WordAnalyzer.java

Week 5

Topics: Refactoring

Slides: PDF

System in need of refactoring

Refactored system

Week 6

Topics: Deployment

Slides: PDF

Week 7

Midterm presentations

Week 8

Midterm submission feedback

Week 9

Topics: Test code coverage

Slides: PDF

Week 10

Topics: Design documentation

Slides: PDF

Sequence diagram tutorial

List of UML tools

Week 11

Topics: Final presentation preparation

Slides: PDF

Week 12

Final project presentations