1.5 What is "Service Oriented Architecture"?
A service-oriented architecture is an approach to joining up systems within enterprises. It is a relatively new approach, but is rapidly gaining popularity because of the lower costs of integration coupled with flexibility and simplification of configuration. Service-oriented architecture builds upon the experience of using Web Services for integration.
In a service-oriented architecture, the application logic contained in the various systems across the organisation – such as student record systems, library management systems, VLEs, directories and so on – are exposed as services, which can then be utilised (consumed) by other applications.  For example, a student record system may expose services for working with enrolment and registration information, which can then be used within a VLE or library system (figure 4).
This approach is somewhat different to two other common ways of integrating systems, which are to integrate at the user interface level using portals, or at the data level by creating large combined datasets (figure 5.).
A service-oriented approach does not preclude also using portals or data warehouses, and is in fact agnostic about how the rest of the enterprise is configured, which is why it makes a good approach for a framework.
However, because integration occurs in this fashion, it becomes a simpler task to replace the systems that provide services within the architecture. Because service consumers are configured to access a service without any knowledge of the system that provides the service, we can replace the underlying system without affecting systems dependent on its capabilities (figure 6.).
graphic
This diagram shows how access to the course management functions of the Student Record System (SRS) can operate in a service-oriented architecture.
The SRS provides a course management web service.  This service is "consumed" (ie used) by the student portal to display student data, by the library management system to synchronise data, and in this case a teaching tool has been developed within a department that needs access to enrolment information.
However, this is not the only way to access SRS data, and the SRS Course Management forms can still be used to directly access the SRS by administrative staff.
Once the SRS provides the web service, additional applications can take advantage of the capabilities exposed without any changes to the SRS or the service.
Figure 4: Course management within a service-oriented architecture
graphic
This diagram shows three different approaches to joining up systems.
The solid "orange route" integrates system capabilities at the end-user level by wrapping their interfaces in a portal.
The dotted blue route" integrates system data by combining it in a single large database.
The dashed "green route" integrates systems by exposing their application logic as a service and sharing them with other applications (and end-users via portals).
Because the application logic is abstracted from both the physical storage and the user interface it is less "fragile" with respect to changes.

Figure 5: Different approaches to integration


graphic
This diagram demonstrates replacement of systems in a service-oriented architecture.
Applications which used the Course Management Web Service continue to do so, unaffected by the replacement of the SRS providing the service.
However, the forms provided by the old SRS are now obsolete and cannot be reused.

Figure 6: replacing a student record system in a service oriented architecture

There are other integration approaches that also operate at the application logic level:
  • CORBA
  • J2EE
  • DCOM
However, these technologies are either very costly to implement (CORBA) or restrict platform choice across the organisation (J2EE, DCOM). Web services can take advantage of existing integration using these approaches, however, and many service implementations build upon J2EE integration.
In summary, service-oriented architectures have a number of features that make them attractive for MLEs.
  • They are agnostic with regard to platform choices and types of existing systems
  • They are less expensive to implement
  • Services can be used without knowledge of the internal workings of the system providing the service, allowing systems to be replaced without causing widespread disruption
  • Services enable non-replaceable legacy systems to interact with new applications
  • By providing access to functionality rather than user interfaces or data it enables institutions and departments to develop applications that relate better to the tasks they want to perform without duplicating the functionality of existing systems, but instead leveraging existing investment in software.
Service-based architectures can be reconfigured to meet changing operational requirements or reflect organisational change.