This document is a starting point. There are details left to be added. The goal is to describe the decision-making groups and processes that affect Open edX, both in features and in implementation. It is a guide for a discussion about what is working well and what is not, and what changes we can make to improve the governance.
Purpose of this Document
We are writing a governance policy in the spirit of transparency, openness, and community engagement. We hope that this document will help people navigate Open edX as a project and an organization. We will share the methods through which decisions are made concerning the development of Open edX and propose possible points of external involvement.
Topics Not Covered
Partner Institutions: Institutions running courses on edX.org comprise the edX Consortium. Their opinions help prioritization of the roadmap and certain aspects of the development and design process. The structure and operation of the Consortium will not be covered.
Finances: The decisions concerning the finances, budget, and costs around edX and Partner Institutions will not be covered.
Hiring: EdX is frequently looking for excited and capable people. Methods, procedures, and philosophies behind hiring both employees and consultants will not be covered.
The edX organization holds the following goals and principles:
- Expand access to education for everyone
- Enhance teaching and learning on campus and online
- Advance teaching and learning through research
- Open source platform
- Financially sustainable
In order to accomplish these goals, edX builds and supports the Open edX Platform. The term “Open edX” is also used to describe the team of people who guide the contributors and operators of Open edX and the process that governs these interactions.
Open edX operates under the principles of transparency, community participation, and contribution. The majority of the project is licensed under the AGPL, while developer tools and some APIs use an Apache License.
Open edX is a platform created and supported by edX and a number of other contributors—individuals and ogranizations. In its capacity as a non-profit, edX has an internal business structure and external advisory boards, which are consulted concerning the direction of Open edX.
edX Internal Organization
EdX is headed by a CEO (Anant Agarwal) and a president/COO (Wendy Cebula). More information on the leadership team is available on the edX website.
The Open edX platform (Open edX) is developed and maintained by the Engineering Team headed by CTO Mark Haseltine. The Engineering Team is divided into smaller groups based on function and development area.
The Engineering Team has yearly goals. Each quarter there is a planning process that leads to the creation of quarterly goals and action items.
Each week a member of the Engineering Team takes on the role of release master to ensure the deployment of code to edx.org’s production servers with ad-hoc fixes as needed.
EdX regularly publishes a product roadmap, which provides high-level goals and objectives and specific features to be delivered by edX in the next three months. It affords Open edX users the opportunity to plan for and provide feedback on product direction. Archived roadmaps are publicly available online.
There are three primary bodies in which members of the consortium and other sweat equity partners are consulted on the development of the platform: the Partner Product Council (PPC), the Technical Advisory Council (TAC), and the Architecture Council.
The PPC, comprising leaders in digital learning from the edX community, convenes once a quarter to advise on the direction of the edX product roadmap by discussing key use cases and organizational priorities.
The TAC is made up of members of partner institutions, with representatives from Berkeley, Harvard, MIT, Stanford, University of Texas, and one independent participant formerly of Stanford. Meetings are attended by edX employees, who often present. The TAC advises on the high-level technical aspects of the edX roadmap.
The Architecture Council guides the architecture of the platform, reviewing architecture proposals. It is comprised of edX employees and outside members. Architecture proposals are reviewed online in public, with a face-to-face meeting to reach final consensus if needed. Details are on the Architecture Council wiki page.
As of 2015, Partner Institutions (organizations that have contractually partnered with edX) can affect prioritization of features on the roadmap. By expressing need for a particular feature, Partner Institutions can request for that feature be given higher prioritization.
Commit Access and Merging Permissions
Employees of edX have the ability to merge any pull request made to any repository in edX’s Github repositories. EdX employees are responsible for making sure that contributions from external committers - that is, anybody who is not directly employed by edX - get reviewed in a timely fashion. To learn more about the process of submitting a pull request to an edX repo, please see the Contribution Guide.
When a contributor submits a pull request (PR), it goes through a standardized workflow, the details of which are online. Each PR must include a cover letter, providing a detailed description of the PR. Code must pass the tests. There is an overview of considerations for submitting and reviewing code available on the edX documentation site.
Review is an active conversation between edX and the initiator of the PR. EdX provides feedback during the review process. If the owner of the PR does not respond or the issues are not resolved, the PR will be closed.
All code in Open edX will eventually be deployed onto edx.org. Merging decisions take this into account. Pull request reviewers are responsible for ensuring that all code merged into Open edX meets quality standards, and that proper controls are in place to guarantee the continued successful operation of edx.org.
Possible Future Directions
In order to create greater community involvement in Open edX, there are opportunities for external and non-partner contributors.
The Architecture Council
Adding more external contributors to the Architecture Council is an idea currently being discussed.
While the product roadmap will continue to be determined by edX, formal procedures for community members to express their preferences could be constructed. The results would be non-binding, but taken into consideration.
Community Reviewers and Merge Access
Community members could potentially become more involved in the review process and be granted merge access.