Defining requirements

When project members propose new requirements for a project, the requirements need to be researched and documented. In the CollabNet Baseline Project template, you can use the Definition page for the following purposes:

You can use this page to view a complete list of requirements or only requirements that have been accepted into the release.

During the Definition subpage, you may want to track action items such as reviewing a particular requirement, writing the functional specification for a requirement, and so on. The Definition page of the CollabNet Project template provides an Action Item artifact type for recording and tracking these types of activities.

Note: Requirements that are displayed on this page have been defined using a Requirements artifact type in Project Tracker. For requirements that are currently in the Definition subpage, the Subpage in Lifecycle attribute for the requirement has been set to Definition.

Finding requirements and action items that are relevant to the Definition subpage

The following procedures describe how to find requirements and action items that are relevant to the Definition subpage.

To view requirements associated with the Definition subpage:

  1. Click the Projects page.
  2. Click the link for a project that uses a process template.
  3. Click the Definition icon on the Page Navigator toolbar or the Definition link in the left navigation pane.
  4. In the Requirements column of the activity area, click one of the following:
    Note that the activity area is either directly below the page navigation toolbar or at the top of the page. It is the area with a light blue background:
    Add new requirement - To enter a requirement that may be considered for inclusion in the product.
    View active requirements flagged for discussion - View requirements that have a Flagged for Discussion attribute value that is set to Yes and a Status attribute value of Submitted, Started, On hold, or Reopened.
    View active requirements currently in definition - To view requirements that have been accepted into the release and for which definition work can start or is in progress. For requirements that appear when you click this link, the value of the Subpage in Lifecycle attribute is Definition, and the value of the Accepted into Current Subpage attribute is Yes. The value of the Status attribute is Submitted, Started, On hold, or Reopened.
    View active requirements ready for definition - To view requirements that have been proposed for the release but have not yet officially been accepted. For requirements that appear when you click this link, the value of the Subpage in Lifecycle attribute is Definition, and the value of the Accepted into Current Subpage attribute is No. The value of the Status attribute is Submitted, Started, On hold, or Reopened.
    View active requirements in any stage - These requirements contain Status attributes with one of the following values selected: Submitted, Started, On hold, or Reopened.

To view action items associated with the Definition subpage:

  1. Click the Projects page.
  2. Click the link for a project that uses a process template.
  3. Click the Definition icon on the Page Navigator toolbar or the Definition link in the left navigation pane.
  4. In the Action Items column of the activity area, click one of the following.
    Note that the activity area is either directly below the page navigation toolbar or at the top of the page. It is the area with a light blue background:
    Add new action item - To enter an action item, for example, writing a use case or reviewing the Marketing Requirements document.
    View active action items that are flagged for discussion - To view action items that have a Flagged for Discussion attribute value that is set to Yes and a Status attribute value of Submitted, Started, On hold, or Reopened.
    View active action items that are specific to definition - To view action items that have an Action Item Type attribute value of Definition, and a Status attribute value of Submitted, Started, On hold, or Reopened.
    View active action items of any type - To view action items that have a Status attribute value of Submitted, Started, On hold, or Reopened.

Adding requirements and action items to the Definition page

In the Definition phase of a project, you can add requirements for consideration, refine the requirements, and promote requirements that are ready to the Design phase.

During this phase, there may be one or more additional action items that you need to complete. You can add action items , for example, reminders to create use cases, and associate them with the Definition subpage.

To add a requirement or action item that is returned on a query on the Definition page:

  1. Click the Projects page.
  2. Click the link for a project that uses a process template.
  3. Click the Definition link on the Page Navigation toolbar or in the left navigation pane.
  4. Click Add new in the activity area, in either the Requirement or Action item column.
    The activity area is either directly below the page navigation toolbar or at the top of the page. It is the area with a light blue background.
  5. Enter the required information for the requirement or task.
  6. If prompted, click Next.
  7. For a requirement, in the Application Lifecycle section, select Definition from the Subpage in Lifecycle drop-down list.
    For an action item, in the Submission Information section, select Definition from the Action Item Type drop-down list.
    This ensures the artifact is returned on a query issued from the Definition page.
  8. If you want the artifact to appear on a milestone query on the Project Management page, select the appropriate milestone from the Target Milestone drop-down list.
  9. Complete any other required information (marked with an asterisk, "*").
  10. Click Save Changes.

