April 05
Prof. Ismael H. F. Santos -  ismael@tecgraf.puc-rio.br                                                          2
Arquitetura de Referência SOA – Separation of concerns
 Serviços de Otimização e Inovação de Negócios
Servicços de Desenvolvimento
Serviços de Interação
Serviços de Processos
Serviços de Informação
Serviços de Parceiros
Serviços de Aplicações de Negócios
Serviços de Acesso
Ambiente Integrado para o projeto e criação de recursos
Gerencia e assegura os serviços , aplicações e recursos
Facilita o processo decisório com informações do negócio em tempo real
Possibilita a colaboração entre pessoas, processos e informação
Orquestração e automação de processos de negócios
Gerencia dados diversos de forma unificada
Conexão com parceiros de negócios
Construídas em um ambiente de serviços robusto, escalável e seguro.
Facilita interações com e aplicações informações existentes
        ESB
Facilita a comunicação              entre serviços
Gerência dos Serviços de TI
Serviços de Infra-estrutura
Otimiza throughput, disponibilidade e performance
Model, Assemble
Deploy
Manage
  The SOA reference architecture is a way of looking at the set of services that go into building an SOA.  These capabilities can be implemented on a build-as-you-go basis allowing capabilities and project level solutions to be easily added as new requirements are addressed over time.  Looking at the colors in the graphic, you can see that they’re organized along the same lifecycle we’ve discussed.  On the left in green is model and assemble, in the middle in blue ins deploy, and on the right in darker blue is manage.  The backbone of the reference architecture is the enterprise service bus which facilitates communication between services.  The reference architecture is a great tool for laying out roadmaps for pursuing SOA.



