This chapter describes the typical steps that should be fulfilled when defining the Bootstrap Strategy and the subsequent actions required to successfully execute the Harvester.
The chapter walks through the process of:
When Oracle Enterprise Repository (OER) is being implemented for the first time, one of the first questions asked by an organization is how can they bootstrap hundreds of existing Assets in a clean, organized, and exploitable way. There is little point in implementing OER, if hundreds (or even thousands) of Assets have to be manually entered into the tool. An even worse case scenario occurs when Assets are automatically loaded (harvested) but uncategorized, meaning that it is impossible to make sense of the information. That said, OER relies heavily on the Harvester and the Solution Packs to perform such tasks.
As described in Chapter 3, Introduction To Oracle Enterprise Repository, Harvesting is the process of gathering information from different design-time and runtime sources, and loading these into OER. Harvesters are tools that enable the OER to discover and register Assets from design-time sources such as JDeveloper, for example, or runtime repositories such as an SOA production instance.
Harvesting is a continuous process and can be done in a variety of ways. For example, by the command line, using ANT, WSLT, JDeveloper plugins, and even custom scripts employing the REX API.
Section 6: Configuring and Using Automated Harvesting in Design-time and Runtime Environments of the OER Configuration Guide elaborates exhaustively on the Harvesting features and techniques. Please refer to this guide for more advance details on the use of the Harvester: http://docs.oracle.com/cd/E23943_01/admin.1111/e16580/harvest.htm#CEGHBGIJ
Before bootstrapping the repository, it is imperative to have a good understanding of the as-is Asset state and document the same. By having an accurate view of what the Assets are, where they reside, and what their current state is, it will be possible to define the best Bootstrapping Strategy and thereby to employ the right Harvester and Harvesting technique.
In the case of Weir & Bell Telecom, the main Assets and Asset Types were well known and this can be seen in the Asset Relationship View available in Chapter 4, Initial Configuration. Furthermore, during the maturity assessment exercise of the Project Enablement phase, information about Assets such as type, location, and status was gathered, quantified, qualified, and mapped against the corresponding OER Asset Type, if available. This information was later used to define the right Harvesting and Bootstrapping Strategy. The following table provides a summary of the information gathered:
Asset Name |
Document Type |
Category |
OER Asset Type |
Amount |
Location(s) |
Qualification |
---|---|---|---|---|---|---|
SOA Strategy and Roadmap |
Word Document |
Governance Framework à Strategy |
N/A |
1 |
Content management system (accessible via browser) |
Up-to-date |
Service Catalogue |
Excel Spreadsheet |
N/A |
N/A = Strategy |
1 |
Outdated. Unreliable. | |
SOA Reference Architecture |
Word Document |
Governance Framework à Reference Architecture |
N/A = Governance Document |
3 |
Up-to-date. | |
Development Standards |
Word Document |
Governance Frameworkà Standards |
N/A = Governance Document |
1 |
Up-to-date. | |
Design Standards |
Word Document |
N/A = Governance Document |
1 |
Up-to-date. | ||
Programming Standards |
Word Document |
N/A = Governance Document |
1 |
Up-to-date. | ||
Runtime Framework Detail Designs |
Word Document |
Governance Frameworkà Framework Component Detail Design |
N/A = Design Document |
4 |
Subversion |
Up-to-date. |
System Use Case |
Word Document |
Project Deliverables à Requirements |
N/A = Requirement Document |
20~ |
Subversion |
|
Functional Design |
Word Document |
N/A =Design Document |
20~ | |||
SOA High Level Designs |
Word Document |
Project Deliverables à High Level Design |
N/A = Design Document |
5~ | ||
Service Detail Design |
Word Document |
Project Deliverables à Detail Design |
N/A = Design Document |
60~ | ||
Data Mapping Document |
Spreadsheet |
Project Deliverables à Detail Design |
N/A = Design Document |
60~ | ||
Unit Test Plans |
Word Document |
Project Deliverables à Test Plan |
N/A = Design Document |
60~ | ||
JDeveloper SOA 11g Application & Projects |
Folders and XML Documents |
Project Deliverables à Code |
N/A |
150+ | ||
Eclipse OSB 11g Projects |
Folders and XML Documents |
N/A |
150+ | |||
WSDLs |
XML Documents |
Artifact : WSDL |
Unknown (Many) |
Subversion MDS SOA Suite OSB |
| |
Schemas (XSD) |
Artifact : XSD | |||||
XSLTs |
Artifact : XSLT | |||||
SCA Composites |
Composite | |||||
Fault Policies |
Fault Policy | |||||
Other XML Documents |
Adapters, Mplans, Rules, JCA, and others. |
Many available in Solution Pack |
Having elaborated an as-is view of the Assets state and their status, it was possible to elicit the most reliable Harvesting Strategy.
Information about which Asset Types and Repositories are supported by OER is available in the following sections of the OER Configuration Guide:
6.1.3 Artifacts/Products Version Matrix
http://docs.oracle.com/cd/E23943_01/admin.1111/e16580/harvest.htm#BABGCDID
6.2.1 Obtaining the Harvester
http://docs.oracle.com/cd/E23943_01/admin.1111/e16580/harvest.htm#CIHDJGJF
A.8 Asset Type Inventory
http://docs.oracle.com/cd/E23943_01/admin.1111/e16580/appx.htm#CEGEDEJA
Additionally you may refer to the OER Asset Type Catalog for a full list of the Asset Types available in the solution and base packs: http://www.oracle.com/technetwork/middleware/repository/overview/asset.xls
Based on the qualification made, the Harvesting Strategy was as follows:
Alternatives such as Harvesting from Subversion or Artifact Stores were considered, but ultimately discarded as these repositories contained several versions of the same Assets in different folders, for example, trunk, tags, and branches, and it was concluded that identifying the latest version for each Asset would have been more difficult than getting the latest version from production.
Further to the Strategy, it was identified that the following Categorizations and Asset Types were not available in the Base Pack or Solution Pack and therefore had to be created in OER:
Categorizations:
Asset Types:
Most OER Asset Types allow for Asset-related Documentation to be added as metadata, but Weir & Bell Telecom preferred to define explicit Asset Types for key Document/Electronic Assets, and then define the relationship of these Document Assets to the actual Code. This would allow relationships to be graphically visualized using the Navigator applet (for example, a composite application relationship to its corresponding detail design, and so on) instead of these being hidden as a content of the tab.
The following sections will provide a comprehensive guide on how the Repository was Harvested and configured based upon Weir & Telecom's defined Harvesting Strategy.