Interface GovernanceDefinitionsInterface


public interface GovernanceDefinitionsInterface
The GovernanceDefinitionsInterface supports the definition of the governance drivers, policies and controls that define the motivation, goals and implementation approach for the governance program. Governance drivers document of the business strategy and regulations that provide the motivation behind the governance program. They feed into the governance program's policymaking phase ensuring the governance program is focused on activity that delivers value to the organization. A governance driver could be a governance strategy statement, a business imperative, a regulation or a regulation's article. Governance policies define the goals and best practices for the governance program. There are three types of governance policies:
  • Governance Principles define the invariants that the organization tries to maintain.
  • Governance Obligations define the requirements coming from regulations and policy makers of the organization.
  • Governance Approaches describe preferred approaches and methods to follow
Within the definition of each governance policy is a description of what the policy is trying to achieve along with the implications to the organization's operation when they adopt this. These implications help to estimate the cost of the policy's implementation and the activities that need to happen. The governance definitions that define how the governance program is to be implemented. There are two types of governance definitions:
  • Technical Controls define the use of technology to implement governance definitions. They consist of either:
    • GovernanceRule - a rule that need to be enforced to support a requirement of the governance program.
    • GovernanceProcess - a series of automated steps that need to run to support a requirement of the governance program.
  • Organizational controls define roles, teams and manual procedures that implement an aspect of governance. They consist of either:
    • GovernanceResponsibility - a set of responsibilities that can be associated with a governance role
    • GovernanceProcedure - an manual procedure
Within the definition of each governance definition is a description of what the control is trying to achieve along with the implications to the organization's operation when they adopt this. These implications help to estimate the cost of the control's implementation and the activities that need to happen.
  • Method Details

    • createGovernanceDefinition

      String createGovernanceDefinition(String userId, GovernanceDefinitionProperties properties, GovernanceDefinitionStatus initialStatus) throws org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException, org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException, org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException
      Create a new governance definition. The type of the definition is located in the properties.
      Parameters:
      userId - calling user
      properties - properties of the definition
      initialStatus - what is the initial status for the governance definition - default value is DRAFT
      Returns:
      unique identifier of the definition
      Throws:
      org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException - typeName, documentIdentifier or userId is null; documentIdentifier is not unique; typeName is not valid
      org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException - problem accessing the metadata service
      org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException - security access problem
    • updateGovernanceDefinition

      void updateGovernanceDefinition(String userId, String definitionGUID, boolean isMergeUpdate, GovernanceDefinitionProperties properties) throws org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException, org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException, org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException
      Update an existing governance definition.
      Parameters:
      userId - calling user
      definitionGUID - unique identifier of the definition to update
      isMergeUpdate - are unspecified properties unchanged (true) or removed?
      properties - properties to update
      Throws:
      org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException - guid, documentIdentifier or userId is null; documentIdentifier is not unique; guid is not known
      org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException - problem accessing property server
      org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException - security access problem
    • setGovernanceDefinitionStatus

      void setGovernanceDefinitionStatus(String userId, String definitionGUID, GovernanceDefinitionStatus newStatus) throws org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException, org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException, org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException
      Update the status of a governance definition
      Parameters:
      userId - calling user
      definitionGUID - unique identifier
      newStatus - new status
      Throws:
      org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException - guid, status or userId is null; guid is not known
      org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException - problem accessing property server
      org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException - security access problem
    • deleteGovernanceDefinition

      void deleteGovernanceDefinition(String userId, String definitionGUID) throws org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException, org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException, org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException
      Delete a specific governance definition.
      Parameters:
      userId - calling user
      definitionGUID - unique identifier of the definition to remove
      Throws:
      org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException - guid is null or not known
      org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException - problem accessing property server
      org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException - security access problem
    • linkPeerDefinitions

      void linkPeerDefinitions(String userId, String definitionOneGUID, String definitionTwoGUID, String relationshipTypeName, PeerDefinitionProperties properties) throws org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException, org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException, org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException
      Link two related governance definitions together. The governance definitions are of the same type as follows:
      • A relationship of type GovernanceDriverLink is between two GovernanceDriver definitions
      • A relationship of type GovernancePolicyLink is between two GovernancePolicy definitions
      • A relationship of type GovernanceControl is between two GovernanceControl definitions
      If the link already exists the description is updated.
      Parameters:
      userId - calling user
      definitionOneGUID - unique identifier of the first definition
      definitionTwoGUID - unique identifier of the second definition
      relationshipTypeName - the name of the relationship to create
      properties - description of their relationship
      Throws:
      org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException - one of the guids is null or not known
      org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException - problem accessing property server
      org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException - security access problem
    • unlinkPeerDefinitions

      void unlinkPeerDefinitions(String userId, String definitionOneGUID, String definitionTwoGUID, String relationshipTypeName) throws org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException, org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException, org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException
      Remove the link between two definitions.
      Parameters:
      userId - calling user
      definitionOneGUID - unique identifier of the first definition
      definitionTwoGUID - unique identifier of the second definition
      relationshipTypeName - the name of the relationship to delete
      Throws:
      org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException - one of the guids is null or not known
      org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException - problem accessing property server
      org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException - security access problem
    • setupSupportingDefinition

      void setupSupportingDefinition(String userId, String definitionGUID, String supportingDefinitionGUID, String relationshipTypeName, SupportingDefinitionProperties properties) throws org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException, org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException, org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException
      Create a link to show that a governance definition supports the requirements of another governance definition. This supporting relationship is between definitions of different types as follows:
      • A relationship of type GovernanceResponse is between a GovernanceDriver and a GovernancePolicy
      • A relationship of type GovernanceImplementation is between a GovernancePolicy and a GovernanceControl
      If the link already exists the rationale is updated.
      Parameters:
      userId - calling user
      definitionGUID - unique identifier of the governance definition
      supportingDefinitionGUID - unique identifier of the supporting governance definition
      relationshipTypeName - the name of the relationship to create
      properties - description of how the supporting definition provides support
      Throws:
      org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException - one of the guids is null or not known
      org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException - problem accessing property server
      org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException - security access problem
    • clearSupportingDefinition

      void clearSupportingDefinition(String userId, String definitionGUID, String supportingDefinitionGUID, String relationshipTypeName) throws org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException, org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException, org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException
      Remove the supporting link between two governance definitions.
      Parameters:
      userId - calling user
      definitionGUID - unique identifier of the governance definition
      supportingDefinitionGUID - unique identifier of the supporting governance definition
      relationshipTypeName - the name of the relationship to delete
      Throws:
      org.odpi.openmetadata.frameworks.connectors.ffdc.InvalidParameterException - one of the guids is null or not known
      org.odpi.openmetadata.frameworks.connectors.ffdc.PropertyServerException - problem accessing property server
      org.odpi.openmetadata.frameworks.connectors.ffdc.UserNotAuthorizedException - security access problem