Additional detail:
The SOA Reference Architecture outlines the key capabilities that are required for comprehensive, enterprise wide SOA solutions.  These capabilities can be implemented on a build-as-you-go basis allowing capabilities and project level solutions to be easily added as new requirements are addressed over time.
Tools are an essential component of any comprehensive integration architecture.  The SOA Architecture includes both Development Services which are used to implement custom artifacts that leverage the infrastructure capabilities, and Business Innovation & Optimization Services which are used to monitor and manage the runtime implementations at both the IT and business process levels.
At the core of the SOA Reference Architecture is the Enterprise Service Bus. This delivers all of the inter-connectivity capabilities required to leverage the services implemented across the entire architecture.  Transport services, event services, and mediation services are all provided through the ESB.
The SOA Reference Architecture also contains a set of services that are oriented toward the integration of people, processes, and information:
Interaction Services provide the capabilities required to deliver IT functions and data to end users, meeting the end-user's specific usage preferences.
Process Services provide the control services required to manage the flow and interactions of multiple services in ways that implement business processes.
Information Services provide the capabilities required to federate, replicate, and transform data sources that may be implemented in a variety of ways.
Many of the services in an SOA are provided through existing applications; others are provided in newly implemented components; and others are provided through external connections to third party systems.
Existing enterprise applications and enterprise data are accessible from the ESB through a set of Access Services that provide the bridging capabilities between legacy applications, pre-packaged applications, enterprise data stores and the ESB.
The SOA Reference Architecture also contains a set of Partner Services that provide the document, protocol, and partner management capabilities required for business processes that involve inter-actions with outside partners and suppliers.
Business Application Services provide runtime services required for new application components to be included in the integrated system.
Underlying all these capabilities of the SOA Reference Architecture is a set of Infrastructure Services which are used to optimize throughput, availability and performance.
IT Services Management Services include capabilities that  relate to scale and performance, for example edge services, clustering services, and virtualization capabilities allow efficient use of computing resources based on load patterns.
The SOA Reference Architecture is a complete and comprehensive architecture that covers all the integration needs of an enterprise. Its services are well integrated and are delivered in a modular way, allowing SOA implementations to start at a small project level. As each additional project is addressed, new functions can be easily added, incrementally enhancing the scope of integration across the enterprise.
Background:
The IBM SOA Foundation delivers the capabilities you need to adopt SOA through a comprehensive architecture. These capabilities can be implemented on a build-as-you-go basis, and yet, because of the architecture and its service orientation, capabilities and project level solutions can be easily added as new requirements are addressed over time.
The SOA Reference Architecture shows the key capabilities that are required for comprehensive, enterprise wide SOA solutions.
Development Services are an essential component of any comprehensive integration architecture. The SOA Architecture includes development tools, used to implement custom artifacts that leverage the infrastructure capabilities, and business performance management tools, used to monitor and manage the runtime implementations at both the IT and business process levels. Development tools allow people to efficiently complete specific tasks and create specific output based on their skills, their expertise, and their role within the enterprise. Business Analysts who analyze business process requirements need modeling tools that allow business processes to be charted and simulated. Software Architects need tool perspectives that allow them to model data, functional flows, system interactions, etc. Integration Specialists require capabilities that allow them to configure specific inter-connections in the integration solution. Programmers need tools that allow them to develop new business logic with little concern for the underlying platform. Yet, while it is important for each person to have a specific set of tool functions based on their role in the enterprise, the tooling environment must provide a framework that promotes joint development, asset management and deep collaboration among all these people. A common repository and functions common across all the developer perspectives (e.g. version control functions, project management functions, etc) are provided in the SOA Reference Architecture through a unified development platform.
The Business Innovation & Optimization Services incorporate monitoring capabilities that aggregate operational and process metrics in order to efficiently manage systems and processes. Managing these systems requires a set of capabilities that span the needs of IT operations professionals and business analysts who manage the business operations of the enterprise. These capabilities are delivered through a set of comprehensive services that collect and present both IT and process-level data, allowing business dashboards, administrative dashboards, and other IT level displays to be used to manage system resources and business processes. Through these displays and services, it is possible for LOB and IT personnel to collaborate to determine, for example, what business process paths may not be performing at maximum efficiency, the impact of system problems on specific processes, or the relationship of system performance to business process performance. This collaboration allows IT personnel and assets to be tied more directly to the business success of the enterprise than they traditionally have been.
One key feature of the SOA Reference Architecture is the linkage between the Development and the Business Innovation & Optimization Services. The ability to deliver runtime data and statistics into the development environment allows analyses to be completed that drive iterative process re-engineering through a continuous business process improvement cycle.
At the core of the SOA Reference Architecture is the Enterprise Service Bus. This architectural construct delivers all the inter-connectivity capabilities required to leverage and use services implemented across the entire architecture. Transport services, event services, and mediation services are all provided through the ESB. Transport services provide the fundamental connection layer; event services allow the system to respond to specific stimuli that are part of a business process; and mediation services allow loose-coupling between interacting services in the system. The ESB is a key factor in enabling the service orientation of the SOA Reference Architecture to be leveraged in implementing service oriented solutions and can be implemented today to meet the quality of service requirements of any integration solution.
The SOA Reference Architecture also contains a set of services that are oriented toward the integration of people, processes, and information. These services control the flow of interactions and data among people and automated application services in ways appropriate to the realization of a business process:
- Interaction Services provide the capabilities required to deliver IT functions and data to end users, meeting the end-user's specific usage preferences.
- Process Services provide the control services required to manage the flow and interactions of multiple services in ways that implement business processes.
- Information Services provide the capabilities required to federate, replicate, and transform data sources that may be implemented in a variety of ways.
Automated application services, implementations of business logic in automated systems, are a critical part of any integration architecture or solution. Many of these services are provided through existing applications; others are provided in newly implemented components; and others are provided through external connections to third party systems. Existing enterprise applications and enterprise data are accessible from the ESB through a set of access services. These Access Services provide the bridging capabilities between legacy applications, pre-packaged applications, enterprise data stores (including relational, hierarchical and nontraditional, unstructured sources such as XML and Text), etc and the ESB. Using a consistent approach, these access services expose the data and functions of the existing enterprise applications, allowing them to be fully re-used and incorporated into functional flows that represent business processes. Existing enterprise applications and data leverage the Business Application and Data Services of their operating environments such as CICS, IMS, DB2, etc. As these applications and data implementations evolve to become more flexible participants in business processes, enhanced capabilities of their underlying operating environments, for example support of emerging standards, can be fully utilized.
The SOA Reference Architecture also contains a set of Business Application Services that provide runtime services required for new application components to be included in the integrated system. These application components provide new business logic required to adapt existing business processes to meet changing competitive and customer demands of the enterprise. Design and implementation of new business logic components for integration enables them to be fully re-useable, allowing them to participate in new and updated business processes over time. The Business Application Services include functions important to the traditional programmer for building maintainable, flexible, and re-useable business logic components.
In many enterprise scenarios, business processes involve inter-actions with outside partners and suppliers. Integrating the systems of the partners and suppliers with those of the enterprise improves efficiency of the overall value chain. Partner Services provide the document, protocol, and partner management services required for efficient implementation of business-to-business processes and inter-actions.
Underlying all these capabilities of the SOA Reference Architecture is a set of Infrastructure Services which provide security, directory, IT system management, and virtualization functions. The security and directory services include functions involving authentication and authorizations required for implementing, for example, single sign-on capabilities across a distributed and heterogeneous system.
IT Services Management Services include functions that relate to scale and performance, for example edge services and clustering services, and the virtualization capabilities allow efficient use of computing resources based on load patterns, etc. The ability to leverage grids and grid computing are also included in infrastructural services.
While many of the Infrastructure and IT Service Management services perform functions tied directly to hardware or system implementations, others provide functions that interact directly with integration services provided in other elements of the architecture through the ESB. These interactions typically involve services related to security, directory, and I/T operational systems management.
The SOA Reference Architecture is a complete and comprehensive architecture that covers all the integration needs of an enterprise. Its services are well integrated and are delivered in a modular way, allowing SOA implementations to start at a small project level. As each additional project is addressed, new functions can be easily added, incrementally enhancing the scope of integration across the enterprise.  In addition to supporting SOA strategies and solutions, the architecture itself is designed using principles of service orientation and function isolation.