Web service is no longer a newlywed wife. Many enterprises have already created a variety of experimental Web Services project, it was proved that the emerging distributed computing technology is indeed able to reduce the cost of integration and development. In addition, a number of key Web Services standards have been formulated, strong security (robust security) and management products will also be available. For ambitious companies, they have to consider at the next step.

For most companies, the next step to be taken into account is no longer a peer-to-peer applications, but Web services in business-to-business and business partners a more broad application. Changes of this technology need to be more loosely coupled, standards-based Service-oriented architecture. Such a framework calls for IT's role in the organization has a new perspective and understanding, not just a method of implementation. Through their responsiveness to business, business can be a real return, and to achieve this, service-oriented architecture is key to the role of designers. In addition, the potential returns are innumerable - the distribution of computing technology on the business needs to ensure enough flexibility in the response, which is agile business companies and the dream is still distant.

Distributed Computing on the distribution of network resources as software services. Service-oriented architecture is a good solution. However, this architecture is not new ideas; CORBA and DCOM very similar, but these past service-oriented architecture are plagued by a number of problems: First of all, they are closely coupled, which means that distributed computing such as the two connected client must be bound to follow the same API. Play For example, if a COM object has been to change the code, then access the object code must also change accordingly. Second, these service-oriented architecture bound by the manufacturers. DCOM from Microsoft not to mention control, CORBA is only a camouflage of standardization efforts, in fact, a CORBA implementation architecture, are often at a vendor on implementation of the norms of their work.

Web services are to improve on the shortcomings of DCOM and CORBA efforts. Today, Web services applications Service-oriented architecture with different characteristics on the past is that they are standards-based and loosely coupled. Widely accepted standards (such as XML and SOAP) provided at the various vendor solutions interactive. And loosely coupled distributed computing will be separated from the participants, the interaction of changes on both sides of a party to the other party will not be affected. This means that the combination of the two companies can achieve rather than some Web services on the use of these Web services client have any understanding of knowledge. This our standards-based, loosely coupled service-oriented architecture referred to as SOA.

The strength and flexibility of SOA will bring enormous benefits business. If an organization is an abstract architecture of its IT out of its functions to the form of coarse-grained services that come out, each service clearly express the value of their business, then the customers of these services (in the company intranet, or it may be the company a business partner) can get these services without having to consider the implementation of specific technical background. Furthermore, if customers can find and bind services available, then these services at the back of the IT system can provide greater flexibility.
However, species to be strong and flexible, there is a necessary framework for implementation of the new method, which is a difficult task. Enterprise architecture designers must become a "service-oriented architecture designers", not only to understand SOA, but also to understand the practice of SOA. Practice of Architecture at the architecture and finally the difference between the results of very delicate, but also very crucial. This article will discuss the practice of SOA, namely: the designer-oriented architecture SOA in building must be to do.

The principles of SOA

SOA is an enterprise architecture, therefore, it is the demand from the enterprise's start. However, SOA and other enterprise architecture methods to provide SOA lies in business agility. Business agility is an enterprise to change quickly and effectively respond to, and use change to get the competitive edge capabilities. Architecture designers to create a business architecture agile IT means to create such an architecture, it is also unknown to meet current business needs.

In order to achieve this business agility, SOA practice must follow the following principles:

* Business-driven services, service-driven technology

In essence, at the abstract level, Service is located in between business and technology. Service-oriented architecture on the one hand, designers must understand the business needs and the services provided by the dynamic relationship between, on the other hand, to understand the same services and the provision of these services the relationship between the underlying technology.

* Business agility is a fundamental business needs

SOA under consideration is an abstract levels: to provide the ability to respond to changing needs is a new "meta-needs", rather than deal with a number of business needs fixed. From the hardware system on the entire structure must meet the needs of business agility, because, in any bottlenecks in SOA will affect the flexibility of the entire IT environment.

* A successful at changing the total SOA

SOA to work the scene, more like a living organism, not as traditional as "build a house." IT environment is the only constant changes in service-oriented architecture, therefore the work of designers will never end. Used to build houses for the designers, to shift the design of a living organisms require a new way of thinking. As written, SOA foundation of the architecture or some similar criteria.

SOA foundation

In the IT industry have both more and more common direction of development of a framework, a methodology, service-oriented architecture designers can gain. The first is the MDA (Model Driven Architecture), CORBA from the OMG proposed model put forward. MDA architecture designers must first consider the treatment system has created a formal UML (made by the OMG) model. MDA first give a platform-independent model to express the function of the system requirements and use cases, according to the system to build a platform for designers from the architecture platform-independent model of the platform-dependent model, the platform-dependent model in sufficient detail that can be used to directly generate the required code.

MDA is the core system at the design stage has been fully described, so that at the time of the creation of the system, almost no possibility of misinterpretation, the model can also generate code directly. However, MDA has some limitations: First of all, MDA prior to the assumption in the creation of models, business requirements have been fully described, which, in the current dynamics of a typical business environment is almost impossible. Second, MDA does not have a feedback mechanism. If the developers of the model has required changes to the place, and did not provide a way to give them so much.

