Task: Prepare Templates for the Project
This task describes how to prepare project-specific templates.
Disciplines: Environment
Purpose

The purpose of this task is to:

  • Harvest existing or develop new templates for use by the project.
  • Prepare the templates for project use by partially instantiating them with project-specific information.
  • Make the existing templates accessible to the project members when needed.
  • Working with the artifact producers to incorporate suggestions for improvement.
Relationships
Main Description

This task is where templates are defined for the work products and reports that the project will be producing.

Steps
Identify Templates for the Project
Purpose: To identify which templates are needed by the project.

Based on which work products need to be produced and the formality level required for each work product, identify the set of templates that are needed and their format. Preparing templates is considered part of tailoring the process for the project and the process engineer will spend a fair amount of time with the project manager deciding which templates to make available to the teams.

Project-specific templates serve several purposes, including :

  • To ensure that work products are produced consistently and follow the defined conventions and styles.
  • To describe certain standards required for the project adherence.
  • To get a jump-start on producing work products.

Below is a list of some of the work product types you should consider collecting templates for :

  • Documents
  • Reports
  • Plans
  • Models
  • Source Code
Prepare the Templates for Project Use
Purpose: To make the identified templates ready to use by the project.

Sub-topics:

Obtain Existing TemplatesTo Prepare Templates for project use

Templates may be available from different sources. Some development organizations keep templates in their asset repositories for cross-project reuse. Some projects will make use of the ones shipped with the RUP product. In other cases, satisfactory templates might not be available, so the project should consider developing its own.

Templates that ship with the RUP are packaged into two plug-ins that can be included in any RUP configuration built using Rational Method Composer, and thus be accessible to the project members via the published RUP web site. The RUP templates contained in this configuration are listed on the Templates page.  The templates can also be accessed from the "Templates" section of the work product description pages.

Note: A project does not require templates for all of it's work product types. In some cases, a relevant example provides equal or better value. Some documentation jobs are best done using tool automation. Document generation tools, such as Rational SoDA™, provides lots of ready-made report templates to use for generating reports from project work products.

Develop New TemplatesTo Prepare Templates for project use

The project management might decide to develop new templates as part of the project if one or more of the identified templates is not available or deemed not applicable to the project. This work should be accounted for in project planning, assigned to a team member and followed up as you would for the development of any project work product. These tasks are often performed on a just-in-time basis, or they might even be a result of transforming a produced work product into a template.

The project manager should consider promoting any new or modified templates as candidate assets for future projects. This is usually done as part of project assessment work and is often a collaboration with the organization's process improvement team.

Customize the Templates for Project Use To Prepare Templates for project use

Preparing templates for a project includes customizing them to fit the context of the project, and the style of the delivery process. Some of the traditional templates that ship with the RUP might be too formal for some types of projects, but not formal enough for others. Customizing the collected templates ranges from just inserting the project meta-data, such as company name, project code, and logo, to removing or adding complete sections. Most of the RUP templates have some process guidance in them, to provide in-document assistance for the production of the work product. This text is meant to be erased as the work product evolves. Projects that want all process guidance to be an integral part of the RUP web site, can remove this in-document guidance from the templates as part of their customization task.

Make the Templates AccessibleTo Prepare Templates for project use

There are different ways of making templates available to the project members. The most efficient way is to make them part of the workspace of the tool you use for the production of the work product, for example, if you use Rational Rose™ for designing the system, then it is desirable that your model template appears as a selection when you select to create a new model file. Different applications have different ways of handling this integration. Refer to the on-line help of the application for further details. Regardless of whether its possible to achieve this level of integration, it is valuable to make the templates part of your project-specific process web site to allow the team members to browse and inspect the templates.

The RUP templates are packaged as method plug-ins, and can be included in your method configuration by selecting one or more of these plug-ins in Rational Method Composer.  You can also make your own templates available using the plug-in technology. For more information on plug-ins and configurations, see Concept: Tailoring RUP.

Maintain Templates
Purpose: To improve the templates based on the consumers experience of use.

In any reuse focussed organization, it is critical to the process improvement effort that projects provide feedback on their use of assets. Remember that most good practices generally become good because they've been used a number of times before and have had time to be fine-tuned and improved.

As the templates are instantiated and the work products evolve, the project members are likely to identify improvement areas for the templates. A project might choose to modify the template or raise a change request for it to be handled outside the project, depending on the complexity of the required change. Most projects will benefit from updating the templates as needed, and promoting the improved template to the organization's process group as part of the process improvement effort.



More Information