Understanding the functions of the HCL Compass schema developer

This topic provides an overview of the tasks typically performed by a schema developer.

As a schema developer, you are typically responsible for designing and modifying process models by defining, implementing, testing, and managing schemas. You might also create or modify public queries, charts and reports.

These are common tasks for the schema developer:
  • Designing the process model of the change management system.
  • Creating and managing schema repositories and connections.
  • Developing the schema.
    This task includes the ongoing maintenance of customizing and managing schemas.
    • Select or modify predefined schemas that fit the workflows or create schemas for that purpose
    • Create a test database to test changes made to a schema before upgrading user databases.
  • Upgrading user databases to new schemas
  • Importing and exporting data
  • Creating public queries, charts, and reports
  • Setting security controls

Designing the process model of the change management system

Describing all of the work required to design and implement a change request management system is beyond the scope of this help system. But you must invest the time to create a comprehensive implementation plan. A significant effort is typically required to analyze existing processes (because they are rarely documented) and to achieve consensus on how they ought to work.

To design and implement a change request management process:

  1. Identify the scope of the process.
  2. Determine the roles of the different types of users.
  3. Construct the change management process model.
  4. Obtain agreement about the model from users and management.
  5. Train users and deploy the system.
  6. Enforce the change management process.

A team might be jointly responsible for many of these tasks, but as the schema developer you must ensure that none are overlooked.

Creating and managing schema repositories and connections

Use the Maintenance Tool to create and manage schema repositories.

When you create a schema repository, you also create a connection (or database set) that keeps track of all of the databases associated with schemas in that schema repository. You then use the Maintenance Tool to manage these connections.

You also use the Designer to create a user database and associate it with a predefined schema.

For more information, see Manage databases.

Developing the schema

Document the process model or models that the schema must enforce. The documentation might include this information:

  • Descriptions of the types of users and their roles
  • A diagram of the states and actions used to model the process
  • Descriptions of the rules that control the actions
  • Sketches of forms and reports for viewing and submitting data, or lists of fields to include in these forms and reports.

When the requirements are known, create or modify a schema to build the process model.

Several predefined schemas are available to help with this task.

Table 1. Predefined schemas
Schema Description
ALM The (ALM) schema provides fields and rules to help coordinate software development activities, and supports the lifecycle management of assets and their relationships.
Blank Contains only system fields. A minimum configuration base for building schemas.
Common A base-level configuration with the most commonly used schema elements.
DefectTracking A schema with features for defect-tracking processes.
Enterprise A schema with fields and rules that allow HCL Compass to be used with HCL Suite Enterprise. Contains fields and hooks that work with all HCL products.
UnifiedChangeManagement A schema with fields and rules that allow HCL Compass to be used with HCL UCM.

To create a schema that models your process, you have several options:

  • Create a schema from the Blank schema and add fields to the record for change requests; create a State Transition Matrix that defines the actions that move change requests between states; and create forms, queries, and reports to view and modify data.
  • Modify a predefined schema.
  • Modify an existing schema.
  • Add packages to an existing schema. A package is a set of schema components (record types, fields, tabs, forms, scripts, and queries) that can be applied to a schema to add a complex feature or function. Examples of capabilities added through packages include sending e-mail notifications, documenting the history of a change request, and adding attachments to a record. The packages available can be accessed from the Package menu of the Designer.
  • Add hooks to provide custom processing.
  • Add integrations with other HCL software products. Special packages are available to integrate HCL Compass with other HCL products, including HCL VersionVault and the Unified Change Management (UCM) feature.

Upgrading user databases

When you create or modify a schema, use the Designer to create or upgrade user databases to work with the latest version of the schema.

For more information, see Manage user accounts.

Importing and exporting data

You can import and export data from other data sources by using the Import and Export wizards in the HCL Compass Client.

For more information, see Overview of importing and exporting data.

Creating public queries, charts, and reports

You can create and modify queries, charts, and reports and store them in the Public Queries folder to be available to all users. Alternatively, you can delegate these tasks to other users such as project managers. For information about required user privileges to creating public queries, charts, or reports, see User privileges.

Setting security controls

You can design and implement secure access to functions and data.
  • User authentication
  • User authorization
    Authorization is based on user privileges and other security features.
  • User profiles
    A user profile defines the databases a user can access, the user privilege setting, and the user groups associated with a user.
  • A security model for record types

    One of the most powerful capabilities related to managing user accounts is the ability to set security controls on records so that you can control the information that is available to individual user groups. For example, you might want to allow customers to submit and view change requests, without being able to see sensitive information about change requests submitted by other customers or by members of your development team.

    To set up this type of security, you can make records visible only to specific user groups. You can also restrict access to fields on a record form tab to specific user groups.

    You set security controls on records by creating a security context field in the record type, and then assigning user groups permission to see records that have a certain value in this field.

For more information about security, see Creating a security model