Shifting towards the underlying technologies that drive SaaS, (Hurbean & Fotache, 2009) identifies SOA (Service Oriented Architecture) as being the “the most practical way for service providers to support the massive scale of integration that these large solution ecosystems will require”.
SOA is an architectural style or framework, in which the objective is to achieve loose coupling, this differs from the conventional OOP (Object Oriented Programming) methodology employed by most software engineers since the 1990’s (He, 2003). In the OOP methodology, data structures known as objects are defined and grouped logically by fields and methods in one software library.
SOA creates a loosely coupled implementation of business and technical processes, in which processes are abstracted into smaller reusable modular components called services (Mahmood, 2007). Its main objective is to create an improved collaboration between software vendors and third- party clients to create and consume business objects which facilitate the deployment, delivery and administration of this collaborative effort (Hurbean & Fotache, 2009). The most beneficial factor that these modular services contribute too; is that it introduces less errors and bugs into the system as the encapsulating application need not undergo a code change, this also allows for incremental enhancements which can be rolled out over a specific period of time (Hurbean & Fotache, 2009).
This is achieved by abstracting these data structures into small sets of simple and ubiquitous interfaces which are made available via XML (Extensible Markup Language) based web services to all participating software agents (He, 2003).
XML based web services allow the communication of a standardized XML format as set out by rules governed by the World Wide Web Consortium (W3C) (Bray et al., 2008 ). The objectives sought by the W3C in defining these standards include a machine readable text format that can be transmitted over a TCP/IP network and, easily interpreted by any application and especially within a heterogeneous system environment (Bray et al., 2008 ).
SOA web services are typically transported via Internet based protocols such as HTTP , FTP or SMTP and are restricted to exposing this data in an XML format (He, 2003)
Accessing, describing (managed by WSDL’s) , discovering (managed by UDDI’s) and transporting (SOAP or REST) these services are governed by a set of protocols and standards as set out by the WC3 and are the de-facto standards for creating a web service.
WSDL (Web Services Description Language) is an XML based representation describing how applications interface with a particular web service; the information that it exposes includes the various endpoints or locations that this web service may be consumed from as well as the methods that can be invoked and the data types they are represented as (Christensen et al., 2001).
UDDI (Universal Description, Discovery, and Integration) in its...