Introduction.- Background.- Literature Review.- Modeling and Specification of a Data-Centric Web Service.- Specification and Verification of a Composition of Services.- Specification and Verification of Transactional Web Service Composition.- Model Implementation.- Evaluation Using a Deep Web Case Study.- Static Detection of Implementation Errors Using Code Contracts.- Static Detection of Implementation Errors in Data-Centric Web Services.- Design-by-Contract for Web Services.- Summary and Conclusions.