title(Bug/Feature Request/Patch Information Guideline)

TableOfContents

Introduction

The NetarchiveSuite bug/feature-request registration is done by trackers in GForge (https://gforge.statsbiblioteket.dk/tracker/?group_id=7)

In the next section all headers that can appear in a bug/feature-request/patch (from here called tracker) is listed and explained.

In each header, it is indicated whether it can be set when a new tracker is created (by [new]) and whether it is editable when information is changed (by [edit]). No indication means that it is information calculated by GForge.

For each header the following information is given, if relevant:

There are some differences between order of fields to be set for bugs, feature requests and patches respectively. Furthermore it may be that some of the fields are not included in all trackers. In the following these will be marked as: Values are marked with

Nothing is indicated the field in included for all trackers.

There are also differences in possible values in drop downs for the different trackers. Values are marked with

Nothing is indicated if the values are possible for all trackers.

Bug/Feature Request/Patch Information

For project:

The project field in this context is automatically set to NetarchiveSuite.

Submitted By:

The initials of the person which the tracker is submitted by is automatically set.

Date Submitted:

The date when the tracker was submitted is automatically set and given on form YYYY-MM-DD HH:MM.

Data Type: [edit]

The data type tells whether it is a bug, a feature request or a patch. For new bugs/feature-requests/patches, it is automatically set to the selected tracker

NOTE: if the data type is changed, there may be some of the values that are not transferred to the new tracker type. These needs to be set again.

Hardware: [new, edit] (not for patches)

The hardware field is not used at the moment, and thus should never be set.

Default is None.

Product: [new, edit] (not for patches)

The product that the tracker concerns will at this point only be NetarchiveSuite. Thus the information is at this point not a necessity, but it should be set to NetarchiveSuite.

Default is None.

Operating System: [new, edit] (not for patches)

Since the NetarchiveSuite is independent on the operating system, this is not an information that is used. - Thus it is not a necessity, but it should be set to All.

Default is None.

Component: [new, edit]

This component field must be set in order to have the tracker directed to the correct tracker owner.

Default is None.

Must always be set to one of the following values for NetarchiveSuite

Version: [new, edit]

The version field is only used, when it is critical in order to understand the tracker or reproduce a bug. Version of code that the tracker relates to. This means that it must for patches, since these will include code that need to be compatible with the rest of the code.

Default is None.

[TODO: We need to find out whether this field should be used more extensively, and what the rules then are for trackers found at reviews, in test, in production, in scotland or somewhere else]

Severity: [new, edit] (not for patches)

The severity is only set when the information is available. It may be at registration or it may be set later.

Default is None.

Must be set when information is available.

Target Milestone: [new, edit] (not for patches)

The target milestone s not used at the moment, and thus should never be set.

Default is None.

Resolution: [new, edit]

The resolution field has different value sets for patches versus bugs and feature requests. ths reason is that the patches includes code that fixes the problem, and thus the resolution concerns the patch itself rather than the problem which is the focus for a bug or a feature request. The resolution field must be set during the process of treating the tracker.

Default is None.

Resolution values for bugs and feature requests which must be set during process of treating the tracker

Resolution values for patches which must be set during process of treating the patch

[TODO: Find out whether we need one saying 'Incorparated' indicating that the code is not only accepted but also included in next release]

Duplicate Of: [new, edit] (not for patches)

If the tracker is a duplicate then the <number> of the tracker that it is a duplicate of is written here.

Status: [new, edit]

Default is Open.

[TODO: more]

Keywords: [new, edit] (not for patches)

Assigned To: [new, edit]

Default is Nobody.

[TODO: a little more]

Priority: [new, edit]

The priority can only be changed by QA in coorporation with the daily production manager. The priority is basis for planning resolution order of tracker and which procedures can be used in order to have fixes quickly patched into the production invironment.

Default is 3.

[TODO: more --- and can we set it initially?]

Normally it will only be the administrator (QA) that changes the priority to one of the following values:

  1. lowest

  2. ...

  3. ...

  4. ...

  5. highest

Summary: [new, edit]

The summary consist of a short description of the tracker. The summary is used when an overview of tracker is made. This information must be provided when the tracker is registered.

Detailed description: [new, edit]

The detailed description adds information as basis for planning and doing resolution of the tracker. This information must be provided as detailed as possible at the time of registering the tracker. Furtehremore it is used to add information at later stages. Additional comments must be entered via the 'OR Attach A Comment' field and they will then appear in the 'Followup' field.

The detailed description must include

  • a detailed description of what the tracker is about
  • possible resolutions if known
  • estimated time for fixing in case the Keywords field includes setting of the ESTIMATED keyword.

URL: [new, edit] (not for patches)

The URL field is optional. It can be used to specify an URL of interest for the tracker, but in most cases this information will be in the 'Detailed Description' or 'Followup' of the tracker.

Found In: [new, edit] (only for bugs)

This field is used to register where the bug was found. The information is used for registration of statistics of bugs, which can assist in adjusting procedures for bug fixing. For instance if a bug is found in production, but obviously should have been found in a code review, this would be an indication that there should be more focus on code reviews.

[TODO: Add Sanity test in GForge and here, and maybe make specification of which production code we refer to (Danish, Scottish ...)]

=== Should Have Been Found In: [new, edit] (only for bugs)=== This field is used to register where the bug should have been found. The information is used for registration of statistics of bugs, which can assist in adjusting procedures for bug fixing. For instance if a bug is found in production, but obviously should have been found in a code review, this would be an indication that there should be more focus on code reviews.

Use Canned Response: [edit]

This field is not used at the moment, and thus should never be set.

OR Attach A Comment: [edit]

This field is used to enter additional comments to the Detailed description.

Followup:

List of additional comments to description of the tracker. See also explation of the 'Detailed Description' field.

Attach Files: [new, edit]

This field offers functionality to add attached files to the list of files under the 'Existing Files' field.

Existing Files:

List of files already attached to the tracker.

Change Log:

Log of changes already made to the tracker.