Week 1 (No lecture Thursday)
Lectures:
Software engineering overview
[slides],
Required Readings:
Suggested Readings:
Tutorials No tutorials in week 1
Week 2
Tuesday Lecture:
Requirements Specification
[slides],
Homework 1 description,
[Homework 1 Handout] ,
[Example Requirements],
[Requirements Template Document],
[Requirements Specification Guide],
[Requirements Checklist].
Thursday Lecture:
Use cases, Use Case Diagram, and Checklists.
[slides],
Installation instructions for the Papyrus tool on Eclipse 4.2,
[Example Use Case],
[Use Case Template Document].
Required Readings:
Suggested Readings:
- Fowler Chapter 9, Stevens Ch7, Sommerville Chapter 4.
First Tutorial:
Questions to work on before the tutorial.
Week 3
Tuesday Lecture:
Worlds Machine Model, Fundamentals of Design,
[slides].
Thursday Lecture:
UML Class Diagrams ,
Homework 2 Description .
Suggested Readings:
- Michael Jackson. The World and the Machine.
- GSWEBOK2004 Ch3, for an overview of the field of software design
- Fowler Chapter 3: Class Diagrams:The Esentials; Somerville Chapter 5: System Modeling; Stevens Ch3, a simple case study.
Week 4
Lectures:
UML Sequence Diagrams, State Machines,
Design Patterns, Architecture Model.
Required Readings:
Suggested Readings:
Second Tutorial:
Questions to work on before the tutorial,
Week 5
Lectures:
Going from Design to Code, version control, OO concepts ,
Coding Standards.
Required Readings:
Suggested Readings:
Week 6 (No Lecture Thursday)
Lectures:
Verification, validation and testing.
Required Readings:
- GSWEBOK2004
Ch11
- Some JUnit information, see [slides]
and here.
You must know how to create and run a JUnit test for a method of a
class - the best way to learn this is to do it.
- Section 1
of Design
by contract with JML
Suggested Readings:
Third Tutorial:
Questions to work on before the tutorial.
Week 7
Lectures:
Coverage Metrics ,
Quality.
[slides],
[handout]
Suggested Readings:
LAB week
Week 8
Lectures:
Process ,
Maintenance and Deployment.
[slides],
[handout]
Suggested Readings:
Fourth Tutorial (Optional)
Week 9
Lectures:
Quality,
Security Engineering, Licensing, IP.
Required Readings:
Suggested Readings:
Week 10 (No lecture Thursday)
Lectures:
Summary.
Inf2SE,
http://www.inf.ed.ac.uk/teaching/courses/inf2c-se