如今,实际上,每个公司都以一种或另一种方式涉及免费和开源软件(FOSS),但不要被“免费”和“ Open”一词所欺骗:Foss仍然需要就像其他任何第三方软件一样管理。它进入公司的方式,可以使用的方式,如何影响您的日常操作 - 需要跟踪,组织和简化这些过程。
创建开源政策手册是公司通常采取的第一步来帮助管理FOSS的使用和采用,这通常是通过设置正确的治理流程来帮助实施政策。公司经常在建立这些过程时需要解决几个问题。本文将帮助您确定设置时要考虑的一些常见问题和因素开源治理过程。我们还将根据组织在现实世界中所做的事情提供有关其中一些领域的实用提示。
请注意,本文基于Stormy Peters的出色指南:创建开源政策的最佳实践。如果您尚未这样做,请务必在进行进一步执行之前阅读该文章。
为什么需要开源治理流程?
如今,几乎没有一家公司在某种程度上与FOSS互动。这些互动范围从将FOSS用作其内部IT基础架构的一部分到将其作为其出售产品的一部分进行分配。这些相互作用中的一些甚至可能是无意的。例如,公司可能会购买结合FOSS组件的第三方软件。
FOSS可以通过许多渠道进入公司,其中大多数(如果不是全部)可能无法设置以跟踪其通过组织的流程。尽管许多人认为这种非传统流动性是FOSS的关键好处之一,但它确实在当今的公司问责制中构成了某些挑战。实际上,跟踪公司中的FOS通常超出了人们对审计和合规性的良好需求。作为FOSS治理的一部分收集的信息可能是制定战略决策的宝贵工具,并且经常被用作竞争优势。
精心设计的开源治理过程可以帮助您的公司:
- 跟踪您组织中当前正在使用的各种FOSS项目(及相关许可)。
- 确定与福斯和这种关系性质有关键关系的所有领域(消费者,参与者,维护者等)
- 为所有与FOSS相关的及时更新(例如,即将到来的foss软件包的许可更改),为所有关键利益相关者建立直接通信渠道。
- 将FOSS的评论集成到您的常规公司工作流程中,因此没有任何裂缝。
- 与对您公司重要的FOSS项目和社区建立互惠互利的关系。
- 放松。虽然开源治理流程不会为您的假期付费,但它肯定会有助于确保您的组织能够充分利用您的组织,从而最大程度地提高FOSS福利,同时最大程度地减少风险。
也要了解,有很多变量会影响您在下面概述的每个部分中的选择。这些变量包括:
组织成熟度:无论您的公司是20个人的初创企业还是200,000人企业,都会对您的FOSS治理过程的各个方面产生强大的影响。
初级业务:在讨论的背景下,FOSS是您技术武器库的关键部分。如果您的主要业务处于技术领域,FOSS可能在您的策略中发挥不可否认的作用。另一方面,如果您的公司依靠其他人提供技术专业知识,则可能需要从类似的外部提供商那里获得FOSS专业知识。
现有流程(采购,产品/服务发布,公共关系等):FOSS将影响您组织的各个方面。在某些情况下,您可能需要增加现有流程,而在其他过程中,您可能需要全新的过程。
组织文化:您的FOSS治理过程将需要适合您现有的组织文化,以使其成功。例如,这可能意味着要在非常结构化和自上而下的重量级过程之间做出决定,这是一个轻量级的过程,更非正式地从自下而上驱动,或者是两者的某些混合体。组织文化是无形的,很难在治理过程中纳入,但是它可以在苦苦挣扎的过程中与一个巨大成功的过程之间的差异。
当您阅读以下各节,并在计划和设计您的FOSS治理过程时,请记住这些变量。
实施治理过程之前需要考虑的常见因素
在您开始创建开源治理过程之前,这里有一些您应该已经排队的项目:
- 开源战略和政策
- 赞助和组织支持
- 资金
- 识别的FOSS专业知识,差距和依赖关系
- 指标和跟踪
让我们更详细地看一下其中的每一个。
开源战略和政策
开源治理流程使您的开源战略和政策无法正常工作。在开始设计和实施开源治理过程之前,您需要制定开源政策是很自然的。
但是,这不是一个很难的要求。组织通常从过程开始和宽松定义的政策开始。即使找到一个人被委托负责弄清开源政策和流程的责任的大型组织也并不少见。
也就是说,从政策开始,您就可以使您了解组织与FOSS的关系中的期望。有了这些知识,您可以开发一个过程,以补充并加速该策略的实施。它还确保您投资的时间,金钱,人员和努力的量与公司对FOSS的期望保持一致。
赞助和组织支持
由于FOSS几乎与组织的各个方面的界面接口,因此您的FOSS治理过程应效仿。在大型组织中,这通常意味着您需要浏览组织图表并与各个级别的人进行互动。一旦该过程到位,您就需要说服其中一些相同的人使用它。
确保在足够高的水平上赞助治理过程对开门有很长的路要走。在对FOSS战略看法的组织中,首席技术官(CTO)通常是FOSS战略及其实施的执行赞助商。
同样,将持续使用治理过程的人员应参与其设计,以便以后给他们一种所有权感。这也使他们有机会分享有关什么有效和无法做到的见解。为此,您应该确定组织与FOSS的各种接触点。这些可能包括:
- 采购
- 信息技术(IT)
- 产品开发
- 服务组织
- 合并和收购
- 联盟和伙伴关系
资金
实施开源治理流程将需要一些投资。通常需要资金来支付各种费用,包括:
- 雇用一个或多个人来运行和维护过程。
- 培训将要实际使用该过程的公司内部的各个小组。
- 支付与开发或许可任何可能有助于实施该过程的软件相关的成本。
- 引进偶尔的外部专家或顾问。
FOSS的专业知识,差距和依赖关系
由于您的开源治理流程将作为FOSS专业知识的中心,全公司范围的资源,因此您应该确定此类专业知识以及任何关键差距和依赖性的来源。这可能包括对各种FOSS许可证有深入了解的法律专家,社区专家的练习,这些专家练习了FOSS社区建设的美术,以及培训合作伙伴,这些合作伙伴根据您的需求提供广泛和深入的会议。请注意,很有可能至少有一个或多个专家可能在您的公司之外。
指标和跟踪
著名的心理学家乔治·米勒(George Miller)曾经说过:“机会忽略了,您会偶然地衡量正确的事物。”精心设计的FOSS治理过程将显示几个数据,如果经过跟踪和测量,可以为您的公司的FOSS采用提供一些令人惊讶的见解。
以下是一些可以检测到的模式的示例,以及您可以使用数据的方法:
- 贵公司依赖的顶级开源项目是什么?您与这些社区的关系如何?
- 谁是为开源项目做出最大贡献的开发人员?是否有一个特定的部门倾向于比其他部门采用并促进福克斯的助力更大(或更少)?
- 典型的开源评估需要多长时间?瓶颈在哪里?
- 与项目X和/或许可证Y相互作用的所有产品/服务都是什么?
如您所见,通过计划,您可以确保测量和跟踪对您独特需求和目标很重要的关键数据。
通过将上述列表纳入您的计划中,您将有能力设计和实施量身定制的FOSS治理流程,以满足您公司的需求。
如何发展和维护开源治理过程
一旦您有机会计划开源治理过程的关键方面,就可以准备开发和实施它。
当您开始根据计划设计治理过程时,您可能会围绕一些常见的设计因素面对决策,我们将在下面描述。开发您的FOSS治理过程的一种方法是将这些因素视为必须正确集成以为您的公司创建正确的治理过程的模块。
集中式与分散
这是一个经典的问题,即设计一个中等至高复杂性的过程时面对的问题。虽然选择一个或另一个有很多好处,但您的FOSS治理过程可能会成为两者的混合。对于拥有独立部门或业务部门的大型公司尤其如此。通常,这些部门在其业务的几乎所有方面都具有许多自治权。此外,他们可能每个人都为某些公共区域定义了自己的过程。
在FOSS治理过程的情况下,拥有一个跟踪整个公司的FOSS使用情况和贡献的中央数据商店具有巨大的好处。此外,操作中央审查机构,例如概述的开源审查委员会(OSRB)暴风雨彼得斯关于政策制定的文章增加价值。OSRB除了集中关键任务外,还可以提供额外的检查和余额,这些任务可能会在各个部门进行冗余。
但是,这种集中化也很容易变成瓶颈。
平衡这一点的一种方法是确定真正需要集中而不是可以委派给各个部门的其他过程的最小过程。例如,可能需要公司各地的每个人都使用中央数据库来存储FOSS建议和评论,而各个部门可能会选择比中央OSRB建议的对合规性更严格的要求。
现有与新过程
这是设计FOSS治理过程时出现的另一个常见问题。一所思想流派表明,FOSS应该仅被视为其他任何其他第三方软件,因此,也应将现有的第三方软件流程用于FOSS。另一种方法坚持认为FOSS与第三方软件不同,因此需要创建单独的FOSS治理过程。如果您的FOSS策略主要以使用FOSS降低软件成本为中心,那么前者可能就足够了。如果您以更细微的方式看福斯,那么后者可能是要走的路。
请注意,仅仅因为您已经定义了一个单独的治理过程,这并不意味着您不能重复使用某些现有的工作流。例如,一个使用Bugzilla跟踪其软件缺陷的组织可能会决定使用相同的工具来跟踪FOSS的使用和贡献。
工具和自动化
FOSS治理过程可以从适当应用正确的工具来帮助自动化中受益匪浅。幸运的是,有几种现成的选项。以下是这些选项的简短列表。对其功能,利弊的描述是单独文章的主题。
FOSS选项:
商业选择:
在许多情况下,您可能会发现上述工具的某种组合将为您提供最有帮助的解决方案。同样,虽然可能很容易设计您的过程围绕一个或多个工具,但这样做可能会导致次优的治理过程。这就是为什么您应该定义策略,制定流程,然后选择合适的工具来帮助自动化您的流程。
网络存在