In This Lecture You Will Learn:
- Why operations need to be specified
- What is meant by “Contracts”
- Non-algorithmic ways of describing operations:
–Decision Tables
–Pre- and Post-Condition Pairs
- Algorithmic ways of describing operations:
–Structured English and Pseudocode
–Activity Diagrams
–Object Constraint Language
References
- Bennett, McRobb and Farmer (2002)
- Yourdon (1989) covers Structured English and Pre- / Post- Conditions well
- Senn (1989) is good on Decision Tables
- Larman (1998) takes a contract-based approach to O-O analysis and design, with examples taken to Java code
(For full bibliographic details, see Bennett, McRobb and Farmer)