From its inception as Hydra, Samvera has been designed to provide a generalizable, portable framework that would meet the needs not only of the three original institutions, but also those of a wider community. Originating as a multi-institutional project spanning three universities (Hull, Stanford and Virginia), and with support from Fedora Commons, Samvera has since expanded to include like-minded institutions with similar needs, technical infrastructures and complementary systems.
Community Structure and Responsibilities
At the heart of the Samvera Community are the Samvera Partners, those who both use the software and contribute to the Samvera effort overall. As free and open source software, the community also includes Adopters, those who use the software but don't necessarily contribute back to the collaboration.
The Samvera Partners include groups that coordinate effort across multiple institutions and development efforts. These include the Steering Group, the Roadmap Council and the Core Components Maintenance Group, as well as project-specific teams that focus on particular efforts such as the Avalon Media System product or Hyrax.
Samvera Partners are individuals, institutions, corporations or other groups that have formally committed to contributing to the Samvera community; they not only use the Samvera technical framework, but also add to it in at least one of many ways: code, analysis, design, support, funding, or other resources. Samvera Partners collectively advance the project and the community for the benefit of all participants.
Partnership is earned by actively contributing to the community. Partnership comes with responsibility and benefits. Partners have the privilege to attend Samvera Partner meetings, and to vote in elections and on other matters of importance. Partners are eligible to participate in the governance of Samvera. Partners may provide input on the community and technical direction, and represent Samvera to the broader community. In addition, Samvera Partners are the first to be notified of any known security issues and fixes, ahead of the information being made public.
How do you become a Samvera Partner
The steps are:
be nominated by an existing Partner
get invited to join by the Steering Group
submit a brief letter of intent (see below), a one page letter of agreement (see below) and a corporate Contributor Licensing Agreement
be voted in by the Steering Group, and
be welcomed formally to the Community as a Partner (see below)
How do you stop being a Samvera partner?
get voted out by a majority of all current Partners, or
notify the Samvera Steering Group that you wish to withdraw from your partner agreement
Partners sign a formal one page Letter of Agreement (LoA) in support of the formal, legal Memorandum of Understanding (MoU) signed by the Steering Group in April 2012, and each Partner is asked at the time of joining the group to write a brief letter of intent indicating why they want to become a Samvera Partner and what they intend to contribute to the Community. (Note that we post these letters publicly in the wiki.) Partners are also required to file a corporate Contributor License Agreement (see Samvera Community Intellectual Property Licensing and Ownership page) to ensure that the Community can accept code and other intellectual contributions from the Partner institution. A composite document comprising the 2012 MoU, amendments made to it in 2018 to reflect the name change from Hydra to Samvera, a version of the MoU showing the effect of these amendments, and a blank Letter of Agreement can be found here.
Roles and responsibilities
All Samvera Partners
All Samvera Partners, from the founding partners through to the newest additions, have a responsibility to promote the well-being and development of the Community. Collectively, the partners share responsibilities including, but not limited to:
Electing representatives to the Steering Group
Community maintenance and growth
Collaborative roadmapping (technical & community)
Samvera application development
Governance of, maintenance of and code contribution to the core components
Design contribution: UI's, API's, data models, et al.
Documentation and sharing of contributions, eg. through http://samvera.github.io/
Community infrastructure provisioning & support (Bug trackers, Continuous Integration Servers, Web site, Wiki, etc.)
Maintenance of the official Samvera website
Community advocacy (e.g., public speaking, writing articles)
Participation and leadership in "Interest Groups" and "Working Groups" within the Samvera Community
Meeting organization & planning
Determining Community strategy
Samvera Steering Group
The Samvera Steering Group is drawn from the Samvera Community. It consists of nine members elected from the Partner institutions. Each year, three members step down in rotation and elections are held to fill the three seats. Steering Group members are elected for three years and may serve no more than two contiguous terms. No two members may be supported concurrently by the same Partner institution. Steering Group members take on the same responsibilities as Partners and additional responsibilities including, but not limited to:
Managing Samvera's legal records
Managing the licensing framework for Samvera code components
Managing Samvera’s finances
Appointing, and overseeing the work, of any Samvera staff positions approved by Partners
Formally admitting new Samvera Partners
Identifying individuals who have institutional authority to act on behalf of their Partner institution/entity
Ensuring the quality of provision and support for the Community infrastructure
Seeding / supporting the development of "Interest Groups" or "Working Groups" within the Samvera community
Initiating working groups to review or update Samvera’s governance structure as required by the Steering Group bylaws
Initiating working groups to review and/or update Samvera’s Code of Conduct and Anti-Harrassment Policy periodically
Ensuring the quality of Samvera Partner and Connect meetings
Ensuring appropriate management of the Samvera brand and official Community communications
Ensuring the quality of the official Samvera website
Formally representing the Samvera Community to funding agencies and (possible) commercial partners
Essentially, then, the Steering Group's role is stewardship and central administration of the Community; they are responsible for helping create the structures to see that critical tasks are addressed, and backstopping the Partners' group in case it doesn't fulfil these tasks. So, such things as:
creating decision making structures
decision making when decisions are not otherwise being made
backstopping partners when issues go unaddressed
delicate issues handling
stewardship and caretaking of the Community as a whole
responsibility for providing continuity of the Community
How do you become a member of the Samvera Steering Group?
If you are from a Partner institution and have their explicit support, you may put yourself forward, or agree that someone else put your name forward, as a candidate at a Steering Group election. Partners will vote to elect their preferred candidates.
The current membership of the Samvera Steering Group can be found Samvera Steering Group membership.
The current set of Bylaws governing the operation of the Steering Group can be found here.
Samvera Code Development
Anyone is welcome to use, improve, and hack on the Samvera codebase -- the code is open source!
How do you become a member of the Samvera developer community?
Join the samvera-tech group and mailing list listed on our Get In Touch page
Join the #dev channel on the Samvera slack organization - find instructions on the Get In Touch page
Submit code to the Community (see guidelines), contribute resources to the group, and engage in the technical development process.
Samvera developers have a standing weekly call on Wednesdays 9:00am PDT / Noon EDT.
Some of the things Samvera developers do:
Define technical architecture
Coordinate development of common functionality
Define and enforce development practices
Integration and release
Developer and deployment documentation
Peer support for onboarding new developers
All Samvera code is distributed under an open source license (Apache 2.0 as of 2013), and Contributor License Agreements (CLA's) based on the Apache Foundation CLA's are required from contributors before their code can be added to the Community's code base. See the Samvera Community Intellectual Property Licensing and Ownership page for more details.
Our code development is overseen and coordinated by a number of groups. The Roadmap Council exists to align the roadmaps of the various Samvera code initiatives where this makes sense. The council comprises the product owners of the core Samvera components and Solution Bundles and of representatives from relevant Interest or Working Groups. The essential elements of the Samvera code are maintained by the Core Components Maintenance Group which is devoted to the ongoing maintenance of identified core components via planned sprints organized in communication with the product owners. Hyrax, the repository toolkit that underpins other solution bundles has two key working groups: one for coordinating development, and another for its roadmap. Our solution bundles (Hyku and Avalon) each have their own development teams responsive to the needs of, and advised by, their users.