开发者关系 像个开发者一样思考

开源项目的“贤明君主”治理模型

2018-10-03
开发者关系

“贤明君主(Benevolent Dictator)”项目由唯一的领导者牵头。在谈及“贤明君主”模型时,人们最常引用的例子可能就是 Linux 内核项目,该项目由 林纳斯∙托瓦兹 直接领导并决策。作一个”贤明君主”并不容易。“贤明君主”需要具备交际和社区构建技能、全面深入的项目技术知识,以及超出常人的奉献与专注。但是,正如 Linux 内核项目所展示的那样,”贤明君主”模型非常有效。与这种管理控制截然相反的是精英治理模型,该模型的参与者通过对项目作出贡献并获得认可来影响项目。

项目的组织方式在治理文档中说明。第二节为希望使用”贤明君主”模型并创建自己的治理文档的项目提供了模板。您可以完全照搬此模板,也可以根据具体需求更改后使用。与我们提供的大多数资料一样,您只需注明来自 OSS Watch,即可根据创作共用许可获得此模板,并重用和修改模板。有关治理模型的目的或各种模型优劣的讨论,请参见我们的治理模型说明文档。

简介

虽然精英治理模型和”贤明君主”模型在结构上存在明显的差别,但二者都是基于相同的开源理念,即共享代码和鼓励所有人为社区作出贡献。因此,”贤明君主”和精英项目管理委员会都是通过忠诚度而非法律手段行使决策权也就不足为奇了。”贤明君主”和精英项目管理委员会都明白,会员可以自由获取代码并创建类似的项目。事实上,这种分化能力对开源社区的健康发展至关重要,因为它确保项目治理者努力为社区而非个人或个别企业作出正确的决策。尽管如此,两种模型还是有显著的差别,尤其是在社区内如何决策方面。

“贤明君主”治理文档模板

概述

本项目由”贤明君主”领导,由社区管理。也就是说,社区积极地对项目进行日常维护,而”贤明君主”负责制定项目的总体战略方针。如发生分歧,”贤明君主”具有最终决定权。”贤明君主”的职责是解决社区内部的争议,确保项目能够协调发展。社区的职责是通过积极参与和贡献来指导”贤明君主”的决策。

角色和职责

“贤明君主”(项目主管)

通常,”贤明君主”(或称项目主管)可自我任命。但由于社区始终具有分化能力,因此”贤明君主”应对社区全面负责。项目主管的工作较有挑战性,他们负责设定项目的战略目标,并与社区进行明确沟通。项目主管还必须了解整个社区,尽可能满足各种相互矛盾的需求,并确保项目的长期发展。

从很多方面来看,”贤明君主”的角色更象是外交家,而非独裁者。随着项目的扩展,关键是要确保合适的人选对项目施加影响,以及社区团结一致,共同实现项目主管的愿景。因此,项目主管的职责是确保提交者(参见下文)作出有利于项目的正确决策。一般来说,只要提交者能够遵循项目策略,项目主管会允许他们以自己喜欢的方式提交。

提交者

提交者是曾经为项目作出有价值的贡献,目前直接向资源库编写代码并筛选他人代码的参与者。很多时候,提交者是程序员,但有时也可能是其他贡献者。提交者通常关注项目的某个方面,并以其专业技能和理解水平赢得社区和项目主管的尊重。提交者无需正式任命,为项目主管提供指导和支持的有影响力的社区成员即是提交者。

提交者无法决定项目的整体发展方向。但是他们受到项目主管的重视。提交者的职责是确保项目主管了解社区需求和共同目标,参与项目开发或促成对项目的贡献。他们往往对自己负责的具体领域拥有非正式的控制权,并有权直接对某些领域的源代码进行修改。也就是说,提交者虽然没有明确的决策权,但他们的行为往往与项目主管的决策具有同等效力。

贡献者

贡献者是不想成为提交者,或者”贤明君主”还未赋予其成为提交者的社区成员。贡献者对项目作出有价值的贡献(见以下列表),但通常没有直接更改项目代码的权限。贡献者参与项目的途径包括邮件列表等通信工具,以及就问题跟踪器中的问题提交报告和修补程序,详见我们的社区工具文档

任何人都可以成为贡献者。贡献者无需对项目作出承诺,无具体技能要求,也无需经过筛选。要成为贡献者,社区成员只需为项目作出一两个有益的贡献。

一些贡献者早已成为项目的用户,并在以下一两个领域有所作为:

  • 支持新用户(当前用户往往能最有效地支持新用户)
  • 报告 bug
  • 识别需求
  • 提供美工和 Web 设计
  • 编程
  • 协助项目基础设施建设
  • 撰写文档
  • 修复 bug
  • 添加功能

随着贡献者项目经验的增加和对项目了解的深入,项目主管对他们的依赖逐渐加深。此时,他们就会逐步担任起提交者的角色,如上文所述。

用户

用户是对项目有需求的社区成员。他们是社区最重要的成员:没有了用户,项目将毫无意义。任何人都可以是用户,没有具体要求。

我们鼓励用户尽可能多地参与到项目和社区中来。用户的参与确保项目团队能够满足用户的需求。常见的用户活动包括(但不限于)以下方面:

  • 推广项目
  • 从新用户的角度,告知开发者项目优势和劣势
  • 提供精神支持(一句“谢谢”就是很大的鼓励)
  • 提供资金支持

持续参与到项目和社区中的用户往往会发现他们越来越深入其中。此类用户可能会进而发展为贡献者,如上文所述。

支持

我们鼓励所有社区参与者帮助项目管理团队提供对新用户的支持。参与者的支持是社区发展壮大的途径之一。寻求支持的人应该明白,对项目的所有支持都是自愿的,因此,只在时间允许时才提供支持。如果用户希望响应时间或响应结果有保证,应考虑与供应商签订购买支持服务的合同。(当然,该供应商必须是社区的活跃成员。)但是,对于希望按照自己的方式参与项目并帮助其他用户的用户,社区支持是理想的渠道。

贡献流程

任何人,不论其技能如何,都可以通过多种方式参与到项目中。例如,贡献者可活跃于项目邮件列表和问题跟踪器,或者提供修补程序。有关参与方式的更多信息,请参见我们的开源角色文档

对于第一次作出贡献的贡献者,开发者邮件列表是他们寻求帮助的最佳工具。

决策流程

由于项目主管具有最终决策权,”贤明君主”模型无需正式的冲突解决流程。如果社区质疑提交者的行为是否明智,项目主管可查看存档邮件,选择支持或推翻他们之前的决定。

综述

“贤明君主”治理结构不易管理,需要任命专职项目主管。但是,”贤明君主”治理模型因其简单而非常行之有效。本文提供的模板定义了一套可合理管理的模型,并说明了与其相关的开源项目的主要角色、活动和决策流程。

创建”贤明君主”治理文档时,需确保提供有关项目主管和其他贡献者角色的必要信息,明确说明新的参与者应如何为项目作出贡献,以及他们的贡献如何得到认可。


原文由Ross Gardler 和 Gabriel Hanganu 发布于 2010 年 2 月 15 日,上次更新于 2013 年 11 月 7 日

转载请注明:开发者关系 »


Similar Posts

Content