Adapt or die
The contract binding a company to its customers (or users) is simple: one of them has needs and the other must address them. This is simple but, nonetheless, fragile ... the reasons which lead the client to turn to the competition are manifold: less expensive products, poor communication, etc. To anticipate and overcome these potential problems, a company must concentrate primarily on its mere reason of existence: its business.
Everything would be easier if this business, whether it is that of a bank, a telecoms company or even a manufacturer, does not change continuously. In fact, the customer needs and regulations are constantly changing and for that there is nothing the company can do; either it adapts or it dies. Add to this the fact that these changes are evolving faster and faster: the challenge that companies must answer is not to be the biggest but to be the fastest.
The information system is often a major obstacle to the development of an enterprise. Increasingly, the latter depends on technology, this is not without consequences for the business. Nonetheless, some hold the opinion that technology is just a tool. If this was the case though, one would have to exlain how come the companies often spend more time and energy fighting with technology and people who master it rather than dealing with their business?
"This is not our fault, it's a computer problem ... "
To do so, the SOA relies on the following principles:
Simplicity: keeping it simple is a guarantee of efficiency and ensures optimum communication between the business and technology.
Everything is a service
Indeed, a service is distributed, it is also autonomous, reusable and abstract in nature. However, a service is primarily a contract between a supplier and a client and its purpose is to meet the needs of the latter. The era of siloed applications that meet a specific need independently and without contact with the outside environment is gone. For several years, distributed systems have helped open up applications by providing flexibility and productivity ... but in a more or less anarchic way. SOA and service allow us to organize the information system in a coherent and coordinated way on the basis of contracts between a company, its customers, partners, or departments.
SOA is not a revolution but a natural evolution of information systems. SOA is not just born from nothing, it is the fruit of many years of experience, successes and failures that have led business experts, technical architects and developers to rethink the company and its functioning in an optimal way adhering to good design practices.
And technology in all this?
XML: XML, its universal nature, is an ideal medium for SOA by ensuring simplicity of implementation and interoperability. Keywords: JAXP, SAX, DOM, XSL, XPath
Web Services: for many, Web Services and SOA are one and the same. This classic mistake does not mean to hide the fact that Web Services can be extremely valuable when used properly. Keywords: WS-*, REST, WSDL, SOAP
Message-Oriented Middleware (MOM): it is often overlooked but message queues can be a perfect tool in the implementation of SOA by ensuring the decoupling, and the persistent disconnect between consumers and suppliers. Keywords: JMS, ActiveMQ
Enterprise Integration Pattern (EIP): patterns of integration are a toolbox essential in the successful implementation of an information system providing routing, processing and supervision. Keywords: Apache Camel
BPEL: In the SOA family, BPEL is the orchestrator. BPEL enables the reuse of all services of a system to compose new. Keywords: Oracle BPEL Apache ODE
BSE BSE is a constant source of misunderstanding. A BSE is, whatever one may say, a distributed system that relies on all the bricks discussed above: MOM, Web Services, EIP. The main objective of an ESB is primarily to simplify trade within an information system. Keywords: Apache ServiceMix, OpenESB
Nothing serves if it is just to theorize if it does not lead to anything practical
At first glance, the SOA bricks are multiple and heterogeneous. In the midst of this jungle, it is necessary to approach and work with discernment. Many are reveling in the benefits of SOA but do not put them in practice; Zenika will help you during the preparation phase as well as during the phases of implementation and support. We will give you the choice best suited to your business and your environment.