Starting in January
Starting in January 2022, all ballots except Reaffirmation and Withdrawal Ballots will be done using Jira Balloting.
The Jira ballot process uses HL7's Jira environment and the Jira-based Specification Feedback process to help manage HL7 Balloting.
The initial steps for the balloting process - notification of potential balloters, balloter registration, achieving a balanced pool of balloters, etc. are all managed through the HL7 Ballot Desktop. Once ballot registration is closed, a set of Jira Ballot Administrative Processes occur that propagate information about both the ballot itself and registered balloters into the Jira environment.
This page describes how the Jira environment can be used by balloters to manage their ballot submission. For organizational and affiliate balloters, additional guidance on Coordinating Ballot Submissions is also available.
Jira components
Jira organizes its content into a set of "Projects". Each project contains a collection of records, or "issues". To support the ballot process, HL7 uses three project types:
Ballot Definition
This project identifies what ballots "exist". It include information about what specification (or subsets of a specification) are subject to ballot and when the ballot is scheduled to open and close. As the ballot process progresses, it will also provide a summary of the results (i.e. a count of votes, whether quorum is met, whether the ballot meets criteria to pass, etc.) This information is kept up-to-date as users directly adjust their Ballot Submissions as well as when they flag specification feedback comments as Affirmative or Negative, when they Un-vote a comment and when they Retract or Withdraw a comment. It will also reflect the deletion of any ballot submissions (e.g. due to lapse of membership during the ballot period).
The ballot definitions are maintained by HL7 staff. The ballot administrator will ask co-chairs or content leads for particular ballots to review ballot definitions and ensure the information is correct prior to ballot opening - particularly for ballots that are focused on a subset of a publication rather than an entire specification.
Balloters may find it helpful to consult the ballot specification as a reminder about ballot open and close dates and ballot scope, but will never need to interact directly with issues in this project.
NOTE: It's possible to "watch" a Ballot Definition issue. This will cause you to get an email every time the Ballot Definition changes. That means one email every single time the vote total changes. If you're really desperate to increase your email volume, this is a good way to do it, but otherwise you're better off just coming and taking a look every once in a while.
Ballot Definitions have 4 statuses. What can happen with a ballot is governed by both ballot status and by the start and end dates associated with the Ballot Definition.
| Status | Meaning |
|---|---|
| Draft | The ballot is being prepared but is not yet ready for ballot submission. This is the time-period when ballot content is finalized (i.e. linking the Ballot Definition to a specification and, if necessary, determining which pages or artifacts fall within the scope of the ballot.) |
| In Progress | The ballot is ready to be voted on. Votes can be submitted against specifications by registered voters if the Ballot Definition is in this state and the current date falls between the open and close date-time for the ballot. |
| Balloted | The ballot period has ended and balloting is complete. During this phase retractions and withdrawals can occur. |
| Final | The period for retraction and withdrawal has passed. The vote count is final at this point, subject only to Re-circulation if that proves necessary. |
Ballot Definitions are created and managed by the Ballot Administrator based on work groups’ submission of “Notice of Intent to Ballot” (NIB) forms and approvals from the Technical Steering Committee . Changes made to the status of a Ballot Definition will automatically cause equivalent changes in all associated Ballot Submissions.
Ballot Submission
A ballot submission record will exist for every voter that signs up to vote in a particular ballot. The submission records are created through an export process from the HL7 Ballot Desktop. The ballot submission maintains the record of that user's vote. It aggregates all comments made about the ballot and shows the balloter's overall vote. The overall vote is determined as follows:
- The overall vote starts out as No-Vote. If no action is taken by the balloter, this will be their final vote
- The balloter can link their ballot submission to that of another voter. This can only occur when:
- The linking balloter's vote is set to No-Vote
- The target ballot submission has a vote that is something other than No-Vote
- The target ballot submission is associated with the same organization as the balloter's submission. (This means that linking of votes is only possible for organizational and affiliate members. See guidance on Coordinating Ballot Submissions for more discussion.)
- The balloter can manually adjust the overall vote to be either Affirmative or Abstain. They can also manually adjust their vote back to No-Vote. Changing a vote from No-Vote will remove any linkage to another ballot submission
- The overall vote is automatically set if the balloter ties any Specification Feedback items to their Ballot Submission as either affirmative or negative Ballot Votes. If the balloter has any non-withdrawn and non-retracted negative ballot votes tied to their ballot submission, the vote is automatically locked to Negative. Otherwise, if the balloter has any affirmative comments tied to their ballot submission, the overall vote is locked to Affirmative. In both cases, the overall vote cannot be edited or linked to anyone else's vote so long as specification feedback comments are tied to the ballot submission. Note that users can “un-vote” Specification Feedback items while a vote is still open. This may change the overall vote (to ‘Affirmative’ if only affirmative comments remain or to ‘Abstain’ if no comments remain).
Each ballot submission has a status element. The status indicates what actions the user can take. The statuses mirror the states on the Ballot Submission. Typically, all Ballot Submissions for a ballot will share the same status. However, in very rare cases, certain users may be offered an extension to their ballot period, resulting in a different status. E.g. A natural disaster, technical issues with voter registration, etc.
Ballot Votes
A Ballot Vote is a "sub-item" associated with a Ballot Submission that ties the submission to a single Specification Feedback item associated with that ballot. When establishing the linkage, the balloter identifies the vote as being either Affirmative or Negative. The feedback items associated to the Ballot Submission through Ballot Votes indicate the feedback that will need to be considered as part of the ballot reconciliation process. For a Ballot Submission to have an overall vote of Negative, it must have at least one non-withdrawn and non-retracted negative vote.
Specification Feedback
The Specification feedback process is not specific to balloting. It represents a general-purpose mechanism for all interested parties to provide feedback about HL7 specifications throughout the life of the specification. The general capabilities of the Specification Feedback process can be found here. This page focuses on how Specification Feedback items relate to voting.
In HL7 ballots, affirmative votes can be and negative votes must be supported by specific feedback from the voter. The Specification Feedback Jira projects each HL7 product family are the mechanism by which this feedback is provided. Voters can link submitted feedback items to their ballot submissions to provide support for their overall vote. This process also "elevates" the priority of the linked feedback item by requiring the work group responsible for that portion of the specification to address the comment as part of the ballot reconciliation process.
Voting on a Specification Feedback Item
When a specification feedback item is eligible for vote, appropriate Vote Affirmative and Vote Negative transitions will become available for that feedback item. The eligibility criteria are as follows:
- The current user must be signed up for a ballot. (I.e. A Ballot Submission record must exist with the current user listed as the 'creator')
- The Ballot Definition associated with that ballot submission must have a status of In Progress
- The current time (based on the Eastern timezone) must be between the scheduled open and close dates for that Ballot Definition
- The specification feedback item needs to be associated with the same specification as the ballot definition
- If the ballot definition is limited in scope to specific artifacts or pages, the feedback item must list at least one of those artifacts or pages as part of the focus of the feedback
- The specification feedback item can't already have been resolved. I.e. It needs to still be in the Submitted, Triaged or Waiting for Input states. (The presence of a preliminary disposition on an item that has not yet been transitioned doesn't prevent voting.)
- The user can't already have submitted a ballot comment against the item (for any ballot). I.e. A given specification feedback item can only be associated with a single ballot per user
- In order to vote Negative, the type of feedback must be Change Proposal. (Technical Corrections, Questions and Comments can only be associated with Affirmative votes.)
Notes:
- Voters are free to vote on comments that have been submitted by other users - including specification feedback items created by individuals outside their affiliate or organization
- "creating a feedback item" and "voting on a feedback item" are two separate steps. If a feedback item is created but no corresponding Ballot Vote is created, the feedback item will not be considered to be part of the balloter's ballot submission.
- The Ballot Vote isn't actually created until the user has confirmed the vote submission on the confirmation screen
- When a vote is submitted, it may result in changes to the user's Ballot Submission and may also adjust the vote totals shown on the Ballot Definition.
Un-voting a specification feedback item
In some cases, a voter might change their mind about including a particular specification feedback item as part of their ballot - or they might decide they want to change the vote strength associated with the item from Affirmative to Negative or vice versa. Once a user has voted on a specification feedback item, they will have the option of Un-voting on that item until the associated ballot closes. Once the ballot has closed, the Ballot Vote is considered a final part of the user's Ballot Submission and cannot be removed. (It can however be Retracted or Withdrawn - see below.)
Reconciliation
Once a specification feedback item has been voted on, that comment becomes a portion of the feedback the work group is expected to review and decide on a resolution for.
Reconciliation, Withdrawal and Re-circulation
After all comments have agreed upon resolutions, and are implemented in the specification, the committee posts a completed ballot reconciliation file to the Ballot Desktop. The instructions for creating the excel are posted on the Reconciliation spreadsheets page.
21 Comments
Melva Peters
Sept 08, 2020Melva Peters
Sept 08, 2020Lynn Laakso
Jul 07, 2021Can we include links here to any previous webinars or training on voting in Jira?
Melva Peters
Jul 07, 2021Here's the links:
Slide Deck: https://confluence.hl7.org/download/attachments/19136726/2021-03%20Jira%20Balloting.pdf?version=1&modificationDate=1614790207476&api=v2
Webinar:
Jay Lyle
Jan 27, 2022There's some good content out there on voting in Jira. I'm trying to digest a batch of comments, and I don't see the tutorial on how to triage & reconcile. It seems kind of intuitive, but it's complex enough I fear I may be missing something.
Lloyd McKenzie
Jan 27, 2022That's dealt with here: Managing Specification Feedback (because it's not specific to comments submitted as part of ballots)
Mark Janczewski
Feb 10, 2024Is there a site that describes the process for reconciling Ballot votes. For example, does a reviewer:
Lloyd McKenzie
Feb 10, 2024Not sure what you mean by "a reviewer". Typically the work group as a whole looks at the ballot tracker item in the Jira and decides what they want to do with it, puts that in the resolution and votes. There is no requirement to get agreement from the issue submitter as part of the resolution process, though that's desirable. If the issue is marked as 'in person', then the work group should make reasonable efforts to have the submitter present during the discussion.
Resolution of ballots is no different from resolution of any comment. Details on how resolution works in Jira is handled here: Managing Specification Feedback
Excel is not used for ballot reconciliation at all anymore. All reconciliation MUST be completed using Jira. Once all reconciliation is complete, use the BALDEF for the ballot to generate the spreadsheet necessary to upload to the HL7 ballot site.
Mark Janczewski
Feb 11, 2024By "reviewer" I mean the person or persons working to review the Ballot Feedback Item ("issue") that was submitted. It can be a WG or a Project team.
I have downloaded the reconciliation Excel spreadsheet from the JIRA BALDEF site for helping us manage how our team is addressing the ballot issues that we are reconciling.
I had thought that at the end of reconciliation, we also had to send back to HL7 such a sheet for ballot issue tracking. Is that not the case?
Thank you!
Lloyd McKenzie
Feb 11, 2024You should be driving your reconciliation process from Jira, not spreadsheets. All comments, proposed dispositions, etc. need to be filled in in Jira so that all interested parties can be notified and see what's happening. Voting of resolutions is only allowed to occur by WGs, not by project teams, though project teams are free to prepare proposed dispositions for block vote by their respective work groups. For technical corrections, questions, and comments (none of which require voting), the tracker can be closed by anyone who's been given approval to act as a facilitator (WG co-chairs or those they designate).
The final reconciliation spreadsheet will be generated from Jira and posted to the ballot desktop by a work group co-chair.
Mark Janczewski
Feb 12, 2024We are driving it from JIRA, but using a spreadsheet to keep track of all of the issues, to include when the issue was reviewed and other attributes. This helps with planning and periodic meetings.
As far as reconciliation is concerned we have a project team that is looking at the issues. Once a disposition to the issue is agreed upon, we would then comment back to the original submitter of the ballot issue, if required. When all are in agreement, it is then taken to the WG (usually as part of a block of other issues) and formally voted upon, as you describe.
On a different topic, for those Ballot Feedback items (issues) that are submitted by the representative of an organization, but then results in several duplicate issues being denoted as submitted by others in the same organization, do we need to respond to each of these (except the original) and mark them on JIRA as a duplicate, or is that done automatically?
Lloyd McKenzie
Feb 12, 2024There should be no need to use a spreadsheet. You can use searches, the 'grouping' element and/or the 'schedule' element to keep track.
Organizations should be submitting multiple votes on a single issue, not submitting multiple duplicate issues (so feel free to nudge them towards the correct behavior). Your project will need to mark duplicates themselves, and must do so before the 'surviving' duplicate (the one the others point to) is resolved.
Mark Janczewski
Feb 21, 2024Is there a tutorial on how to use searches, the 'grouping' element and/or the 'schedule' element to keep track?
Mark Janczewski
Mar 01, 2024Lloyd, do you have a tutorial on using searches, the 'grouping' element and/or the 'schedule' element to keep track? Thanks!
Lloyd McKenzie
Mar 01, 2024No specific tutorial for those elements. There's general guidance for performing 'search' and search on those elements works the same as others. Different work groups have different strategies about how they use Grouping and Schedule. You can invent any Groupings you like. You can mark things for block vote. You can mark things as related to a common topic or that should wait until a particular person is able to attend. You can slate items for a particular call, for the next WGM, etc. If you have specific questions or need help crafting a particular query, suggest raising them on the Jira/Confluence stream on chat.fhir.org
Mark Janczewski
Mar 01, 2024Thank you, Lloyd!
I am not yet knowledgeable enough. The link to the You Tube video is helpful; however, if I go to a specific Ballot Issue (e.g. OTHER-2724 - Getting issue details... STATUS there is no box for "Proposed Disposition".
As far a Searching and Grouping, I started to look at a summary of all of the issues as provided by the with the Reconciliation Spreadsheet on our BALDEF page BALDEF-2270 - Getting issue details... STATUS . That is extremely helpful as a copy of this provides the basis for a "management" tool to keep track of the overall status of the issues by adding columns such as priority, when we looked at them, comments made by project team, disposition, WG vote, etc.
I'll try to post some questions about Searching and Grouping on the Confluence stream.
Lloyd McKenzie
Mar 01, 2024If an issue is "waiting-for-input", it needs to transition out of that with "input provided" before you can use the "propose disposition". (Someone you're waiting for input from can generally only provide a comment, not propose a disposition, though you can certainly copy from the comment into a proposed disposition once they've responded.)
There are also search mechanisms to let you find all issues associated with a particular ballot if you like. (Most work groups don't bother - they just chase all issues submitted, whether tied to a ballot or not. Work groups have to deal with all feedback on their specs, not just feedback submitted as part of a ballot.)
Mark Janczewski
Mar 05, 2024For OTHER-2724, we have responded back: "The project team has reviewed your issue and agreed that your input was Persuasive. We will be changing the wording as you suggested."
So, for me, that is a proposed disposition. Do we need to wait for the response from the reporter/submitter?
Lloyd McKenzie
Mar 05, 2024You're free to propose a disposition and wait for input before the work group votes on it. However, unless the comment was marked as 'in person' by someone, it's also fine to just vote on the resolution and change the status. Also, if you're finding an issue 'Persuasive', you don't need to wait on the balloter even if they marked as 'in person' (though you might need to make sure you have the input of anyone else who marked as 'in-person')
Mark Janczewski
Mar 05, 2024Yes, so we have proposed a disposition and will give the balloter some time to respond, but I expect the EHR WG will vote on this and agree in a few weeks.
Mark Janczewski
Feb 12, 2024OK, thank you Lloyd!