GovStack Meta Specification

Status

Draft

Version

0.0.3

Current notice

2025-04-21: Section 5 regarding specifications processes is almost complete. Only missing drafting for the obsoleting of specifications and subsection for quality criteria. Next chapters: 4.5.4 Membership and 4.6 Consensus building

Contributors
(put your name in when you contribute)

@Ali González @Nico Lueck

This document uses keywords in RFC2119 to denote requirement descriptors for the specifications. Please note that it should also take into account RFC8174 which updates RFC2119 by specifying that only UPPERCASE usage of the keywords have the defined special meanings.

0. Objective

Ready for Feedback

This document aims to cover all aspects of GovStack Specification lifecycle, including the operating procedures for the Working Groups that create specifications. It’s objective is to ensure there are clear processes for the different participants and stakeholders using, building and implementing the GovStack framework.

Underlying this process is agreement to the GovStack Model of Interoperability described in https://govstack.gitbook.io/specification/architecture-and-nonfunctional-requirements/introduction.

1. Introduction

Ready for Feedback

The GovStack initiative aims to build a common understanding and technical practice on fundamental reusable and interoperable digital components, which we collectively refer to as Building Blocks. Our effort is expert-driven and community-based, and includes the participation of multiple stakeholders to bring together expertise for strengthening a government's cross-agency architecture view. You can view a more extensive explanation about GovStack’s approach on the https://govstack.gitbook.io/specification/architecture-and-nonfunctional-requirements book.

The GovStack initiative does this by developing Specifications through its Working Groups, and its Specifications Track Process, which is strategically supported by GovStack's Governance bodies. Specifications are developed through working groups by consensus, soliciting reviews, both internal and from the public, and incorporating implementation feedback from Governments or Software solutions adopting the specifications.

2. Obsoletes

Ready for Feedback

This document is meant to update the following documents:

3. References

Ready for Feedback

3.1.1 Internal

3.1.2 External

4. Working Groups

4.1 What is a Working Group?

Ready for Feedback

A Working Group (WG) is an community through which experts on an area of expertise and with an interest on governmental interoperability, convene around how to implement the GovStack model on such topic.

4.2 Scope

Ready for Feedback

A Working Group provides an ongoing space for topic stakeholders to:

  1. Create specifications regarding their area of expertise

  2. Share real-world experiences and feedback regarding the implementation of existing specifications

  3. Advance minor and major changes to existing specifications

  4. Promote publicly the usage of the specifications under the trust of their working group, the promotion of real-life use cases of the specifications, and any outreach activities regarding their work

  5. Identify potential software solutions that could comply with the specifications and assess the compliance of said solutions

Even though Working Groups are on-going, they operate under the logic of annual charters that must be renewed, so a Working Group is expected to remain active and under the same goals and facilitator teams for the running year.

4.3 Composition

Ready for Feedback

A Working Group is composed by the following roles:

  • Members: Anyone that joins the Working Group either in a casual or more permanent fashion. Members can contribute with either their expertise, feedback, or presence through attending the Working Group events, or participating in any asynchronous activities or discussions in the Working Groups participation channels.

  • Representative: One or two people per working group who agree to the responsibility of representing the Working Group interests within the wider GovStack governance. Representatives will be the main Points of Contact for a Working Group and their responsibilities as follow:

    • Coordinate and report progress on the annual goals of a charter.

    • Represent their group in the Architecture Working Group (especially if they belong to Foundational Building Blocks) to decide and be consulted on cross-functional requirements.

    • Coordinate the activities for the creation of a new specification, or the proposal and facilitation of a new version, major or minor, of an existing specification and report its progress to the Technical Facilitation Team, as detailed in section https://govstack-global.atlassian.net/wiki/spaces/GH/pages/1036124166/GovStack+Meta+Specification#5.3-The-Specification-Track-Process of this document

    • Coordinate the work needed for any request to obsolete an existing specification.

  • Facilitators: The team tasked with the responsibility of organizing all of the Working Group activities. Having a group of facilitators allows for the WG representative to not shoulder all of the responsibilities and workload of organizing a working group, and offers an outlet space for members that want to get involved further in their WG operations. A WG Facilitator is expected to remain active within the working group for the period

