Software development has gone through a number of paradigm changes. We have moved from using a structured programming technique to object-oriented programming, then to component-based programming and now we are moving to a service-oriented programming style.
SODA embraces the concepts that were originated in object-oriented and component-based development. It also extends these facilities with distributed computing and quality of service concepts. In addition, more emphasis is placed on asynchronous messaging, XML for identifying data types and an increased use of protocols (over API’s).
|
SODA applies the concepts of a service-oriented architecture to the design of a single application. Service oriented applications are composed of the run-time loose bundling of services. It is said that these services are orchestrated to solve some problem. This loose bundling is counter to the tighter compiling technique used to bind many modern object oriented systems. Note that each individual service is compiled, but the orchestration between the services is intentionally kept out of the compiling. Instead it is usually hosted in an orchestration engine where run-time binding takes place.
|