Access to add and change pages is restricted. See: https://cwiki.apache.org/confluence/display/OFBIZ/Wiki+access

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Introduction

These guidelines have been created to help our community to use JIRA effectively for the improvement of the various Apache OFBiz products (the code, the website, the documentation, etc). This document contains the best practices we advice all our contributor to follow.

If you have a question regarding this page, or something can be improved, then please do not hesitate to post your question or remark by sending an email to the OFBiz Development Mailing List.

What is JIRA?

Background

JIRA is the issue reporting and tracking tool the project uses.. This includes ideas for improvements, non code based work such as testing and documentation, as well as bug fixes and issues. Please see the following link to the OFBiz JIRA Summary Panel. 

JIRA also provides a list of tasks that need to be actioned in the form of a To Do list, which can be sorted in various ways (including on priority, on current status or on the person assigned). It also can be used to generate overviews about work in progress and issue resolution.

During our Community Days, JIRA's inbuilt agile functionality is used to manage the project backlog and create a Sprints for community members to work on.

If you want to find out more about how JIRA works then please see the link to the complete JIRA documentation.

JIRA Fields and Meta Data

Issue Types

When you create a OFBiz issue in our JIRA it needs to have an Issue Type. This is important because it helps to classify the issue and can be one of the following type:

Issue TypeDefinition and when to use this type
BugA bug is generally a problem with code or data which is not functioning correctly.
ImprovementAn improvement is something that enhances the functionality of an existing feature.
New Feature

An issue of this type is about a new functionality (set) that does not already exist.

TaskA Task is an action that needs to be carried out. that does not fall under any of the other issue types.
TestAn issue of this type is describes how a particular artefact can (or must) be tested.
WishAn issue of this type is to be used for any issue not fitting in the other types.
Sub TaskThis task is a child of another JIRA issue.

Description

The issue description is the most important part of the JIRA issue as it provides the first piece of information, that will allow another contributor to investigate and resolve the issue. It must be written in such a way that it is clear enough for someone to easily understand (and potentially replicate) the problem. This means that we adivce you to provide information about:

  • What you did (e.g what application, screen, and the highlight the steps you went through etc),
  • What you were expecting to happen,
  • What actually happened.

In some case you might already have an idea about how to resolve the issue. If so then please include your suggestions as well, as this may be helpful to the next contributor picking up the issue.

Priority

The priority can differ per issue type. See the various issue types sections and their priority schemes below. 

Labels

Issues can be classified using the label. For example an issue can be labelled as 'Beginner' indicating that it is suitable for beginners or newcomers who want to begin contributing to OFBiz.

Do we have a list of labels that we could use?

Reporter

The issue reporter is automatically assigned by JIRA based on the user profile of the person creating the Jira. Anyone (registered with JIRA) can report a new issue.

Assignee

By default when an issue is created, the assignee is blank. Any OFBiz JIRA contributor can then assign himself to an issue where the Assignee is blank. 

An Assignee is the contributor that is primarily working on the JIRA issue towards a satisfactory resolution. When an issue is assigned to a contributor, the issue will be visible in the personal TODO list of that contributor. For an example see the TODO list of contributor Jacques Le Roux

If an issue already has an Assignee then it means that person is still working on it. 

If you are an Assignee for an issue and you have completed your work then once you have updated the JIRA details or comments, please unassign yourself from the issue. This is important if the work is a patch that needs to be committed. Our committers will be able to see the unassigned tasks that are available to be picked up, review them and if necessary commit them

Component

This field determines which component is (or, when multiple are selected, are) affected by the issue.

Flags

The choices here are:

  • Patch, or 
  • Important

Status

Following choices are available:

Status
Open
In Progress
Reopened
Resolved
Closed
Patch Available

Affect Versions

This field offers all choices of branches and releases. The affected version is determined by the issue type. More information can be found in the various issue type sections below.

Fix Versions

OFBiz Bugs

Priority

All JIRA issues need a priority as it determines what needs to be worked on. This is important because it helps to ensure that the community is focussed and working on the right tasks.

 

Priority
Current JIRA Definition
Re: Bug
Proposed Revised Definition and when to to use this priority
BlockerBlocks development and/or testing work, production could not run

A blocking issue an issue with a released OFBiz version that does not run, does not comply with legal requirements, is a security vulnerability to users  or exposes the project and Apache Software Foundation to significant risk

CriticalCrashes, loss of data, severe memory leakA critical issue is an issue with a released OFBiz version that causes the system to crash, become unstable, lose data and has no workaround.
MajorMajor loss of functionA major issue is an issue with a released OFBiz version that has a significant impact due to loss of function and has no or limited workarounds.
MinorMinor loss of function or problem where easy workaround is presentA minor issue is an issue with a released OFBiz version, an unreleased branch or trunk that has isolated minor impact
TrivialCosmetic problem like misspelt words or misaligned textDon't use this for bugs, as bugs are never trivial.

Affected version

For bug issues the affected version should be (one or more) selected in accordance of the following list:

  • Trunk
  • any available release
  • any available release branch

 

OFBiz Improvements

Priority

Please apply the following scheme when setting the priority you create (as the reporter).

 

Priority
Current JIRA Definition
Re: Bug
Proposed Revised Definition and when to to use this priority
BlockerBlocks development and/or testing work, production could not run

A blocking issue an issue with a released OFBiz version that does not run, does not comply with legal requirements, is a security vulnerability to users  or exposes the project and Apache Software Foundation to significant risk

CriticalCrashes,loss of data, severe memory leakA critical issue is an issue with a released OFBiz version that causes the system to crash, become unstable, lose data and has no workaround.
MajorMajor loss of functionA major issue is an issue with a released OFBiz version that has a significant impact due to loss of function and has no or limited workarounds
MinorMinor loss of function or problem where easy workaround is presentA minor issue is an issue with a released OFBiz version, an unreleased branch or trunk that has isolated impact but workarounds are available
TrivialCosmetic problem like misspelt words or misaligned textDon't use this for bugs, as bugs are never trivial.

Affected version

For improvement issues the affected version is limited to:

  • Trunk

as patches of improvement issues will only applied to a specific Fix version, called 'Upcoming Branch.

  • No labels