Oracle SOA Governance 11g Implementation
上QQ阅读APP看书,第一时间看更新

Preface

Service Oriented Architecture (SOA) is an architectural style for distributed computing that promotes the use of discrete software modules, known as services, which interoperate to deliver larger software solutions. The main goal of SOA is to deliver value to the business by bridging the gap between business and IT to maximize business benefits. To do so, SOA architectures adhere to a series of guiding principles such as the ones described in the SOA Manifesto (www.soa-manifesto.org).

Although the potential behind SOA has never been questioned, costly lessons learnt have indicated that, without rigorous governance upfront, the chances of SOA delivering value are remote. Moreover, many concluded that the challenge of implementing SOA does not reside in the intrinsic complexity of its underlying technology platform. It was recognized that the real complexity of SOA lies in aligning people and processes from different lines of business in order to deliver enterprise-wide solutions.

What is Governance in relation to SOA? Although this is a very common question among practitioners, you are likely to be presented with several different answers depending on who you ask. However, the real question is not really what it is, but what it means to an organization and what benefits it can bring to a business. How can it be successfully implemented, and what tools and processes are required to achieve it?

SOA Governance is a commonly misunderstood term and is often confused with other disciplines such as Software Development Lifecycle (SDLC), configuration management, and naming standards. In practice, although SOA Governance covers all of these concepts, its scope is broader and covers everything from planning, analysis, service discovery, design, build, and testing stages of a SOA Solution (Design-time Governance), to live operations and monitoring (Run-Time Governance).