To indicate that a requirement has been accepted into the project and definition can begin:

  1. Click the Projects page.
  2. Click the link for a project that uses a process template.
  3. Click the Definition link on the Page Navigation toolbar or in the left navigation pane.
  4. In the Requirements column in the activity area, click the Ready for Definition link.
    The activity area is either directly below the page navigation toolbar or at the top of the page. It is the area with a light blue background.
  5. From the query results page, click the link for the requirement that you want to accept into the project.
  6. Ensure the following settings are applied to this artifact:
    The value of the Subpage in Lifecycle attribute set to Design.
    The value of Accepted Into Current Subpage? is set to Yes.
    The value of the Status attribute set to Submitted, Started, On hold, or Reopened.
  7. Click Save Changes.
    You can now view this artifact by clicking the Currently in Definition query link on the Definition landing page.

Indicating when a requirement is ready for design

To promote a requirement to the next stage of the process, you change the value of its Subpage in Lifecycle attribute. This causes the attribute to be returned on the stage-specific query for the subpage that you select.

To move a requirement from the Definition page to the Design page:

  1. Click the Projects page.
  2. Click the link for a project that uses a process template.
  3. Click the Definition icon in the Page Navigator.
  4. Click the Currently in Definition link in the Requirements column of the activity area.
    The activity area is either directly below the page navigation toolbar or at the top of the page. It is the area with a light blue background.
  5. From the query results page, select the requirement that you want to indicate as being ready for design.
  6. In the Application Lifecycle section, select Design from the Subpage in Lifecycle drop-down list.
    The value of the Accepted into Current Subpage attribute is automatically reset to "No" when you do this.
  7. Click Save Changes.

Raising use cases and test cases based on requirements

You may need to create use cases and test cases based on your requirements. For example, if you have a requirement to create a new reporting tool, you may need to create several use cases that describe the types of reports a user may need to generate, and the types of operations a user may perform with a report.

To generate a use case or test case from a requirement:

  1. Click the Projects page.
  2. Click the link for a project that uses a process template.
  3. Click the Definition icon on the Page Navigation toolbar or the Definition link in the left navigation pane.
  4. In the Action Items column of the activity area, click the link for a query that will return the requirement that is to be the basis of the use case or test case. The link for Active requirements currently in definition may be appropriate. Alternatively, you can create a new requirement.
  5. Click the link for the requirement that you want to base the new item on.
  6. From the page for viewing the requirement, click Copy artifact.
  7. In the copy page, select the drop-down list for the current project, and click the artifact type that you want to copy this customer case to.
    For instance, if you want to generate a test case based on this requirement, click Test Case.
  8. From the page that lists all artifacts that these two artifact types have in common (these are the attributes that are copied), click the Copy artifact(s) button.
    You may be prompted to provide a reason.
  9. A page showing the new artifact is displayed.
    Note that you may have to supply additional information for the new artifact. For example, if you copied a requirement into a test case, you may be required to provide the ID of the original requirement, and the systems and subsystems that must be tested.
  10. To ensure that the new artifact is visible from another page, click the appropriate query link in the Activities area and do the following:

Reading and creating Definition documentation

You can access project documentation from a Documentation table on the Definition page. If you are responsible for authoring project management documents, you can download templates for these documents from this page and upload the draft or completed documents. You or the project administrator can also add new documentation templates to the list.

If you have a content developer role in the project project (or have both VersionControl - Commit and VersionControl - Add permissions granted by an administrator), you can also add information to this page as well as view this page. However, the project administrator may prefer to take requests for additions to this page and be the sole person who actually performs the updates.

The Documentation table on this page contains a View other project documents link. Clicking this link is equivalent to clicking the Documents and files link in the left navigation pane.

Important: If you experience any difficulty uploading documents on this page, ask your project administrator to be sure that two Subversion integrations settings are turned off for the project. The administrator should click the project link on the Projects tab, clickEdit project > Tool configuration, then turn off the Message must name artifact and Committer must own artifact settings in the Subversion section of the page.

To view project documentation on the Definition page:

  1. Click the Projects tab.
  2. Click the link for a project that uses a process template.
  3. Click the Definition link on the Page Navigation toolbar or the left navigation pane.
  4. Scroll to the Process Documents table.
  5. Click the link for the document that you want to read.

To download a project document template from the Definition page:

  1. Click the Projects tab.
  2. Click the link for a project that uses a process template.
  3. Click the Definition link on the Page Navigation toolbar or the left navigation pane.
  4. In the Process Documents section, click the View document templates link.
  5. Click the link for the template that you want to edit.
  6. Save this file locally and edit it.

