GADS Open Source Project Governance
This project is led and managed by a benevolent dictator. The benevolent dictator
is responsible for the general strategic direction in addition to the day-to-day
maintenance of the project. The community guides the decisions of the benevolent
dictator through active engagement and contribution.
Roles and Responsibilities
Benevolent dictator (project lead)
Ronald Fluegge is self-appointed as Benevolent Dictator or project lead. However,
because the community always has the ability to fork, this person is fully answerable
to the community. The project lead is expected to understand the community as a
whole and strive to satisfy as many conflicting needs as possible, while ensuring
that the project survives in the long term.
In many ways, the role of the benevolent dictator is less about dictatorship and
more about diplomacy. The key is to ensure that, as the project expands, the right
people are given influence over it and the community rallies behind the vision of
the project lead. The lead’s job is then to ensure that the committers (see below)
make the right decisions on behalf of the project. Generally speaking, as long as
the committers are aligned with the project’s strategy, the project lead will allow
them to proceed as they desire.
Additionally, Outercurve Foundation staff considers the project lead primary point
of contact or first point of contact for the project for purposes of business operations
including domain registrations, and technical services (e.g. code-signing).
Committers are contributors who have made sustained valuable contributions to the
project and are now relied upon to both write code directly to the repository and
screen the contributions of others. In many cases they are programmers but it is
also possible that they contribute in a different role. Typically, a committer will
focus on a specific aspect of the project, and will bring a level of expertise and
understanding that earns them the respect of the community and the project lead.
The role of committer is not an official one, it is simply a position that influential
members of the community will find themselves in as the project lead looks to them
for guidance and support.
Committers have no authority over the overall direction of the project. However,
they do have the ear of the project lead. It is a committer’s job to ensure that
the lead is aware of the community’s needs and collective objectives, and to help
develop or elicit appropriate contributions to the project. Often, committers are
given informal control over their specific areas of responsibility, and are assigned
rights to directly modify certain areas of the source code. That is, although committers
do not have explicit decision-making authority, they will often find that their
actions are synonymous with the decisions made by the lead.
A committer may not accept patches or commit to AnalysisLayer unless they
are designated as an Analyst Committer (see Analyst Committers and Contributors)
How to become a Committer: Be a regular Contributor
then be appointed by the Benevolent Dictator.
Contributors are community members who submit patches to the project. These patches
may be a one-time occurrence or occur over time. Expectations are that contributors
will submit patches that are small at first and will only grow larger once the contributor
has built confidence in the quality of their patches.
Before a contributor's change to the code base is put into the repository they must
sign a Contributor License Agreement or an assignment agreement. The change to the
code base can be submitted and discussed but it cannot be committed to the repository
without the appropriate paperwork in place.
Patches that are made to the AnalysisLayer project will only be accepted
from Analyst Contributors (see Analyst Committers and Contributors)
How to become a Contributor: Submit a
change to the code base to GADS Open Source Project at
Analyst Committers and Contributors
There are two categories of Committers/Contributors: Analyst Committers/Contributors
and General Committers/Contributors.
General Committers/Contributors can work on any of the Visual Studio projects that
are a part of the GADS Open Source applications' solutions EXCEPT the AnalysisLayer
project in the Analysis & Reporting application solution [GADSNG Analysis].
The AnalysisLayer project in the Analysis & Reporting application solution
can only be modified by Analyst Committers/Contributors, who are skilled at analyzing
North American Electric Reliability Corporation’s (NERC) Generating Availability
Data System (GADS) data.
Analyst Committers/Contributors must have special knowledge in evaluating generator
equipment performance on generating units, equipment groups, and major components
as defined in the Data Reporting Instructions (DRI) that were developed to assist
generating company personnel in reporting information to NERC GADS.
Specifically, Analyst Committers/Contributors must have a working knowledge of DRI
- Appendix F - Performance Indices and Equations
- Appendix G - Examples and Recommended Methods
- Appendix L1 - Calculating Combined Cycle and Co-generation Block Data: Using the
Synthesis Event and Performance Method
- Appendix L2 - Calculating Combined Cycle and Co-generation Block Data: Using the
Fleet-type Rollup Method: When Reporting Each Gas Turbine/Steam Turbine Unit
How to become an Analyst Committer/Contributor: Be a regular Committer/Contributor
demonstrating the special knowledge described herein then be appointed by the Benevolent
Users are community members who have a need for the project. They are the most important
members of the community: without them, the project would have no purpose. Anyone
can be a user; there are no specific requirements.
Users are encouraged to participate in the life of the project and the community
as much as possible. User contributions enable the project team to ensure that they
are satisfying the needs of those users. Common user activities include (but are
not limited to):
- advocating for use of the project
- informing developers of project strengths and weaknesses from a new user’s perspective
- providing moral support (a ‘thank you’ goes a long way)
- writing documentation and tutorials
- filing bug reports and feature requests
- participating on the mailing
list, discussion board
Users who continue to engage with the project and its community
will often find themselves becoming more and more involved. Such users may then
go on to become contributors, as described above.
How to become a User: Download and use GADS Open Source software
and participate in the
This work is licensed under a Creative
Commons Attribution-ShareAlike 2.0 UK: England & Wales License.
This work is based upon "Benevolent Dictator Governance Model" by University