Contracts, Scenarios and Prototypes: An Integrated Approach to High Quality Software (Paperback, Softcover Repri)