The following process shows you high-level steps for creating
a patch.
Procedure
- Create a task (or several tasks) and assign
it to the appropriate developers for the patch release.
- Give the project information and new release
values to the developers.
Developers
must copy a new development project from the baseline release and
set their current task. They can then diagnose and fix the problem,
unit test, and then complete the current task.
Note: Developers
who are fixing problems must set the release value on their projects before checking
out files. They also must set the current task so that objects they
check out are associated with the correct task automatically. If developers
do not follow these steps, they must perform several manual steps
to ensure that the patch includes the correct objects.
Also, developers cannot complete any other
work in the patch projects. Other checked out versions must not be
tagged with the patch release value because they are then included
in the patch accidentally.
- Create a system testing project for each
project being patched.
You can follow
the same steps to create the system testing project with
the following exception:
Copy
only the projects to be included in the patch.
Creating a system testing project is
discussed in Creating the system testing projects.
Note: You do not need an integration prep patch
project.
- See Building with specific tasks.
- Set up a test area.
To set up a test area for the patch, install a copy
of the released software to an installation area (for example, patch_test_1.2),
then copy the products built for the patch into the area. (Ideally,
install the patch the same way your customers install it.)
If you have a special utility for installing patches,
use it instead.
- System testing proceeds. If defects are
found, start the cycle again at 1 (However, do not repeat 2 and 3).
- When the patch passes your quality standards,
make it available to customers.
- Check in your new projects and create a
baseline that contains the new projects as well as the other projects
in the hierarchy.