4.4 Minimum tools and responsibilities

Ready for Feedback

The following are responsibilities and tools available to the WG facilitation team:

  • The creation of the Annual Charter: A WG will work together along with its members to propose a document that specifies the goals and scope of the working group for the year. This SHOULD include any activities they may consider. A Charter may be updated in the middle of the running year to include new objectives or update or delete existing ones according to their needs, however the document will need to be up-to-date, changes should be documented and communicated and the document should be available publicly.

  • The maintenance and upkeep of the Working Group community calendar: A calendar will be provided where all activities for the Working Group are to be recorded. The calendar will help the Working Group and the GovStack technical facilitation team to communicate the activities of the Group for outreach. It will also become the common place where all members of the community can subscribe so that they can always be informed about the activities of their group.

  • The documentation of the Working Group activities on their confluence webpage and the up-to-date keeping of the WG public page

  • Access, administration and up-keeping of the Working Group’s communal spaces and channels: The working group facilitators will have access to several spaces that serve as the WG’s infrastructure to perform its activities. The minimum set of tools and their maintenance is as follows:

    • Slack Channel

    • Confluence webpage

    • Public Webpage

    • A member mailing list

  • Some other tools are available upon request, but not limited to:

    • An online meeting platform

    • Access to the Sandbox to test the compliance of new or existing solutions

    • Access to GovStack’s swagger to create and document OpenAPI specifications

  • When in the process to write a new specification or advance an existing one to another version:

    • Access to the Gitbook

    • Access to Jira ticketing system

    • Access to GovStack’s GitHub

  • Help and assistance: As part of the GovStack wider community, a Working Group has the right to request different types of assistance to fulfill their goals. Including but not limited to:

    • The assistance of the technical facilitation team to review any work they have, answer any questions or escalate any matter to other GovStack teams through either the TC Facilitation team office hours or directly.

    • Assistance on the promotion of the WG activities and milestones through the use of GovStack’s communication channels and its relation to global and regional DPG and DPI networks.

    • Technical mentors: People outside their area of expertise that may provide support hours to solve a delimited problem. WG facilitators may request this assistance through the Technical Facilitation team.

    • Support from the GovStack institution to apply to any funding or to raise or receive donations to complete specific projects that advance the WG goals.

  • Budgeting (Experimental): The Working Group will have access to budget to complete their activities and to use it as they see fit. To request a budget the following needs to be made:

    • Project scope: All budget request should be related to activities denoted on the Annual Charter

    • Budget allocation: A detail of where the budget wants to be allocated. Examples include: Hours to hire a Lead, money to complete a compliance evaluation, event organizing expenses, etc.

    • A minute signed by members of the WG where a session was held and decisions where made about the budget request.

4.4.1 Spaces available to Working Groups

The following are designated spaces to which Working Group members have access

  • Slack, for immediate communication

  • Confluence, for working documents

  • Jira, for the tracking of tasks

  • GitBook, for publishing and change management of specifications

4.5 Working Group Creation and the creation of the Annual Charter

Ready for Feedback

4.5.1 Creation of a Working Group

The creation of a Working Group starts with the creation of a Charter, which is a document that outlines the Working Group scope, objectives, facilitators, meeting frequencies, communication channels and other relevant information.

The charter is to be renewed annually, which allows the Working Group to set annual goals and distribute their time commitments accordingly.

A charter and its objectives MAY be changed upon documented agreement via a meeting minute.

Once the charter is written and agreed to, the Working Group facilitators, via the Working Group Leads, SHOULD submit the Charter to the Technical Facilitation Team for creation and approval.

4.5.2 Creation and renewal of a Charter

Ready for Feedback

A Working Group Charter MUST contain all of the following information:

  • The group’s mission

  • The scope of the group’s work

  • A list of Facilitators that will be running the group and their expected time commitment and level of involvement by the Team (e.g., to track developments, write and edit technical reports, develop code, or organize pilot experiments).

  • Expected milestones

  • Meeting mechanisms and expected frequency

  • Communication mechanisms to be employed within the group, between the group and the rest of the GovStack community and with the general public

  • An estimate of the expected time commitment from participants.

  • The designation of 1 or 2 Working Group Leads that will remain as the Points of Contact for the Working Group.

