Overview
Syllabus
Introduction
Agenda
What is a contract
Examples of contracts
Undefined behavior
Contract no language
Contract no Java
Preconditions
Postconditions
Invariants
Error Reporting
Guarantees
Changing Promises
Finding a Contract
Contract Terminology
Wide vs Narrow Contracts
Survey Results
Example
Post Conditions
Operating Throws
Simple Function
Bug in Implementation
Changing the Contract
Is Another Wide Contract Better
Plug
Contract Tech
Test Drivers vs Unit Tests
C vs C Standard
Key Issues
Expensive Checks
Customization
Contract
The Workflow
Simple First Step
Taught by
ACCU Conference