One of the functions that WebSphere Service Registry and Repository provides is governing services through their life cycle, from initial proposal through being in production, to retiring a service. WSRR is also highly customizable and pretty much every aspect of how a service is governed can be changed. It is therefore no surprise to learn that the Governance Enablement Profile (GEP) shipped with WSRR is just using the customizable aspects of WSRR to provide a service management solution. You could make your own Governance Profile using the same tools.
- Business Models - the various objects in the GEP are business models.
- Life cycles - the life cycle support in WSRR is used to define the life cycle the various service artifacts go through.
- Governance Profile Validator (GPV) - a WSRR Validator plugin, this allows changes to objects in WSRR to be checked and rejected if they do not fit the business intent of the GEP. The GPV uses rules encoded in XML, which you can edit in WSRR Studio.
- Service Model Correlator modifer (SMCM) - a WSRR Modifier plugin, the SMCM is responsible for creating business model objects when you load service documents such as WSDL, XSD or SCA. These business model objects are called "correlators" and represent the various parts of the service documents. They are then connected to the business model objects representing services, service level definitions and service level agreements.
- Promotion - WSRR supports multiple instances, for each different sort of system you may have looking up WSDLs, for example a WSRR for your staging services and one for your production services. The mechanism used to push data from the main WSRR server (called the Governance Master) to these runtime WSRRs is called Promotion. The GEP uses promotion to push service information into the various runtime WSRR servers at the correct stage in the life cycle of a service. For example when a service is in the stage of its life cycle when it should be on the production server, it is promoted to the production WSRR instance, so that Enterprise Service Busses can find the WSDLs for the service.
- Governance records - WSRR keeps track of the life cycle state of objects using Governance Records, and groups objects that are all in the same life cycle under a governance record. The GEP uses this mechanism to group various objects together.
- Custom actions in the Web UI - the Web UI has the ability to have custom buttons added, which run Java code. The GEP defines custom buttons on the detail panel for objects. The custom buttons can be used to move an object through its life cycle, create a new Service Version or create a new SLD.
- Fine grained access control roles and rules - WSRR has fine grained access control roles, which can be used to assign users into various roles. The GEP uses the roles to decide who is allowed to change the objects in WSRR. For example, a user in the SOA Governance role is only allowed to approve a service.
So that is how the GEP uses the components in WSRR to work. Next I will look at the scenario of doing a Propose Production Deployment on a Service Version, and what each part does.