FDO Open Source - Artifact Lifecycle

Overview

All artifacts in the FDO Open Source project follow a rigid lifecycle and all project development occurs within that lifecycle. This lifecycle is managed and tracked through the Status Attribute Group that all artifact types share. In particular the value of the Status attribute indicates where in its lifecycle the artifact is. At any point which status transistions are allowed depend upon three things, the current status, the allowed transistions from that status, and the user's role. The following diagram shows the possible status transistions of an artifact.

Artifact Life Cycle

When an artifacts status moves to Assigned, Resolution Proposed, or Resolved a user must be specified in the "Assigned To" attribute. Likewise when an artifact moves into the Resolved status a Resolution must be set. The following tables show the meanining of each Status value, the Resolution values, and the status transistions allowed for each user role.

Artifact Status

The "Status" attribute of an artifact indicates where in its lifecycle the artifact is. All artifacts start in either the Unconfirmed or New state depending on the role of the person entering the artifact.

Status Value Description
Unconfirmed Initial state of an artifact that has been entered by a User. A Project Contributor, Developer, or Owner is responsible for validating the artifact.
New Initial state of an issue that has been entered by a Project Contributor, Developer, or Owner.
Assigned The issue has been accepted and assigned to an individual.
Resolution Proposed A resolution has been proposed by a Project Contributor. A Project Developer or Owner is responsible for reviewing the proposed resolution and either accepting it or sending it back for additional work.
Resolved A resolution to the issue has been reached and is awaiting verification from quality assurance.
Verified Quality assurance has looked at the issue and the resolution and agrees that an adequate resolution has been reached. Issues remain in this state until a version of the project with the resolution is released.
Closed The issue is considered resolved and a version of the project has been released.
Reopened The issue was once resolved, but the resolution was deemed incorrect.

Artifact Resolutions

Artifacts in the Resolved state must have one of the following resolution values.

Resolution Value Description
Submitted A resolution to this issue has been submitted. If the artifact involves the development or modification of code a "Reviewer" should be assigned and that individual should set the Submission Reviewed attribute to Yes once it has been reviewed.
Invalid The problem described is not an issue or no longer relevant.
Will Not Address The problem described is an issue which will never be addressed.
Defer The problem described is an issue which will not be fixed in this release cycle.
External The problem described cannot be addressed due to problems or limitations in third party components for which we have no control.
Duplicate The problem described is a duplicate of another issue.
Not Reproducible The problem as described cannot be reproduced using the information given. This resolution is available only in Defect artifacts.

Artifact Status Transitions

Allowed Project Owner Transitions

  TO Status
FROM Status Unconfirmed New Assigned ResolutionProposed Resolved Verified Closed Reopened
Initial Creation   X            
Unconfirmed   X X   X      
New     X   X      
Assigned         X      
ResolutionProposed         X     X
Resolved           X   X
Verified             X X
Closed               X
Reopened     X   X      

Allowed Project Developer Transitions

  TO Status
FROM Status Unconfirmed New Assigned ResolutionProposed Resolved Verified Closed Reopened
Initial Creation   X            
Unconfirmed   X X   X      
New     X   X      
Assigned         X      
ResolutionProposed         X     X
Resolved           X   X
Verified               X
Closed               X
Reopened     X   X      

Allowed Project Contributor Transitions

  TO Status
FROM Status Unconfirmed New Assigned ResolutionProposed Resolved Verified Closed Reopened
Initial Creation   X            
Unconfirmed   X X X        
New     X X        
Assigned       X        
ResolutionProposed               X
Resolved               X
Verified               X
Closed               X
Reopened     X X        

Allowed User/Non Contributor Transitions

  TO Status
FROM Status Unconfirmed New Assigned ResolutionProposed Resolved Verified Closed Reopened
Initial Creation X              
Unconfirmed                
New                
Assigned                
ResolutionProposed                
Resolved                
Verified                
Closed                
Reopened