But the hype about SOA will revive the interest in webservices because web services are one of the enablers of SOA. Web services are currently the first universally accepted interface, every software vendor or product has SOAP support. Web services allow us to define a software architecture in which the services are the core.
A while ago, I blogged about SOA, but lets recap, what is SOA? Actually it is nothing more then a design philosophy, a philisophy which is governed by 4 tenets:
1. Services have explicit boundaries : only interaction possible at the service boundary - e.g. Asmx webservices
2. Services are autonomous : no assumptions about how the service is implemented, loosely coupling
3. Services share schema & contract not objects : "pass by value" - the WSDL contains both the service and the data contract
4. Services are policy based : policies describe the rules for interaction, transactions, security, wire protocol
These tenets have also some technical consequences however, such as:
when you have to implement a custom wire format (For more elaborate discussions, take a look at Clemens Vasters blog). One fo the reasons you should avoid Remoting is because it uses SOAP encoding differently from web services