Service Oriented Architecture Examples
Service Oriented Architecture (SOA) is a hot topic in the business world. You may have read about service-oriented architectures and wondered how they impact your business and how they might be of use to you. If you look at it from both a real and a technical point of view, you will develop a solid understanding of the service-oriented architecture from which you can move to implement this technology in your business.
Defining service-oriented architectures
A service is essentially the implementation of a particular step in one or more business processes, and a service-oriented architecture leverages those services. More importantly, service-oriented architectures have many business benefits, including better reconciliation of business needs and technology. Service-oriented architectures also make it easy to exchange services or reuse them for different purposes. Service-oriented architecture enables your organization to easily leverage existing services while writing new services to meet specific needs.
Service-oriented architectures rely heavily on programming in XML, a text-based markup language that allows developers to define their own specific data structure. However, a major benefit of setting up a service-oriented architecture is that it does not matter which language or protocol is used. Instead, the process can be written so that it can be used on many platforms.
A simple example of a service-oriented architecture would be a program that is installed on a computer and can organize a user’s digital music library. The program may work best if it has access to the Internet and can use a service, such as: For example, the name of a CD or song in a large music database, or access to an online store that uses the same database is a different way. Service-oriented architectures are essentially about giving new functions to existing services.
How service-oriented architectures can benefit a company
Service-oriented architectures can enable companies, for example, to set up a complete online registration process. This process may include the ability to send the registrant an e-mail with specific directions to the facility without requiring the person to visit a third-party web site to retrieve this information. Instead, a program could be written to retrieve the information directly from the enrollment application, point to a third-party Web site, and seamlessly integrate the response into the verification e-mail.
The same could apply to weather information – the program could give the user information about the weather based on the user’s zip code and the zip code for the place of training. This would allow the company to offer a value-added service in its e-mails – the weather information would be provided directly and not from a third-party web site that the end-user would need to access independently, and would be personalized. Other elements involved in the service-oriented architecture may include scheduling, registration, and credit card processing.
Services can also provide different ways to access a single database. Using a real-life example of a service-oriented architecture, a company can make its database of books and music available to external users, and users can create processes that retrieve specific information from that database. For example, someone could create a process that allows visitors to a site to search for a stage name in this larger database, and the results returned include only information about CDs rather than book titles that also mention the name.
As an example of a service-oriented architecture from the business world, a database of courses could be used as a service to give different people access to different aspects of the database in different ways. Trainers could, for example, have access to a thick client application that allows them to search a complete database, including courses that are not accessible to the public. On the other hand, the public could have access to a web-based application that would allow them to search for courses that cover specific data or cover specific topics. Salespeople could even access this database in some other way, not only to know when courses are available, but also in what locations, leading to weather information and driving directions. All of this can be achieved seamlessly with service-oriented architectures without having to create multiple databases for multiple users.
Easy customization with service-oriented architectures
One difference between a service-oriented architecture and a more traditional development mode is that service-oriented architectures allow a business to deliver a more targeted set of requirements to its IT team. While full deployment of a service-oriented architecture can take a long time, a single service can be created in a matter of weeks. This means that it is possible to simplify service adjustments and capture errors at an earlier point in time, which can further benefit a business.
In essence, a service-oriented architecture can be of great benefit to any business that uses web-based applications. It provides new functionality for programs written on obsolete platforms, and saves developers time by not having to write new processes if they already have useful ones. While service-oriented architectures may be the current issue, it seems clear that they will continue to be an important part of the business in the years to come.