Schema developer role

Schema developers are responsible for designing and planning the change-request process and for creating the schema to implement that process.

Schema developers typically perform the following tasks:

  • Designing the process model of the change-management system
  • Developing the schema, including customizing and managing schemas
  • Selecting or modifying predefined schemas that fit the workflows or creating schemas for that purpose
  • Creating a test database to test changes made to a schema before upgrading user databases
  • Importing and exporting data
  • Creating public queries, charts, and reports
  • Setting security controls
Designing and planning the process model involves a number of substantial tasks:
  • Designing the state transition model. A state transition model identifies the states that a change request can or must go through from its origination to its completion. Examples of states include submitted, assigned, and resolved
  • Identifying the roles of users and defining how these roles fit into the workflow. For example, a project manager assigns change requests, developers research and resolve change requests, and quality engineers validate resolved change requests
  • Identifying the fields to add to the change-request record type to record the information that the development environment needs
Schema developers often customize a predefined schema to implement a change-management process. Customizing a schema consists of the following activities:
  • Adding fields to the change-request record type
  • Changing the appearance of record forms by adding fields and controls, such as buttons and list boxes
  • Adding states and actions to the change-request record type to reflect the state transition model. An action moves the change request from one state to another. For example, an assign action moves a change request from the submitted state to the assigned state
  • Writing hook scripts to customize the workflow. A hook script is code executed in response to a specific user action. For example, a hook script associated with a field might require users to enter an integer within a specified range
  • Applying packages to add functionality or integration with another product. A package is a set of definitions, such as fields, form controls, and hooks, that are applied to a schema to add functionality. For example, the Attachments package adds a tab to the change-request record form to allow users to attach related files