Current situation and challenges of the hottest SO

  • Detail

SOA implementation status and challenges

in the past few years, many companies, large and small, have implemented many SOA projects, but the results are somewhat disappointing. Many companies have come to realize that the implementation of SOA is more complex than expected. It not only needs to pay close attention to all aspects of enterprise data, but also change the enterprise culture, which is deeper than any previous technology trend

as we all know, service-oriented architecture is not a new architecture. Several pioneers of SOA, such as common object request broker architecture (CORBA) and distributed component object model (DCOM), have successfully built bridges for different applications using loosely coupled, service-oriented methods. The new trend of SOA is that SOA is not only about services. The rising Internet and XML have opened the door for data interaction

the software industry supports the universal data exchange format (XML) and Internet transmission protocol with unprecedented strength. Therefore, a large number of recognized and open standards have emerged, which can realize the promise of SOA: supporting the flexible configuration of business processes, reducing operating costs, dynamically discovering services, and providing seamless integration between many applications, departments and trading partners

unfortunately, to the great disappointment of enterprises and technicians, these wonderful promises of SOA have not been fulfilled. This is not because the promise itself is wrong, but because most of the SOA implemented today is experimental in nature. The good news is that we can learn valuable experience from SOA pilot projects, which will help turn SOA pilot projects into enterprise level implementation projects that can give full play to the potential of SOA

objectives of SOA

before discussing the challenges facing the road to SOA, we might as well take a step back and re analyze the goals of organizations that start SOA implementation projects

first, obtain the visibility and flexibility of processes

the SOA trend sweeping the world is undoubtedly a reasonable trend. SOA has gradually integrated several major changes in the field of distributed computing. Many organizations always invest heavily in technology to stay ahead of their competitors, and SOA provides this breakthrough opportunity. At the same time, many organizations have been improving their business processes to fully exploit their competitive advantages

the emerging business process management (BPM) is expected to continuously improve processes and promote unprecedented collaboration between business and it departments. SOA is the integrator. Under its leadership, many organizations work together to gain a comprehensive understanding of the visibility of data and processes, continuously improve, and implement fine-grained control in an effective and transparent way

second, eliminate islands

the second goal of SOA is to eliminate silos among applications, departments, and trading partners. These islands are formed by years of software development work. SOA is expected to eliminate these islands and allow organizations to gain a clearer understanding of data and processes

third, manage more accurate data

an organization not only needs to manage data more effectively, but also needs to manage more accurate data. It is important to ensure that the data generated and used by Cross organization and trading partners is clean, reliable, safe, well managed and easy to obtain. One of the goals of SOA is to provide a set of unified components for the composite data service platform, which are used for data access, quality, transformation, management, caching and many other data centric services

fourth, reuse services

a related goal of SOA is to effectively manage and reuse enterprise services and data. If services developed by a department within an organization are published and described in a standard format in an easily accessible registry, they can be used by any other department within or outside the organization. If the data and services belong to the owner and users can share them when they need them, the operational costs related to maintaining and managing data and services can be reduced. Reuse is one of the main advantages of SOA

v. unified organizational goal

another goal of SOA is to coordinate business departments and it departments to jointly achieve the organizational goal: to help better develop flexible and configurable business processes. In the past, business departments and it departments used almost independent ways to improve the economic benefits of the organization

as an aspect of SOA, BPM can eliminate the differences between business and it, because it adopts a set of terms common and understandable between business departments and it departments, and can continuously improve processes through modeling, simulation, execution, monitoring and other means

soa implementation status quo

we already know the goal of SOA. Now let's take a look at several industry examples that urgently need to implement SOA. Several industries are now facing regulatory pressure driven by regulations, such as the Sarbanes Oxley Act and the Extensible Business Reporting Language (XBRL) in the financial services industry, or the pharmaceutical "pedigree" in the pharmaceutical supply chain

these compliance measures require organizations to collect data from islands scattered across many IT systems, and sometimes require integration with third-party Web services. These data often have to be cleaned up and converted into a standard format so that data can be exchanged

another example appears in various IT departments upstream and downstream of the supply chain that need to deal with radio frequency identification (RFID) technology. RFID can monitor the supply chain in real time, so as to improve efficiency and operation. However, most supply chain and it applications are not reliable, so it is impossible to use the real-time and detailed data provided by RFID. As we know, SOA greatly reduces the complexity of integration and enables the improvement of solutions to meet future needs without greatly affecting the production environment

