Difference between revisions of "FHIR Community Process"
(adjust logo size) |
|||
Line 69: | Line 69: | ||
The FCP Coordination committee has jurisdictional sub-committees that have the same purpose and use the same infrastructure, but focused on the specific jurisdiction. Typically - but not always - this is at the country level, and associated with an HL7 affiliate. Members of the subcommittee are any FCP participants with an specific interest in the jurisdiction (may be sub-part of the main FCP participant). Leadership of these committees is as agreed between the main coordination committee, and HL7 and the affiliate(s). | The FCP Coordination committee has jurisdictional sub-committees that have the same purpose and use the same infrastructure, but focused on the specific jurisdiction. Typically - but not always - this is at the country level, and associated with an HL7 affiliate. Members of the subcommittee are any FCP participants with an specific interest in the jurisdiction (may be sub-part of the main FCP participant). Leadership of these committees is as agreed between the main coordination committee, and HL7 and the affiliate(s). | ||
+ | |||
+ | <br /> | ||
+ | |||
+ | == FHIR Publication Tooling Council == | ||
+ | FCP participants also have the right to delegate a member to sit on the FHIR Publication Tooling Council. The Council is a task force of the HL7 FMG committee, and is the deliberative body that discusses and approves changes to: | ||
+ | |||
+ | * The [[FHIR Implementation Guide Publishing Requirements|FHIR Ig publishing Requirements]] | ||
+ | * Functional requirements for the HL7 IG Publisher | ||
+ | * Functional requirements for the Standard HL7 and FCP IG templates | ||
+ | |||
+ | The Tooling Council also includes tooling vendors and other members as chosen by the FMG. | ||
=New Projects= | =New Projects= | ||
Line 133: | Line 144: | ||
*The license must be clearly documented in the IG. If other encumbrances exist, these must be documented as well | *The license must be clearly documented in the IG. If other encumbrances exist, these must be documented as well | ||
*Any FHIR IGs or other implementation collateral must be registered in the FHIR registry | *Any FHIR IGs or other implementation collateral must be registered in the FHIR registry | ||
− | *The FCP version release strategy must be followed ( | + | *The FCP version release strategy must be followed (see below) |
*How to raise issues against the IG must be clearly documented | *How to raise issues against the IG must be clearly documented | ||
*Security / safety / privacy issues must be documented explicitly, and how to report problems related to these subjects must be clearly documented, with a rapid response to these issues provisioned | *Security / safety / privacy issues must be documented explicitly, and how to report problems related to these subjects must be clearly documented, with a rapid response to these issues provisioned | ||
*The IGs should be published at their canonical URL (or linked to from there) | *The IGs should be published at their canonical URL (or linked to from there) | ||
+ | |||
+ | == FCP Version Release Strategy == | ||
+ | All formal releases must have a version associated with the release, and this version should be set in all the conformance resources included in the guide. | ||
+ | |||
+ | Versions should not be re-used, and must have the format major.minor.patch (this is an NPM package rule). Versions must be serially incrementing. Consumers of the specification must be safe to assume that a change in patch number does not represent any intentional change to software in order to conform to the specification (note, though, that technical corrections always change something, that is why they are made). | ||
+ | |||
+ | The following version strategy, related to semver, is recommended, but variations that are consistent with NPM versioning are allowed (e.g. direct semver) | ||
+ | |||
+ | The versioning strategy is a variant of semver as followed by HL7. Each version has 3 numerical parts: | ||
+ | |||
+ | * Publication: the major publication number (e.g. the 1st milestone release is 1.0.0) | ||
+ | * Release: the sequence of this milestone within the Publication cycle | ||
+ | * Patch: incremented when technical corrections to an existing published milestone are made | ||
+ | |||
+ | Note that in this versioning strategy, 1.0.0 is the first full milestone release. Subsequent versions published as part of balloting / consultation will have versions like 1.2.0, until a full 2 release of 2.0.0. | ||
=Ongoing Maintenance= | =Ongoing Maintenance= | ||
Line 144: | Line 170: | ||
==Current and Archive Versions== | ==Current and Archive Versions== | ||
− | FCP Participants are responsible for ensuring that details of their current products are published to [ | + | FCP Participants are responsible for ensuring that details of their current products are published to their [[FHIR publication feed]], and that as products are superseded a history of prior version is maintained as part of their publication pack (follow HL7 requirements detailed in [[FHIR Implementation Guide Publishing Requirements|FHIR Ig publishing Requirements]]). |
=FHIR Accelerator Program= | =FHIR Accelerator Program= | ||
Potential FCP participants may not be in a position to meet all the requirements of the FHIR Community Process, or may wish to have a closer relationship to HL7 than is needed to be a FCP participant. HL7 offers the [[FHIR Accelerator program]] to help such partners through the process of developing FHIR IGs using the HL7 processes. While participation in the FHIR Accelerator program is not required to be a participant in the FHIR Community Process, entities may wish to use the FHIR Accelerator Program as a springboard into the FHIR Community Process. | Potential FCP participants may not be in a position to meet all the requirements of the FHIR Community Process, or may wish to have a closer relationship to HL7 than is needed to be a FCP participant. HL7 offers the [[FHIR Accelerator program]] to help such partners through the process of developing FHIR IGs using the HL7 processes. While participation in the FHIR Accelerator program is not required to be a participant in the FHIR Community Process, entities may wish to use the FHIR Accelerator Program as a springboard into the FHIR Community Process. |
Revision as of 00:23, 16 October 2019
This page documents the proposed FHIR Community process.
Contents
Summary
The FHIR Community Process (FCP) describes a common process where Participant Organizations - who wish to adapt HL7 FHIR for specific use cases - work with different parts of the overall FHIR Community to create sub-communities that work together to solve particular interoperability problems using FHIR. The usual end-product of this process is one or more published FHIR implementation guides that are usually subject to ongoing maintenance.
A variety of organizations, including but not limited to Standards Development Organizations, publish FHIR specifications, each that can represent a different set of stakeholders and approaches. Almost all of those organizations have overlaps in membership and stakeholder communities, yet bring their own value proposition. The FHIR Community Process provides a set of guidelines to be followed by any kind of community to use FHIR to address their business challenges. Organizations choose to follow the process in order to produce output that works with what the rest of the community is producing, and has better acceptance and uptake by the community.
The goals of the FHIR Community Process are:
- ensure a consistent overall approach for the community to deal with
- allow for a variety of approaches to developing FHIR sub-communities (reflecting a variety of needs)
- minimize incompatibilities in outputs and processes between the different projects (which naturally have overlapping and diverging aspects)
Organizations that follow the FCP may label their marketing material, specifications, and other documentation with the "FHIR Community Process" icon (see above). Note that any organizations may develop and publish FHIR specifications without following this process, but they cannot use the FHIR Community Process stamp of approval.
Note that there may still be competition between the organizations as they vie to represent the community; such competition is both good and bad for community - good, in that it helps keep the community honest, and bad, where the same problem may be solved with incompatible specifications (and wastes time and effort by undesirable redundancy). It is hoped that these guidelines and establishment of a coordinating committee may reduce unnecessary duplication of effort in the FHIR community, and incompatible rules in FHIR IGs.
The FCP is specific to HL7 FHIR standard and compliments the HL7 Implementation Strategy which covers the entire pantheon of HL7 Standards.
HL7 and FCP relationship
HL7, which developed and maintains the FHIR specification, plays several important roles in this community:
- Provides the organizational umbrella, and is the governance authority for, the FCP
- Provides and maintains the FHIR Platform and supports the FHIR Product Director
- Defines the rules of the FCP
- Also acts as a FCP Participant along with many other organizations; and
- Owns and protects the FHIR trademarks.
When acting as a FCP Participant HL7 operates on a common level with other FCP community members. Note that as an open membership organization, HL7 processes in this regard are necessarily open and transparent.
HL7 International Affiliates
The HL7 Affiliates are also candidates for FCP Participants, and should sign up to be FCP Participant agreements. Note that due to the very flexible arrangements between HL7 and the affiliates, there is no common process for affiliates to follow, and each Affiliate chooses to be a FCP Participant individually. If they choose to be, they must provide their own FCP Participant document (as described below).
Affiliates that are participants of the FCP lead a jurisdictional based sub-committee of the coordination committee that provides specific comment on the suitability of projects within their jurisdiction, and/or the collaborations that should be followed within their domain.
FCP Participants
In keeping with the open principles of HL7 FHIR, any entity who is intending to produce FHIR Profiles is able to join the FCP.
It is encouraged (but not required) that entities who wish to actively participate in the FCP are also HL7 Members (either of HL7 International, or of an HL7 Affiliate) - this creates better relationships within the community that manages FHIR and the tools that support it.
The following entities are FCP participants and have committed to following the FCP process:
- this list to be updated as FCP is defined and begins operation
- candidates: IHE HL7 CEN SNOMED Carequality CarinHealth CommonWell HIMSS ONC Infoway + many others
This means that at least some of their activities follow the FCP, and lead to publications marked and marketed as FCP Specifications (note that most FCP participants have other activities that are not part of the FCP)
FCP Coordination Committee
The FCP Coordination Committee is a group whose membership consists of representatives from all FCP Participants with formal commitments to the FCP. The role of the committee is to act as a clearing house for the FCP process - all new FCP projects are proposed to the committee for review, to ensure that all FCP Participants are informed about what work is taking place. The coordination committee does not have veto rights over any particular FCP Participant project, but FCP Participants commit to doing their best to minimise overlaps.
Further (draft) details about the proposed FCP Coordination Committee:
- Co-chair: HL7 FHIR Implementation Director (currently Graheme Grieve)
- Co-chair: Chosen by the Committee from amongst it's membership
- HL7 provides a single member of the Coordination Committee on an ex-officio basis
- All deliberations are open to the public (minutes, proposals, discussions etc on publicly available web resources).
- Only FCP Participant representatives can take part directly
- Committee maintains its own processes to describe how proposals work etc.
- An additional role of the committee leadership is to maintain out reach to key community bodies such as [GDHP](https://www.gdhp.org/)* maintains a web site where approved projects are published
Note that the Coordination Committee will (and should) have overlapping membership with existing coordination committees such as Gemini (between HL7 and IHE) and others which perform other additional roles
The FCP Coordination committee has jurisdictional sub-committees that have the same purpose and use the same infrastructure, but focused on the specific jurisdiction. Typically - but not always - this is at the country level, and associated with an HL7 affiliate. Members of the subcommittee are any FCP participants with an specific interest in the jurisdiction (may be sub-part of the main FCP participant). Leadership of these committees is as agreed between the main coordination committee, and HL7 and the affiliate(s).
FHIR Publication Tooling Council
FCP participants also have the right to delegate a member to sit on the FHIR Publication Tooling Council. The Council is a task force of the HL7 FMG committee, and is the deliberative body that discusses and approves changes to:
- The FHIR Ig publishing Requirements
- Functional requirements for the HL7 IG Publisher
- Functional requirements for the Standard HL7 and FCP IG templates
The Tooling Council also includes tooling vendors and other members as chosen by the FMG.
New Projects
New projects may be brought forward by any entity (individual, company, government agency, NGO) whether they are a FCP Participant or not. Typically, candidate projects are identified and brought forward to whichever FCP Participant is nearest, whether or not it is the most appropriate. FCP Participants should maintain active outreach with the community around them to ensure early discovery of potential projects. Once a candidate project is identified, participating FCP Participants bring it to the FCP Coordination Committee.
Project Proposals
Project proposals made to the FCP Participant include information such as:
- description
- realm
- proposed license (must be a Creative Commons license, or a recognized open standard license, or as otherwise agreed by the Coordination Committee)
- reference to FCP Participant documented engagement process
- identified dependencies, overlaps, and other related projects
- long-term maintenance plan (see below)
- any identified security, safety and privacy/consent implications (must be specifically called out)
Project Development
Once a project is announced, development begins.
- FCP Participants must have a documented policy that describes how the development process is governed. Note that many (most) FCP participants have their own existing policies and procedures they must follow - their policies are considered implementations of the FCP requirements
- the license and IP contribution requirements must be clearly documented. Open source licenses such as [Creative Commons Public Domain] are preferred but not required
- there must be a way for anyone to comment, and contribute IP to the project
- Input into the issue resolution, formal ballot and work prioritization decision and project leadership may be restricted to a sub-community based on FCP Participant policy or membership (or government obligations). Such rules must be clearly documented
- Community engagement strategies must be clearly documented (e.g. meetings, teleconferences/webexs, wikis, email lists, chat lines etc), and in particular, how to be notified of significant project events must be documented
- how the community support (particularly the secretariat) is provided and funded must be clearly documented
- potential conflict of interests must be made public to the community
The overall cycle of development follows these general steps:
- development of scope and intent
- recruitment of interested parties (marketing - FCP Participants undertake to help each other in this process)
- repeated cycles of
- publishing draft specifications
- open community discussion
- testing the specification at community events
- those repeated cycles gradually fill out the detail and the community agreements become more robust
- (optional) formal review cycle (or ballot) - last call for comment
- publication of milestone release - usually, a FHIR implementation Guide, but other outputs are possible if they better capture the community agreements
- restart the process
The FCP Participant project documentation must include (or refer to) a simple document that describes how this general process is manifested in their internal processes (though it may do by mapping / referencing into existing organizational process documentation)
Note: ANSI Accredited standards organisations such as HL7 are automatically compliant with most of these requirements, which are less stringent than ANSI. Note, thought, that the FCP process has extra requirements around how the early part of the engagement process works that are additional to ANSI rules.
Project Transfer
Projects may be transferred between FCP Participant members (or shared amongst them). This might be done because
- a project is growing beyond the capacity of the initiating FCP Participant to provision support for it,
- a project initiated at a national level proves to have strong international interest
- the project has entered a different stage of it's natural life cycle, and a different FCP Participant is appropriate (e.g. HL7 or the FHIR Foundation might be the FCP Participant of last resort for long term maintenance)
Nothing about the FCP process requires such transfer to occur, but projects following the FCP process are much more ready to transfer between FCP Participants, and the FCP process may make the advantages of such a transfer more obvious. Some FCP Participants already have joint management or transition arrangements in place
Project Output
Most FCP projects produce FHIR implementation guides as their primary output, which capture the agreements made by the community that partakes in the project. Other possible outputs include ISO standards, wiki documentation, or working software. Each FCP project must have clearly documented expectations regarding what the outputs are (note that these may change over time, but the community must be consulted when they do).
When the project produces Implementation Guides, the Implementation Guide should have the FCP Icon somewhere on the home page. In addition, the Implementation Guide must conform to the rules documented for FHIR Ig publishing Requirements. Note that HL7 provides tooling to produce implementation guides that meet these requirements, but it is not required to use the tooling. Additional rules for FCP IGs:
- The license must be clearly documented in the IG. If other encumbrances exist, these must be documented as well
- Any FHIR IGs or other implementation collateral must be registered in the FHIR registry
- The FCP version release strategy must be followed (see below)
- How to raise issues against the IG must be clearly documented
- Security / safety / privacy issues must be documented explicitly, and how to report problems related to these subjects must be clearly documented, with a rapid response to these issues provisioned
- The IGs should be published at their canonical URL (or linked to from there)
FCP Version Release Strategy
All formal releases must have a version associated with the release, and this version should be set in all the conformance resources included in the guide.
Versions should not be re-used, and must have the format major.minor.patch (this is an NPM package rule). Versions must be serially incrementing. Consumers of the specification must be safe to assume that a change in patch number does not represent any intentional change to software in order to conform to the specification (note, though, that technical corrections always change something, that is why they are made).
The following version strategy, related to semver, is recommended, but variations that are consistent with NPM versioning are allowed (e.g. direct semver)
The versioning strategy is a variant of semver as followed by HL7. Each version has 3 numerical parts:
- Publication: the major publication number (e.g. the 1st milestone release is 1.0.0)
- Release: the sequence of this milestone within the Publication cycle
- Patch: incremented when technical corrections to an existing published milestone are made
Note that in this versioning strategy, 1.0.0 is the first full milestone release. Subsequent versions published as part of balloting / consultation will have versions like 1.2.0, until a full 2 release of 2.0.0.
Ongoing Maintenance
FCP Participants are responsible for providing ongoing maintenance of their projects and published IGs. If FCP Participants close projects, or if the FCP Participant itself is closed or ceases to act as a FCP Participant, it is expected to make arrangements internally or with other FCP Participants to take over management of the project and/or its outputs (e.g. through public source repository, escrow or other mechanisms).
Current and Archive Versions
FCP Participants are responsible for ensuring that details of their current products are published to their FHIR publication feed, and that as products are superseded a history of prior version is maintained as part of their publication pack (follow HL7 requirements detailed in FHIR Ig publishing Requirements).
FHIR Accelerator Program
Potential FCP participants may not be in a position to meet all the requirements of the FHIR Community Process, or may wish to have a closer relationship to HL7 than is needed to be a FCP participant. HL7 offers the FHIR Accelerator program to help such partners through the process of developing FHIR IGs using the HL7 processes. While participation in the FHIR Accelerator program is not required to be a participant in the FHIR Community Process, entities may wish to use the FHIR Accelerator Program as a springboard into the FHIR Community Process.