EdgeX Foundry Project Charter
The Linux Foundation
Effective 24 April, 2017 / Updated 16 October, 2017
1. Mission and Scope of the EdgeX Foundry Project.
a. The mission of the EdgeX Foundry Project (the “EdgeX Foundry Project” or the “Project”) is to develop a full edge software platform (the “Edge Platform”) that is designed to facilitate hardware interoperability in the Internet of Things (IoT) ecosystem. The Edge Platform encompasses a set of core microservices, a methodology for creating interoperable device interfaces, an underlying deployment framework and a reference implementation for system management.
b. The EdgeX Foundry Project supports an open source, technical community to benefit the ecosystem of the EdgeX Foundry Project product providers, solution providers and users, focused on creating code, packaging releases and addressing end-user use cases;
c. The EdgeX Foundry Project promotes participation of leading members of the ecosystem, including developers, end users and product and solution providers; and
d. The EdgeX Foundry Project hosts the infrastructure for the technical community, establishing a neutral home for community infrastructure, meetings, events and collaborative discussions and providing structure around the business and technical governance of the EdgeX Foundry Project.
a. The EdgeX Foundry Project composes of Platinum, Silver and Associate members. All Platinum and Silver members must be current corporate members of The Linux Foundation (at any level) to participate in the EdgeX Foundry Project as a member. Anyone may propose a contribution to the EdgeX Foundry Project’s technical codebase regardless of membership status.
b. All participants in the EdgeX Foundry Project, including members and any contributors, agree to the rights and obligations described in this Charter and to comply with all such policies as the LF Board of Directors or the EdgeX Foundry Project adopts with notice to the project community.
c. The Associate member category of membership is limited to non-profits, open source projects, and government entities, and requires approval by the Governing Board of the EdgeX Foundry Project (“Governing Board”). The Governing Board may establish additional requirements or criteria.
d. Platinum members are each entitled to appoint a representative to the Governing Board, the Marketing Committee and any other committees established by the Governing Board.
e. Silver members are entitled to annually elect one representative to the Governing Board for every 10 Silver members, up to a maximum of 3 Silver member representatives, provided that there shall always be at least 1 Silver member representative, even if there are less than 10 Silver members. The Governing Board will approve the election process.
f. Platinum, Silver and Associate members are entitled to:
i. participate in Project general meetings, initiatives, events and any other activities; and
ii. identify themselves as members of, or participants in, the EdgeX Foundry Project.
3. Governing Board
a. Composition – the Governing Board voting members consist of:
i. one representative appointed by each Platinum member;
ii. the TSC Chair to represent the contributors and technical community; and
iii. the elected Silver member representatives.
b. No single member, company or set of Related Companies (as defined in Section 8) may (i) appoint or nominate for membership class election more than one representative for the Governing Board, and (ii) have more than two representatives on the Governing Board. For purposes of clarity, it is acceptable for one member to appoint a representative and have another employee elected as the TSC Chair to serve on the Governing Board.
c. Conduct of Meetings
i. Governing Board meetings are limited to the Governing Board representatives (and LF representatives and invited guests) and follow the requirements for quorum and voting outlined in this Charter. The Governing Board may decide whether to allow one named representative to attend as an alternate.
ii. The Governing Board meetings are private unless decided otherwise by the Governing Board. The Governing Board may invite guests to participate in consideration of specific Governing Board topics (but such guest may not participate in any vote on any matter before the Governing Board).
i. The Officers of the EdgeX Foundry Project Governing Board consist of a Chairperson (“Chair”), a Treasurer and a Secretary.
ii. The Chair shall preside over meetings of the Governing Board and manage any day-to-day operational decisions.
iii. The Treasurer shall prepare budgets for Governing Board approval, monitor expenses against the budget and authorize expenditures approved in the budget.
iv. The Secretary shall prepare minutes for Governing Board approval and shall preside over meetings of the Governing Board if the Chair is absent.
e. Responsibilities – the Governing Board is responsible for:
i. approving the scope of the EdgeX Foundry Project, with input from the TSC including providing use cases, user stories and priorities to help inform the technical community;
ii. approving a budget directing the use of funds raised by the EdgeX Foundry Project from all sources of revenue;
iii. electing Officer roles for the Governing Board on an annual basis;
iv. overseeing all Project business and marketing matters and work with the Linux Foundation on any legal matters that arise;
v. Establishing subcommittees including a chairperson for each subcommittee elected annually;
vi. adopting and maintaining policies or rules and procedures for the EdgeX Foundry Project (subject to LF approval) including but not limited to a Code of Conduct, a trademark policy and any compliance or certification policies;
vii. working with the TSC on defining and administering any programs for certification, including any Project certification or processes for the EdgeX Foundry Project;
viii. approving procedures for the nomination and election of any officer or other positions created by the Governing Board; and
ix. voting on all decisions or matters coming before the Governing Board.
4. Technical Steering Committee (“TSC”)
The TSC is a committee composed of technical leaders from the open source project responsible for oversight of the technical codebase, the technical community and release process. The TSC and Governing Board are expected to operate independently except where specified.
i. “Startup Period”: During the initial 14 months after project launch, the TSC voting members will consist of 1 appointed representative from each Platinum member, plus the Chair of each Working Group under the TSC.
ii. “Steady State”: After the Startup Period, there shall be a nomination and election period for electing Contributors or Maintainers to the TSC. Voting Members of the TSC must be Contributors or Maintainers in the Project. The Contributors and Maintainers of each Working Group shall elect a Working Group Chair for their Working Group. Each Working Group Chair will serve as a voting member of the TSC. All Contributors and Maintainers in the Project shall elect three TSC at-large representatives to serve as voting members of the TSC. Additionally, Platinum members of the Project when not otherwise represented as a voting member of the TSC, may appoint one representative to serve as a voting member of the TSC. The TSC will approve the process and timing for nominations and elections held on an annual basis.
iii. In either Startup Period or Steady State, no member or group of Related Companies shall have more than 3 votes on the TSC. In the event a member or group of Related Companies go over the limit in the Steady State, the member or group of Related Companies may determine which position(s) on the TSC to resign from. In the event of resignation, the TSC will approve a process to elect a new representative(s).
b. At an appropriate time (e.g., after the first release), the Governing Board will approve a transition plan (developed with the TSC) to transition the TSC from the Startup Period to Steady State.
c. Projects approved by the TSC generally involve Maintainers and Contributors:
i. Contributors: anyone in the technical community that contributes code, documentation or other technical artifacts to the EdgeX Foundry Project codebase.
ii. Maintainers: Contributors who have the ability to commit code and contributions to a project’s main branch on the EdgeX Foundry Project. A Contributor may become a Maintainer by a majority approval of the existing Maintainers.
iii. The TSC may choose to establish additional roles in the community as appropriate (e.g., a Project Technical Lead or “PTL”).
d. The TSC has the authority to create umbrella projects (“Umbrella Projects”) that in turn support multiple sub-projects. Umbrella Projects may create committees or boards (collectively, “Umbrella Committees”) made up of the sub-project leads and, with the approval of the TSC, such other members as may be appropriate, for the technical oversight of the sub-projects within the Umbrella Project. With the approval of the TSC, Umbrella Projects may establish and modify from time to time: (a) new technical roles for sub-project participants; (b) alternate procedures for the determination of voting members of Umbrella Committees; and (c) project lifecycle documents governing the incubation, promotion and archiving of sub-projects within an Umbrella Project.
e. Participation in the EdgeX Foundry Project through becoming a Contributor or Maintainer is open to anyone. The TSC may:
i. establish work flows and procedures for the submission, approval and closure or archiving of projects,
ii. establish criteria and processes for the promotion of Contributors to Maintainer status, and
iii. amend, adjust and refine the roles of Contributors and Maintainers listed in Section 4.b., create, amend, adjust and refine new roles and publicly document responsibilities and expectations for such roles, as it sees fit.
f. The voting members of the TSC will elect a TSC Chair annually, who will serve as a voting member of the Governing Board, and will liaise between the Governing Board and technical leadership of the EdgeX Foundry Project. The TSC Chair must be able to dedicate a significant amount of their time to the EdgeX Foundry Project. The TSC may additionally opt to elect a TSC Vice Chair, who will serve the role of Chair, should the acting Chair be unavailable. The TSC Chair and Vice-Chair must be representatives of a member company.
g. Responsibilities: The TSC is responsible for:
i. coordinating the technical direction of the EdgeX Foundry Project, including the architecture and projects to achieve the Mission and Scope of the EdgeX Foundry Project;
ii. approving project proposals (including, but not limited to, incubation, deprecation and changes to a project’s charter or scope) in accordance with a project lifecycle document to be developed, approved and maintained by the TSC;
iii. designating top level projects, Umbrella Projects and facilitating synergy, collaboration and technical coordination (API, data Models etc.) across all projects;
iv. creating sub-committees or working groups to focus on cross-project technical issues or opportunities;
v. coordinate technical community engagement with the End User (as defined in Section 6 below) community with respect to requirements, high level architecture, implementation experiences, use cases, etc.;
vi. communicating with external and industry organizations concerning Project technical matters;
vii. appointing representatives to work with other open source or standards communities;
viii. establishing community norms, workflows or policies for releases;
ix. discussing, seeking consensus, and where necessary, voting on technical matters relating to the code base that affect multiple projects; and
x. establishing election processes for Maintainers or other leadership roles in the technical community that are not within the scope of any single project.
a. While it is the goal of the EdgeX Foundry Project to operate as a consensus based community, if any decision requires a vote to move forward, the representatives of the Governing Board or TSC as applicable, will vote on a one vote per voting representative basis.
b. Quorum for Governing Board or TSC meetings requires two-thirds of the voting representatives. If advance notice of the meeting has been given per normal means and timing, the Governing Board or TSC may continue to meet even if quorum is not met, but will be prevented from making any decisions at the meeting. Voting rights for a representative who misses three consecutive meetings are subject to suspension and suspended representatives do not count towards the quorum requirement. A representative’s suspension will end and voting rights restored at the start of the next attended meeting.
c. Except as provided in Section 12.d and 13.a., decisions by vote at a meeting require a majority vote, provided quorum is met. Except as provided in Section 12.d. and 13.a., decisions by electronic vote without a meeting require a majority of all voting representatives.
d. In the event of a tied vote with respect to an action that cannot be resolved by the Governing Board, the Governing Board Chair may refer the matter to the LF for assistance in reaching a decision. For all decisions in the TSC or other committee of the Governing Board, if there is a tie vote, the matter will be referred to the Governing Board.
6. Subsidiaries, Etc.
i. “Related Company” means any entity which controls or is controlled by a member or which, together with a member, is under the common control of a third party, in each case where such control results from ownership, either directly or indirectly, of more than fifty percent of the voting securities or membership interests of the entity in question.
ii. “Related Companies” are entities that are each a Related Company of a member.
iii. “Subsidiary” means all Related Companies that a member directly or indirectly controls.
b. Only the legal entity which has executed a Participation Agreement and its Subsidiaries are entitled to enjoy the rights and privileges of such membership; provided, however, that such member and its Subsidiaries shall be treated together as a single member.
c. Only one member which is part of a group of Related Companies shall be entitled to appoint, or nominate for a membership class election, a representative on the Governing Board at one time.
d. If a member is itself a foundation, consortium, open source project, membership organization, user group or other entity that has members or sponsors, then the rights and privileges granted to such member extend only to the employee-representatives of such member, and not to its members or sponsors, unless otherwise approved by the Governing Board on a case-by-case basis.
e. Memberships are non-transferable, non-salable and non-assignable, except that any member may transfer its current membership benefits and obligations to a successor to substantially all of its business or assets, whether by merger, sale or otherwise; provided that the transferee agrees to be bound by this Charter and the Bylaws and policies required by Linux Foundation membership.
7. Antitrust Guidelines
a. All members must abide by The Linux Foundation Antitrust Policy available at http://www.linuxfoundation.org/antitrust-policy.
b. All members will encourage open participation from any organization able to meet the membership requirements, regardless of competitive interests. Put another way, the Governing Board may not seek to exclude any member based on any criteria, requirements or reasons other than those that are reasonable and applied on a non-discriminatory basis to all members.
8. Code of Conduct
The Governing Board will adopt a specific Project code of conduct, with approval from the LF.
a. The Governing Board will approve an annual budget and never commit to spend in excess of funds raised. The budget and the purposes to which it is applied must be consistent with the non-profit mission of The Linux Foundation.
b. The Linux Foundation will provide the Governing Board with regular reports of spend levels against the budget. The Linux Foundation has no obligation to undertake any action on behalf of the EdgeX Foundry Project or otherwise related to the EdgeX Foundry Project that is not be covered in full by funds raised by the EdgeX Foundry Project.
c. In the event any unbudgeted or otherwise unfunded obligation arises related to the EdgeX Foundry Project, The Linux Foundation will coordinate with the Governing Board to address gap funding requirements.
10. General & Administrative Expenses
a. The Linux Foundation has custody of and final authority over the usage of any fees, funds and other cash receipts.
b. A General & Administrative (G&A) fee will be applied by the Linux Foundation to funds raised to cover Finance, Accounting, and operations. The G&A fee equals 9% of the EdgeX Foundry Project’s first $1,000,000 of gross receipts each year and 6% of the EdgeX Foundry Project’s gross receipts each year over $1,000,000.
c. The Linux Foundation is not required to undertake any action on behalf of the EdgeX Foundry Project that is inconsistent with the tax exempt purpose of The Linux Foundation.
11. General Rules and Operations. The EdgeX Foundry Project will be conducted so as to:
a. engage in the work of the project in a professional manner consistent with maintaining a cohesive community, while also maintaining the goodwill and esteem of The Linux Foundation in the open source software community;
b. respect the rights of all trademark owners, including any branding and usage guidelines;
c. engage The Linux Foundation for all the EdgeX Foundry Project press and analyst relations activities;
d. upon request, provide information regarding Project participation, including information regarding attendance at Project-sponsored events, to The Linux Foundation;
e. coordinate with The Linux Foundation in relation to any websites created directly for the EdgeX Foundry Project; and
f. operate under such rules and procedures as may from time to time be approved by the Governing Board and confirmed by The Linux Foundation.
12. Intellectual Property Policy
a. Inbound Contributions. Members and contributors agree that all new inbound code contributions to the EdgeX Foundry Project will be made under the Apache License, Version 2.0 (available at http://www.apache.org/licenses/LICENSE-2.0). All contributions must be accompanied by a Developer Certificate of Origin sign-off (http://developercertificate.org) that is submitted through a Governing Board and LF-approved contribution process. Such contribution process will include steps to also bind non-member contributors and, if not self-employed, their employer, to the licenses expressly granted in the Apache License, Version 2.0 with respect to such contribution.
b. Outbound License. All outbound code will be made available under the Apache License, Version 2.0.
c. Documentation. All documentation will be contributed to and made available by the EdgeX Foundry Project under the Creative Commons Attribution 4.0 International License (available at http://creativecommons.org/licenses/by/4.0/).
d. Exceptions. If an alternative inbound or outbound license is required for compliance with the license for a leveraged open source project or is otherwise required to achieve the EdgeX Foundry Project’s mission, the Governing Board may approve the use of an alternative license for specific inbound or outbound contributions on an exception basis. Any exceptions must be approved by a two-thirds vote of the entire Governing Board and the LF and must be limited in scope to what is required for such purpose. Please email [firstname.lastname@example.org] to obtain exception approval.
e. Trademarks. Subject to available Project funds, the EdgeX Foundry Project may engage The Linux Foundation to determine the availability of, and to pursue registration of, trademarks, service marks, and certification marks, which shall be owned by the LF.
This charter may be amended by a two-thirds vote of the entire Governing Board, subject to approval by The Linux Foundation.