non SOA or half hearted SOA solutions will lead to the need for customized integration, which requires a lot of money, and will make the system more closely coupled, making the problem more serious

nowadays, most IT departments are just trying SOA. Some IT departments are deploying services on a small scale for internal use. Many departments are building service wrappers on legacy applications in order to obtain reusability and reduce operating costs. Anyway, the focus of SOA implementation seems to be on the service layer

The concept of

needs to be clarified.

soa is actually an inappropriate term. SOA is not so much an architecture as a set of methods. Nowadays, there are many implementation methods at every layer of SOA. A recent survey by AMR research shows that web services are the main method for many organizations to build services, but integration frameworks, platforms, application servers and business process management servers have also been actively used

the choice of building a service layer is very wide, which may be a good thing; However, for many organizations considering implementing SOA, this is also one of the root causes of conceptual confusion

many organizations have spent too much time and energy in order to understand the technical jargon that outsiders can't understand and confirm the appropriate service implementation scheme. As a result, they can't take into account other equally important parts of effective SOA, so they decide to just build the service layer and can't wait to feel the benefits of investment

as a result, these SOA implementations have turned out to be proof of concept. They are not carefully considered and cannot solve important issues such as scalability, security, and governance

successful implementation of enterprise SOA faces many challenges. Many organizations spend most of their energy on the service layer, but the core part of the architecture: the SOA registry and repository are not well designed and cannot be extended effectively

soa prototype proves the potential benefits, but the road to a real enterprise SOA is fraught with difficulties, and most organizations are afraid to embark on the road. Enterprises must realize that to realize the potential of SOA, the service layer alone is not enough. There should be a practical correspondence between the goals set by the organization and the various parts of SOA to achieve these goals

limitations and challenges

now let's analyze the challenges faced by the successful implementation of SOA

first, cultural barriers

the goal of eliminating organizational silos not only brings technical challenges. Many companies are not prepared for the deep cultural changes brought about by this concept. Many people are used to completely controlling all aspects of the requirements of the specific application software they use

now they have to rely on the services provided by other departments. If this kind of change is not handled carefully, it may cause some people to be dissatisfied with handing over control, because it is others, not themselves, who have data and services. If we share services not only with departments within the organization, but also with external trading partners, this problem will be further complicated

second, who is responsible for the ownership and accuracy of data may be confusing. Imagine that an application software reuses a service owned or developed by another department, which may in turn use other services belonging to several different departments. If the application software cannot run normally due to the problems of the underlying services, think about how difficult it will be to find out the problem all the way, and implement remedies through layers of services, and finally repair the application software

third, implementation difficulties

in addition to cultural and logistical challenges, the successful implementation of SOA also involves many technical challenges. Many organizations are taking temporary measures only for the implementation service layer. The service layer is actually just a part of SOA. Even with such a limited scope of implementation, people also find that the actual situation is more complex than expected. They found that the size, number and complexity of legacy systems make it extremely difficult to configure business processes, making it impossible to achieve one of the main goals of SOA

a large number of new services lead to scalability problems in data management. It may be easy to publish a small number of services to the registry and use them after users find them. But the real advantage and challenge of SOA is that it has thousands of services, which must be published, discovered and managed effectively

eliminating differences between business and it and realizing flexible configuration of business processes require investment in business process management solutions. But the problem is that, just like the implementation of service layer, today's BPM implementation is not only widely selected, but also confusing

components of enterprise SOA

the following outlines several components necessary to implement enterprise SOA

first, service layer and registry

most of the SOA implemented today focus on the service layer, and then on the registry of publishing and discovering services. Since this architecture has been put into place, many enterprises have achieved greatly improved visibility, far better than before the emergence of standards such as Web Services Description Language (WSDL) and UDDI. Unfortunately, it is precisely because of this return on investment that most implementation projects stop - that is, when trying to extend the established model, the service layer and registry alone are not enough to obtain the real return on investment of SOA

second, SOA is more complex than it looks

wait until SOA implementation is usually based on service layer and registry

Copyright © 2011 JIN SHI