-
Notifications
You must be signed in to change notification settings - Fork 9
Issue Tracking and Change Management
The PFA working group will nominate a release manager to review and track issues and commits.
Changes to the standard are made to either correct defects (bug fixes) or support new features (including enhancements to existing features). Every request for a change should be tracked as a Github issue. The life-cycle of an issue includes the following statuses:
| Status | Description |
|---|---|
| NEW | Newly reported change request |
| FEEDBACK | DMG requests more information from the reporter |
| ACKNOWLEDGED | Issue is being reviewed, investigated, or discussed to be accepted |
| CONFIRMED | Issue has been accepted and is waiting to be assigned |
| ASSIGNED | Issue has been assigned and, hopefully, is being worked on. A target version has also been identified for the issue |
| GROUPREVIEW | Assignee has worked on the issue, and it is ready for the group to review on a call. If the group needs more information, this is toggled back to Assigned. If approved, this moves to Resolved |
| RESOLVED | Proposed changes for issue have been finalized and DMG proceeds to vote on the resolution. The issue is assigned to the release manager to track votes |
| CLOSED | If resolution required a change in the standard, the change has been approved and merged into appropriate branch. If no change was required, DMG closes issue with "no action required" |
The PFA change management process is present below, broken down to five different tasks: reporting new issues, reviewing active issues, resolving issues, planning releases, and releasing new versions.
A new issue can be reported to identify a defect of the published standard, request an enhancement, or propose new feature. Go to Report Issue page and enter all relevant information. Please make sure you select a category, indicate severity, enter a descriptive enough (but short) summary, and provide a full description. If necessary, you may use the additional information field to add extensive details. You may also upload files related to the issue.
Issues are being reviewed by the PFA Working Group on the regular calls. The review has the following goals goals:
- Review and vote on any GROUPREVIEW issues.
- Quickly assess and update issues not yet accepted (NEW, FEEDBACK, and ACKNOWLEDGED). Discussed issues may be rejected (CLOSED), accepted (CONFIRMED), or require further assessment (FEEDBACK or ACKNOWLEDGED). In some cases, critical issues may be ASSIGNED and scheduled for an forthcoming release.
- Review and discuss proposed resolutions for active (ASSIGNED) issues. Issues remain in that status while the resolution is being worked on and until a final resolution is approved.
- Allocate CONFIRMED issues in future version releases. Each issue tied to a particular version is ASSIGNED to DMG member. The assignee (or owner) of the issue is the lead person responsible for the resolution of the issue (see below).
When a new version is planned, the release manager creates the corresponding approved branch for the version our of the latest version of the master branch (see Source Control)
The assignee (owner) of an issue takes the lead for making and updating a proposal to resolve the issue. The owner must:
- Make a proposal for an extension of the specification
- ???
When no more changes are recommended for an issue, the resolution is ready to be voted on. The status of issue changes to RESOLVED. Is is the responsibility of the release manager to make sure that the appropriate changes have been made to the specification.
Upon approval, the working branch for the issue is merged or added to the appropriate version approved branch by the release manager. The release manager also marks the corresponding issue as CLOSED.
When all issues associated with a particular (target) version are closed, that version is ready to be released and made publicly available as the new standard. The release manager has to perform the following tasks:
- Approve any changes made to the PFA specification (see Managing the Specification).
- ???