SOA stands for Service Oriented Architecture. The services mentioned here are web services. While web services can have different meanings, it has a specific one when it comes to understanding SOA. Web services are specific, targeted software routines that are implanted into a web site in order to perform specific functions. Most often these functions have to do with information retrieval, although there are other uses.
Web services utilize XML in order to operate. XML stands for eXtensible Markup Language. It is a multi-platform language, meaning that it can be used between computers even if they are running on different operating systems, such as Linux or Windows.
Service Oriented Architecture, in a nutshell, is a specific form of software development that is designed to enhance web service usability and in fact is completely structured around the use of these services, hence the name. That said, it is possible (although uncommon) to use SOA concepts without using web service technology.
Web sites, computer networks, databases can all be designed in different ways, just as there are different ways to build a house or an office building. SOA is simply one method used to design the basic framework of a network or database.
Because of the targeted nature of web services, they are a very quick and efficient way to retrieve information, using less processing power and time lag than other methods of data retrieval. However, if your network is not designed for easy web service compatibility, these advantages can be lost by hampering the web services ability to retrieve information.
In an SOA model of architecture, then, the basic framework is fairly loose, so as not to get in the way of the web services. It is more a loose conglomeration of these web services than a rigid software architectural model.
It is important to remember that while services are the building blocks of SOA, they are not synonymous with SOA itself. As stated earlier, most web services are written in the language of XML. There is also another special language used in relation to web services: WSDL. This stands for Web Service Description Language, and as you can probably guess is used to describe web services making it easier for users to understand what the web service does.
One of the strong points of SOA design is that it is platform independent. SOA can work across any number of computers, whether they be using Linux operating systems, Windows, Unix, Macintosh, etc. Due to the nature of web services, any time one of these services is used it is working completely independently of any other service on the network, thus saving computing power, unlike some systems which must work through translators in order to work across platforms.
This independence of web services also makes it easier to test and troubleshoot a network using SOA. Think of it in terms of Christmas lights. Older Christmas lights, when one bulb blew out it could blow out the whole string, so it would take testing every single bulb to find where the problem lies. With SOA, if one service goes down the rest are still going strong, so you know exactly how to pinpoint the problem.
SOA is a major part of the future of business communication and Information Technology. Every day more and more businesses are getting on board with Service Oriented Architecture.
In order to move your business to an SOA model, you will need to do a thorough study of how SOA networks are designed, as well as understand the architecture of your current set-up. This will allow you to best figure out how to change your current network model to one based on the principles of Service Oriented Architecture.
Another of the benefits of SOA is that it is designed to incorporate existing elements. Rather than a complete tear-down and rebuilding of your current networks, it is designed to fit in as seamlessly as possible. Although there can still be a lot of work involved, SOA works to fit in as easily as possible with your existing model.
It is also important to remember that SOA is merely a means to an end, not an end in and of itself. While Service Oriented Architecture can be useful in certain circumstances, you should try only to move to an SOA model when it is warranted, and leave existing networks as they are if they do not require the benefits of SOA. This will also allow you to make a gradual shift towards the SOA model, rather than doing a single and very likely expensive revamp all at once.