If the Working Group wants to advance existing specifications or create new ones during the year, the following information MUST be included:

  • Description of the advancement to specifications to be achieved

  • Motivations to advance the needed specifications

  • Expected milestones to be achieved

  • Responsible Point of Contact

  • A list of members that committed to work on the specification

In the case of existing Working Groups, a Charter document SHOULD be built in an open way, so that participants are able to contribute to the document.

Once submitted, a Charter document MUST be published by the Technical Facilitation team on {Resource} to remain open to the GovStack community for comments for at least 2 weeks.

The Technical Facilitation team SHALL use GovStack’s public communication channels to announce a request for comments to the Charter.

Once comments are receive, both the Technical Facilitation Team and the Working Group Facilitation team have between a day and up to 2 weeks to resolve all comments and publish a resolution to launch or decline the creation of the working group.

4.5.3 Dissolution of a Working Group

Ready for Feedback

A Working Group can be dissolved upon the following three scenarios:

  • When members of the Working Group decide upon an assembly documented through a meeting minute to dissolve the group, and given that the meeting was announced with at least 2 weeks anticipation through the Working Group’s communication channels.

  • When the Advisory Board decides upon a public assembly and publishes its reasons through a meeting minute.

  • When a Working Group becomes inactive 6 months after the expiration of their last annual charter. In this case, dissolution of a Working Group MUST be documented by the Technical Facilitation Team, which MUST evaluate beforehand if the Working Group can be re-activated through an open call.

4.5.4 Becoming a member and membership finalization

Work in progress

  • Who is a participant

    • The Code of Conduct

    • The Contributor Code

    • Participating as an Individual

    • Participating on behalf of an organization

  • Process for becoming a lead

    • Election and resignation process

  • Process for becoming part of the facilitator group

4.5.5 Special Membership Groups

Work in progress. Search for existing documents describing these groups or organs.

Technical Committee

Architecture Working Group

Advisory Board

  • Strategic Governance Committee

  • Governance Committee

4.6 Consensus building in Working Groups

Work in progress

Draft should specify that consensus building should prioritise consensus by deliberation and recommends a voting-based mechanism that can be activated whenever consensus by deliberation was not achieved and a decision has been made


5. Specifications

Work in progress

What is a specification

Scope of the GovStack architecture should be referenced here

5.1 Types of specifications

Work in progress

Map types of specs to this chart

  1. Foundational BB

  2. Feature BB

  3. Guidelines

  4. Cross-Cutting - Other types of requirements

5.2 Lifecycle of a specification and its processes

Ready for Feedback

Specifications are meant to be proposed, drafted, reviewed, released, implemented, improved-on through feedback, and whenever needed, obsoleted. The GovStack community and its governance provides the environment to all of these stages.

Understanding WG and Stakeholders_2025-02-07_22-57-24.png
The Specification Lifecycle and the teams involved in each stage

Working Groups are the places where most of this happens.

The following are processes and procedures available to Working Groups that work on specification building:

Specifications Track Process: The process that describes the high-level procedure to move specifications from Proposal, Draft, Review, Publish and Obsoleting. It clarifies who performs, who facilitates and who reviews and who approves each part of the process.

Specification Review Process: The procedures that helps Working Groups coordinate the review process of a specification.

5.3 Specifications Track Process

Ready for Feedback

5.3.1 Specifications Track

A specification, no matter if its a new specification or a new major version, goes through the following stages for publication:

  1. Specification Proposal

  2. Specification Draft

  3. Specification Release Candidate

  4. Published Specification

  5. Obsoleted specification

Minor versions can skip the Specification Proposal Phase and undergo an internal review process by the Working group.

5.3.2 Tools for crafting specifications

Ready for feedback

The following are tools a working group should have access to, through its facilitators, and the usage expected out of these tools. Access can be requested to the Technical Facilitation Team:

Tool

URL

Affordances

Tool

URL

Affordances

Gitbook

https://govstack.gitbook.io/

Publish minor or major versions of specifications

Github

https://github.com/GovStackWorkingGroup/

Debug changes to minor or major versions of specifications

