Service oriented architecture or simple SOA is a method of software systems integration . The main principal of it is data exchange between multiple applications for business process maintenance. SOA application accumulates some layers of data from different IT services to fulfill tasks, which couldn’t be completed only by a single IT service. SOA architecture has distinctive key success characteristics from others.
SOA services use self-describing interfaces in XML documents and have standard for describing them – WSDL. They arrange communication between different IT services using messages, which are formally defined via XML Schema. There is a SOA service registry with universal definition, description and integration (UDDI) data. And what is more important, SOA service has a quality of service (QoS), which is associated with it.
SOA architecture will be a good choice in case of agile software development and web development of complex IT services. It can reduce time and money costs by using existent IT services as a foundation of new ones. SOA also provides good flexibility and adaptability of such applications to a changeable business environment.