Few points on Contract first Developement
- If you start by defining what you’ll exchange you are starting from an aspect of the contract, regardless of the syntax you use for defining it (decorated classes as opposed to schemas).
- Using DataContract does not alienate platform neutrality, as the generated XML is still happily compliant with the standard.
- The contract in its most concise form won’t change regardless of your incursions in the WS-* stack (apart from interweaving WS-Policy assertions). With WCF bindings you can trim the WS-* support at will for matching the needs of your intended parties.