Jira

https://govstack-global.atlassian.net/jira/

Determine and assign tasks needed for projects the Working Group undergoes, specially when drafting specifications.

Confluence

https://govstack-global.atlassian.net/wiki/

Have a repository for both the specification draft and working group activity. Specially minute-taking for weekly sessions and documentation of important decisions.

Slack

https://govstack.slack.com/

Short form communication with the Working Group.

Swagger

 

Specification API development and testing.

Figma

 

Specification whiteboard and design development.

5.3.3 Roles

Ready for feedback

In a nutshell:

Team

Action

Team

Action

Working Group

Own (organize, coordinate, craft, draft, deliberate)

Technical Committee Facilitation Team

Facilitate, support

Architecture Working Group

Review, feedback, oversee

Governance Committee

Approve

In detail:

Governance Committee:

  1. Approves the proposal for the creation of new specifications

  2. Approves a proposal for major version of a specification

  3. Gets notified of the creation of a minor version

  4. Gets notified of the undergoing of the Release Candidacy or the Publishing for a specification

  5. Approves the obsoleting of a specification

Technical Facilitation Team

  1. Ensures proposals for new specifications or major version of specifications are complete, sound and properly estimated, and pass a Product and Technical soundness review.

  2. Is responsible for green-lighting moving any specifications from one step to the next on the Specifications Track Process by ensuring readiness of the process.

  3. Coordinates the Release Process, including the different aspects of the review and publishing process.

  4. Provides facilitation support to Working Groups and any support regarding tooling, technical writing and review, as well as networking needed to advance either specifications being built or activities supported on the Working Group’s Charter.

  5. Identifies any needs for human or material resources for both specification work and working group charter activities and works to present budget proposals to the Governance Committee.

Architecture Working Group

  1. Reviews that proposals for new specifications or major version of specifications reflect the state of the art for that technology, that the proposal reflects the principles outlined in the Architecture and Nonfunctional Requirements of the GovStack Initiative, and that it is harmonious and not overlapping with the rest of the Building Blocks ecosystem.

  2. Ensures proposals for new specifications or major version of specifications are reviewed and green lighted with the Product Committee and teams and groups related to it. This is called Product Soundness Review.

  3. Ensures proposals and drafts for new specifications or major version of specifications pass a Architectural Soundness Review, by identifying the different groups and stakeholders that could provide feedback and clarify that the scope of the document makes technical sense, and ensuring it aligns to the rest of the GovSpecs ecosystem.

  4. Presents proposals for new specifications or major version of specifications, as well as obsoleting of specification requests to the Governance Committee for approval. In the case of minor versions, it notifies the Governance Committee.

Working Groups

Through its Facilitators are responsible for the following activities

  • Craft a Specification Proposal

  • Update Working Group’s Charter with the Specification Proposal outlines and estimated timelines

  • Coordinate Working Group Meetings where specification drafting activities are defined and deliberated, documenting meeting minutes in the Working Group’s Confluence space

  • Own the Specification Drafting Process, and coordinate all work to be done through the Working Group’s Jira Space, as well as use the Working Group’s Confluence space for the Draft

  • Decide, via deliberation, when a Specification is ready to be moved to a Release Candidate stage

  • Request any help or resources needed from the Technical Committee Facilitation Team to complete the specification

Through its representatives, are responsible for the following:

  • Present the Specification Proposal Document to the Technical Committee Facilitation Team and to the Architecture Working Group

  • Attend Architecture Working Group Meetings to identify harmonious interaction with other building blocks

  • Report progress of the Specification Drafting stage to the Technical Committee Facilitation Team

Through its members, are responsible for the following:

  • Attend Working Group meetings where issues are deliberated and tasks are assigned

  • Grab tasks from Jira to be worked-on for the drafting of the specification, and work on the Working Group’s Confluence space during the specification drafting stage

5.3.4 Moving through the stages of each part of the process

Ready for feedback

Stage

Definition of Ready

(Done by the Working Group)

Definition of Done

Stage

Definition of Ready

(Done by the Working Group)

