Review Templates

Top  Previous  Next

A "Review Template," or a "Review Workflow," is a particular set of roles, custom fields, and other options that determine the behavior and rules of a review.

Small installations might have only one template.  Some installations will want a template for "quick" reviews (self-checks during active development of new features), another for "standard" (one author, one reviewer, suitable for most reviews), and another for "very strict" (reviews of a stable branch, core module, or particularly difficult piece of code).  Still others might require different templates in different development groups all using a single server.

The Review Templates section in the Admin screen allows an administrator to configure these templates.

admin-workflows-list

Template Management

The default configuration is to have only a single active template, and this is adequate for many smaller installations and trials.  When there is exactly one template, the user is not prompted to select a template when he creates a review; the one template is automatically selected.  If additional templates are added later, the template that was the singleton is still applied to those existing and completed reviews.

You cannot have fewer than one active template.  The user interface will not allow you to disable the last template in your system; users need something to control the rules of the review.

You also cannot delete templates.  Old templates are needed for existing and completed reviews that depended on that template.  You can, however, mark templates as "disabled," in which case they appear only in the administrative interface but never when creating a new review.  Existing reviews with that template continue to their completion so as to not disrupt their progress:

Here "Formal Inspection" has been disabled.
admin-workflow-list-disabled

Editing Templates

admin-workflows-detail

Every template has a Name and Description.  Both of these are shown to the user for reference.

admin-workflows-customfields

Each template can include an arbitrary set of custom review and defect fields.  The master list of all possible custom fields is set up separately; here you can configure which of those fields to display to the user during this template.  This makes it possible to have templates with various field requirements, but where the same field can be reused across templates the database and user interface will make that plain.

admin-workflows-roles

Each template also specifies a single role configuration to use for that review.

Templates in Flux

What happens when a review changes its template, or when a template definition changes when a review is already in progress or complete?

A review can only change template during the Planning phase.  This means once the review is under way, the template is fixed.  This makes sense -- it would be hard to change e.g. the role configuration when participants are already invited and performing their respective tasks!  During the planning phase the wizard interface prevents the user from making incorrect moves.

If template definitions change while a review is in progress, the system gracefully adjusts in a similar manner to changing custom fields.  Existing data is saved; if new fields are present they will be required when a new review or defect is created but are not required if a review or defect is already created.  If a custom field is removed from the template it will disappear from the review interface immediately.  But the data is not lost, and if the custom field is re-enabled in that template it will re-appear with the content it had previously.

When a custom field is added and there is exactly one active template, that template will be automatically updated to include that field.  If there is more than one active template, none are updated automatically and the default is to "not show" the field, so the administrator will need to visit all applicable templates and add this field to the list.

In general the system handles changes to templates quite gracefully, even if reviews are already in progress.  Still, in the interest of not surprising users, it's usually best to change template rules on off-hours, and to send an explanatory email so users are aware of what's going on.