To add or update a project document on the Definition page:

  1. Click the Projects tab.
  2. Click the link for a project that uses a process template.
  3. Click the Definition link on the Page Navigator.
  4. In the Process Documents section, click the Upload document link.
  5. Browse to the document that you want to upload.
  6. Click Save.
    Note that this document is saved in the project's version control repository. If you want to rename or delete this document, you must use your version control client.

Viewing and adding work products

On the Definition page, there are links in the activity area to various work products. The activity area is either directly below the page navigation toolbar or at the top of the page. It is the area with a light blue background.

A project administrator may have replaced link to the requirements system with live data. However, if this has not been done, you can configure these links. You can also add requirements documents at any time.

To upload requirements documents:

  1. Click the Projects tab and click the link for the project where you want to add this documentation.
  2. Click Definition on the page navigation toolbar or in the left navigation pane.
  3. In the Work Products column of the activity area, click View requirements documents.
    The activity area is either directly below the page navigation toolbar or at the top of the page. It is the area with a light blue background.
  4. On the Requirements Documents page, click Upload document.
  5. Browse for the file and click Save.

To configure the work products link to the requirements system:

  1. If you have not done so already, use Subversion to check out the process template directory.
    For example, you may check out My-Project/trunk/www/cn-project-pages
    Where My-Project is the name of the project you are working on.
  2. Use your version control tool to update the Definition top.html snippet.
    For example, using Subversion, this will be in My-Project/trunk/www/cn-project-pages/Stages/Definition/snippets/top.html
  3. Open the top.html file in an editor.
  4. In the section for work products, edit the following link:
    <div class="launch_icon"> 
    Launch systems: 
    </div> 
    <!-- onclick="return launch(this.href, 1);" makes the link open in a small new window --> 
    <!-- Use onclick="window.open(this.href); return false;" to make the link open in a normal-sized new window --> 
    <!-- Edit the title to change tool tip -->
    <ul>
    <li><a href="/nonav/cn-project-pages/help/customizing_alm_links.html" 
         onclick="return launch(this.href, 1);" title="Go to a Web-enabled requirements management application 
         [Note: link may open in new window]" class="helplink">Requirements system</a></li>
    </ul>

    For example, you might substitute the following:

    <li><a href="http://www.your_url_here.com/" 
    onclick="window.open(this.href); return false;" 
    title="Go to a Web-enabled requirements management application">
    Requirements system</a></li>
    As shown in the example, you can change onclick="return launch(this.href, 1);" to onclick="window.open(this.href); return false;" to make the link open in a normal-sized browser window instead of the smaller-sized window.
    Remove onclick="return launch(this.href, 1);" if you do not want the link to open a page in a new browser window.
    Remove or edit title="Go to a Web-enabled requirements management application [Note: link may open in new window]" if you do not want text to appear in a tool tip when the user moves the cursor over the link.
    Remove class="helplink" if you do not want the cursor to be a question mark icon for this link.
  5. Submit your changes.

Customizing the Resources links

At the bottom of the Definition landing page, you can provide information that points users to any other information that you think is relevant.

To edit the Resource Links table:

  1. If you have not done so already, use Subversion to check out the process template directory.
    For example, you may check out My-Project/trunk/www/cn-project-pages
    Where My-Project is the name of the project you are working on.
  2. Use Subversion to update the Definition bottom.html snippet.
    For example, using Subversion, this will be in My-Project/trunk/www/cn-project-pages/Stages/Definition/snippets/bottom.html
  3. Open the bottom.html file in an editor.
  4. In the section for resource links, edit a row in the table, such as the following:
    <tr class="a">
    <td>Customizing the ALM Baseline Project template</td>
    <td><a href="http://www.collab.net/training/alm/Customizing_ALM.doc" onclick="window.open(this.href); return false;" title="Note: link may open in new window">http://www.collab.net/training/alm/Customizing_ALM.doc</a></td>
    </tr>

    For example, you can remove onclick="window.open(this.href); return false;" if you do not want the link to open a page in a new browser window.
    Or, you can remove or edit "title="Note: link may open in new window"" if you do not want text to appear in a tool tip when the user positions the cursor over the link.
  5. Alternate between class="a" and class="b" to provide different shades of gray in the table.
  6. Using Subversion, update this file and commit the changes.