Definition of Done

  1. Specification Proposal

  • A Product Soundness Review has been passed

  • A Architectural Soundness Review has been passed

  • The Governance Committee has approved the Proposal

  1. Specification Draft

  • A starting document with an outline has been created on the Confluence Space

  • A Release Candidate request has been approved by the Working Group

  1. Release Candidate

  • A Changelog or Release notes has been issued

  • An announcement has been prepared

  • Review channels and review dynamics are defined

  • The review process has been completed

  • The Working Group has approved the verdict

  1. Published Specification

  • The Release Candidate phase has been completed

  • The new version has been posted to the Gitbook

  • Release announcement has been posted in public channels

  1. Obsoleted Specification

  • An Architecture Decision Record has been filled

  • The ADR proposal was approved by the Architecture Committee

  • The Governance Committee has approved the obsoleting request

5.4 Specification Review Process

5.4.1 The stages and tasks of the Review Process

Ready for feedback

The Working Group owns the Review process, and aids itself with the help of the Technical Facilitation Team and the Architecture Working Group to perform it. The review has the following stages:

Phase

Tasks

Phase

Tasks

  1. Preparation

  • Perform a final review of the text

  • Compile Release Notes for a Major Version or append a Change Log to the Release Notes for a minor version

  • Craft a shortlist of people or organizations to invite as reviewers

  • Prepare a review form, with instructions for reviewers, and determine a review deadline and minimum threshold of reviews to be achieved

  • Determine general directives for the integration of feedback after reviews have been received, and for deciding on how will the group veredict for moving the release candidate into publication

  1. Announcement

  • Craft a short public announcement to be delivered to the Technical Facilitation Team for distribution in GovStack’s public channels

  1. Review Period

  • Monitor any incoming reviews and share them with the working group members

  1. Integration

  • Decide as a Working Group how to integrate any feedback received:

    • For small changes, integrate to the current version

    • For changes requiring further development, the group may decide to add the feedback to the planning for the next minor or major version

  1. Veredicting

  • Decide on a plenary session with the Working Group members after reviewing feedback received whether the Release Candidate shall move into an official Release

  1. Publishing

  • Announce the official release with the help of the Technical Facilitation team through GovStack’s public channels

5.4.2 Quality Guidelines for the Release Process

To be drafted.

  • Sections

  • Versioning

  • Declaring dependency to other BB and their versions

  • Change management

  • Road-mapping

  • Styles manual

  • Referencing external specifications

5.4.3 Minimum Requirements for the Review Process

Ready for feedback

Each Working Group has autonomy in defining when to move a specification into a Release Candidacy, receive and integrate reviews and veredict for publishing. However, the following requirements MUST be observed:

  1. The decision for moving a specification to a release candidacy, as well as the integration of feedback and veredicting of the Release Process MUST adhere to be decided using Consensus first, and resort to voting mechanisms where the need for agility in decision-making is required.

  2. Release Notes should accompany every major version for a specification. Minor versions should be appended on a Changelog section of the release notes.

  3. Reviews SHOULD be open to the public. However, the minimum threshold for reviewers should be no smaller than 2, and MUST NOT include neither members appearing in the credits section of the specification, or people belonging to the organization of the list of active members of the working group. For more detail, review the section for Determining Working Group Membership.

5.5 Using and improving specifications

Ready for feedback

After a specification has been officially released, it becomes important to promote and document its implementation. GovStack has several channels from which specification usage is promoted, tracked, tested and expanded. The following is a list of GovStack programmes and ways in which Working Groups have the right to interact:

Programme

Affordances

Programme

Affordances

The Country Engagement Team

  • Implement a specification in a country

  • Get a review from an implementer country

  • Test or get feedback from an implementer country

  • Invite countries to participate in the Working Group as members

GovMarket

  • Identify software solutions that can become compliant and can participate in testing the specifications

GovTest

  • Implement the specification in GovStack’s test environment

GovLearn

  • Develop content to teach how to use the specification

5.6 Obsoleting a specification

At times a specification may become obsolete. It pertains the Working Group, the Technical Committee and, if needed, the advisory of other GovStack governance committees, to determine when a specification needs to be obsoleted. It is however through the triggering of the Obsoleting process by the Working Group and the review of the Technical Facilitation Committee that such process, described in section 5.3, happens.

Related content