This book defines SOA Governance as the interaction between policies (what), decision makers (who) and processes (how) (SOA Governance: Framework and Best Practices – An Oracle Whitepaper: http://www.oracle.com/us/technologies/soa/oracle-soa-governance-best-practice-066427.pdf).

A SOA Governance implementation can only be successful if it can realize measurable benefits for the business and Return on Investment (ROI). Failing to do so basically means that SOA will be seen as a complex and expensive technology, and not as an architectural style aimed at delivering business benefits.

In reading this book, SOA practitioners will embark on the journey of implementing SOA Governance (what-how-who) using the Oracle SOA Governance Solution. This will be achieved by walking through the common problems that different organizations face when implementing SOA, and how these can be solved by implementing best practice processes, standards, and other techniques, along with using the Oracle Governance Solution toolset.

The components that build up the Oracle SOA Governance Solution infrastructure are depicted in the following diagram:

The components are as follows:

  • Oracle Enterprise Repository (OER): Oracle Enterprise Repository implements a design-time Governance toolset used to support service lifecycle and other key stages of a solution, such as service discovery, and to provide a framework to promote service re-use.
  • Oracle Service Registry (OSR): Oracle Service Registry is a UDDI Version 3-compliant registry used to support runtime governance. It provides a runtime interface to the Enterprise Repository, allowing service consumers to dynamically lookup service locations at runtime.
  • JDeveloper: It is Oracle's preferred integrated development environment (IDE) for the development of software solutions using Java, SOA Suite, and other technologies such as SQL, PLSQL, XML, PHP, among others. JDeveloper offers a wide variety of plugins to integrate with other products such as OER and OSR.
  • Web Service Manager (WSM): This is a security policy manager that allows administrators to centrally define and manage security policies in a non-intrusive manner. Policies can be attached to services in order to enforce security and to enforce compliance to enterprise security policies. Policies can be attached during the design phases as well as at runtime.
  • Oracle API Gateway (OAG): Former Oracle Enterprise Gateway, OAG is a standalone for implementing robust security polices into services. OAG is typically deployed as a policy enforcement point (PeP) in demilitarized zones (DMZ) where services are consumed or exposed by applications located in untrusted networks.
  • Oracle Enterprise Manager (OEM): This is a web based application for managing and monitoring the Oracle-based infrastructures on which services execute. The OEM SOA Management Pack is an add-on for Oracle Enterprise Manager that delivers a complete toolset for configuration management and monitoring of SOA infrastructures.

While there appears to be many different definitions and perceptions of SOA Governance in the SOA community at large, leading to much confusion around the subject matter as a whole, there is one common denominator shared by all SOA practitioners. All Service Orientated Architecture implementations are doomed to failure without implementing at least some level of governance.

This book presents the concepts, guidelines, and tips required for the successful implementation of design-time and runtime SOA governance using the Oracle SOA Governance Solution.

What this book covers

The main objective of this book is to deliver key concepts along with practical guidelines on how to implement service governance using the Oracle SOA Governance Solution. The initial chapters of the book are focused on implementing design-time Governance while subsequent chapters deal with runtime governance and focus on more advanced features of the toolset.

Chapter 1, SOA Governance, describes in detail the key concepts around SOA Governance and the Oracle SOA Governance Solution infrastructure.

Chapter 2, Implementation Case Study, highlights the typical problems and requirements addressed by a typical SOA Governance implementation and highlights the key critical success factors for the implementation.

Chapter 3, Introduction to Oracle Enterprise Repository, describes the core concepts, management consoles, and capabilities supported by OER.

Chapter 4, Initial Configuration, describes the prerequisites and illustrates the steps to be considered when configuring OER for the first time.

Chapter 5, Harvesting, describes the prerequisites and steps for bootstrapping and harvesting assets into OER.

Chapter 6, Asset Lifecycle and Workflow, describes how to implement policies, compliance templates, and workflows in OER in support of the different asset lifecycle stages.

Chapter 7, Oracle Service Registry, describes the core concepts, management consoles, and capabilities supported by OSR. It also provides a practical insight into how to architect an OSR solution.

Chapter 8, Design-time Service Promotion and Discovery, describes how service designers and developers can discover and consume existing services and the complex process of promoting assets to different environments.

Chapter 9, Implementing Basic Runtime Governance, describes how to use the out-of-the-box Oracle Enterprise Manager (OEM) and Web Services Manager (WSM) components to implement runtime governance.

Chapter 10, Extending Runtime Governance, describes the business case for implementing Oracle Enterprise Manager (OEM) and Business Transaction Manager (BTM) in an organization and illustrates how to configure Oracle Enterprise Repository (OER) to monitor SOA Suite infrastructures.

Chapter 11, Extending Governance with AIA Foundation Pack 11g, describes the business case for implementing Oracle Application Integration Architecture (AIA) Foundation Pack to accelerate and de-risk the implementation of a Master Data Management (MDM) and illustrates how to integrate Oracle Enterprise Repository (OER) with the AIA Foundation Pack.

Appendix, Installation Tips and Tricks, delivers a summary, tips, and techniques for installing Oracle Enterprise Repository (OER), Oracle Service Registry (OSR), and Business Intelligence Publisher (BI Publisher).

What you need for this book

This book makes use of the following software:

  • JDeveloper 11g PS6 (11.1.1.7)
  • Oracle Enterprise Repository 11g PS6 (11.1.1.7.0)
  • Oracle Service Registry 11g PS5 (11.1.1.6.0)
  • Oracle BPM Enterprise 10g (10.3.2)
  • OBI Publisher Enterprise 11g PS6 (11.1.1.7.0)
  • Oracle Application Integration Architecture Foundation Pack 11g PS6 (11.1.1.7)
  • Oracle Enterprise Repository Cloud Control 12c Release 3
  • Oracle Business Transaction Manager 12c Release 3
  • Oracle SOA Suite 11g PS6 (11.1.1.7.0)
  • Oracle BPM Suite 11g PS6 (11.1.1.7.0)
  • Oracle Service Bus 11g PS6 (11.1.1.7.0)

Who this book is for

This book is mainly intended for Enterprise Architects, Solution Architects, Technical Architects, and SOA consultants (in general) that have, or wish to implement, SOA Governance using the Oracle SOA Governance Solution.

It is essential that the reader has previous experience or knowledge on the following subjects:

  • JDeveloper 11g
  • Oracle SOA Suite 11g
  • Oracle Service Bus 11g
  • XML technologies in general

Conventions

In this book, you will find a number of styles of text that distinguish between different kinds of information. Here are some examples of these styles, and an explanation of their meaning.

Code words in text, database table names, folder names, filenames, file extensions, pathnames, dummy URLs, user input, and Twitter handles are shown as follows: "The standard convention used by default is <major version>.<minor version>, for example, 1.0."

A block of code will be set as follows:

./harvest -url http://localhost:7101/oer -user
admin -password <password> -file ./test/samples

When we wish to draw your attention to a particular part of a code block, the relevant lines or items will be made bold:

./harvest -url http://localhost:7101/oer -user
admin -password <password> -file ./test/samples

Any command-line input or output is written as follows:

./osb11g-harvest.sh –preview true

New terms and important words are shown in bold. Words that you see on the screen, in menus or dialog boxes for example, appear in the text like this: "The Configure Categorizations window allows for the creation and modification of Categorizations. Click on Add to create a new Categorization".

Note

Warnings or important notes appear in a box like this.

Tip

Tips and tricks appear like this.

Reader feedback

Feedback from our readers is always welcome. Let us know what you think about this book—what you liked or may have disliked. Reader feedback is important for us to develop titles that you really get the most out of.

To send us general feedback, simply send an e-mail to , and mention the book title via the subject of your message.

If there is a topic that you have expertise in and you are interested in either writing or contributing to a book, see our author guide on www.packtpub.com/authors.

Customer support

Now that you are the proud owner of a Packt book, we have a number of things to help you to get the most from your purchase.

Downloading the example code

You can download the example code files for all Packt books you have purchased from your account at http://www.packtpub.com. If you purchased this book elsewhere, you can visit http://www.packtpub.com/support and register to have the files e-mailed directly to you.

Errata

Although we have taken every care to ensure the accuracy of our content, mistakes do happen. If you find a mistake in one of our books—maybe a mistake in the text or the code—we would be grateful if you would report this to us. By doing so, you can save other readers from frustration and help us improve subsequent versions of this book. If you find any errata, please report them by visiting http://www.packtpub.com/submit-errata, selecting your book, clicking on the errata submission form link, and entering the details of your errata. Once your errata are verified, your submission will be accepted and the errata will be uploaded on our website, or added to any list of existing errata, under the Errata section of that title. Any existing errata can be viewed by selecting your title from http://www.packtpub.com/support.

Piracy

Piracy of copyright material on the Internet is an ongoing problem across all media. At Packt, we take the protection of our copyright and licenses very seriously. If you come across any illegal copies of our works, in any form, on the Internet, please provide us with the location address or website name immediately so that we can pursue a remedy.

Please contact us at with a link to the suspected pirated material.

We appreciate your help in protecting our authors, and our ability to bring you valuable content.

Questions

You can contact us at if you are having a problem with any aspect of the book, and we will do our best to address it.