Another is based on SOA Agile (AM), one of the methods are very well-known Extreme Programming (XP). AM such as XP in the demand for the provision of the unknown or changing environment, the process of creating software systems. XP requires the development team must have a user representative, he helped to write the test to guide the daily work of developers. All development team members to participate in the design and the design of small and non-formal try. AM's objective is to create a user just wants to, rather than at some of the workload to spend on formal models. AM at the core idea of their agility on - deal with the demand for agility to change. AM are the major weakness of the restriction on its scale, for instance, XP team at a small and medium-sized projects well, but when the project size increases, consistent with the absence of a clear plan, the project members of the project it is difficult to grasp aspects.

On the face of it, MDA and AM appear to be opposed to the assumption that the demand-MDA are fixed, while the contrary AM. MDA is the formal model, and the AM just want to avoid them. However, we decided to put these different methods of risk-taking some of the extracted elements into a consistent practice of architecture.

SOA at three abstraction levels, in accordance with the SOA, the first criteria: business-driven services, service-driven technology. AM will be business models and practice of linking directly, and in the platform model are related. MDA did not put the business model and platform-independent model of separate, but as a starting point for platform-independent model. SOA must connect these models, or abstract level, Ways to be a single architecture. View of our architecture will achieve the five ways to achieve this connection.

SOA implementation of the five methods of view

Enterprise architecture designers found their job very competitive and be proud of, because they must take into consideration a lot of respect to IT systems. Kruchten (RUP development of the person in charge) will be extracted from these areas, in the application of the SOA, we view as the five methods of implementation (five-view approach).

Four boxes of express a different look at the methods of architecture, representing the different stakeholders (stakeholder). View the five younger brother, use-case view cover other view, the architecture plays a special role. Deployment of view will be mapped to the underlying software platforms and related hardware, is the deployment of staff views on the architecture; implementation view describes the organization of software code, developers are from the view point of view; business analysts using the process view work It describes the run-time software system features. Finally, the logical view that is the user's functional requirements. At SOA, the service-oriented architecture must be able to use-case view of the use case the user connected to the Service will be connected to the bottom Services technology.

In order to express object-oriented architecture is the work on view at these, let us put their SOA in the context of element model. SOA in the two areas overlap: from business models and services that the business model and by the service model and platform model of technology-related areas (two areas of shared services model). Business users through logical view and process view of the deal with coarse-grained business services, in accordance with changing business needs, in accordance with the necessary arrangements at their process. On the other hand, are the work of technical experts to create and maintain services and the formation of the abstraction layer between the technology. Express services between these models are played pivotal role in its operations centers.

SOA element model inherited from the MDA model of platform-independent and platform-dependent model, but added the AM and user interaction and feedback from both parts of Agile, which passed between the oval to the performance of two-way arrow. Similarly, the element model through the introduction of the service model by the Center to provide an abstract layer between the solution of the AM in scalability problems. In this way, any Service model changes in demand will be reflected in the users deal with every day in business. Similarly, because of the underlying technology is a model-driven, technical experts can also be the basis of these changing needs quickly and effectively respond.

SOA practice of enterprise architecture and the past to solve the traditional way on the difference lies in its support of agility. As mentioned, SOA on the third principle is that it is always changing. Constant changes in this environment are the cornerstone of SOA practice. As shown, involving the public (stakeholders, Translator's Note: RUP there is also the word that the software developers involved in a variety of roles such as: Users, designers, developers and the testers and so on.) Necessary in a impact on basic changes to the entire architecture. When the technical experts at the day-to-day every day at work, constantly changing business needs to respond to such circumstances, the design phase and operation phase of the boundaries between them become blurred, it is difficult to clearly separate these two phases.

The remaining part of

We have service-oriented architecture provides a high-level framework, MDA and AM one of the elements of the instrument to help the user to create and maintain SOA. However, SOA also lack some of the elements - that is, software developers and professional service organizations provided necessary. Ideally, developers must provide service-oriented business processes, workflow and service coordination tools and services; In addition, in order to be able to an agile, platform-independent way of business services fully reflect the modeling tools is also necessary; must be equipped with technical experts can be automatically generated from the model code, and changes in the code and updating the model of instrument, and finally, developers need to provide support for SOA software, service-oriented architecture to help designers with a reliable and scalable create services and the underlying technology is located between the level of abstraction. Fortunately, in this regard Upcoming Products.

In addition, the most important thing is to run through this article from the top-down method of implementation of the SOA. Today, about Web services are the most since the end of and consider the on: "This is how to create Web services approach, and now we use them to integrate it," Web services technology for this method is great first step, amazingly because it can reduce the cost of integration, which is now the technical management of the most willing to see. However, further economic development, IT out of the bottom, enterprises will seek the help of IT to improve organizational strategy on the core values of significance. The use of service-oriented architecture, IT can provide the business agility to the enterprise implementation of such a framework.