|
A Service Oriented Architecture (SOA) helps to achieve interoperability goals by loosely coupling different services, or software components, available on a service infrastructure. This means that we can easily change from one of the service provider to other. This also implies that the semantics and the protocol to access such services are clearly defined. A SOA can be implemented using any service-based technology. Web Services are one of the leading technologies to implement SOAs, standardized by the W3C and OASIS. This allows a technology agnostic using open protocols based on XML. This vision carries to an open ecosystem of different API and services offered all over the Internet. Instead of integrating into a single monolithic application existing functionalities can be mix ed and reused. This tendency is called Mashup and its like being a DJ of services. Somehow it is the image of open software carried to an extreme: a real bazaar of services all competing to gain the attention of the potential users. We think that this model of easy entry will allow new ideas to be developed and deployed almost in real time.
There are several levels of mixing and integration between diverse information and services available on the internet. Several service providers, like Amazon, Google, or Yahoo, are providing pieces and components for the final user to composite their own web or service. These pieces will integrate the applications with different APIs. Most of the Web 2.0 providers offer APIs and web sites to the users. The collaboration structure of the Web 2.0 helps to get in contact with these new applications really soon, so we need a very flexible programming language that, for instance, allows meta-programming, e.g. introspection and reflection, that may help to have tighter cycles of prototyping and release.
Read more in deliverable D3.1.
– Joaquin Salvachua, Sandra Aguirre, Antonio Tapiador
|