内源(Inner Source)也称为内部开源,内源是把开发开源软件中学到的经验教训应用到公司或组织内部开发软件的实践。公司和组织可以在内部开源的同时开发专有软件。 内源这个词是Tim O'Reilly在2000年提出的。
开源被认为能够交付高质量的软件。此外,开源世界中的开放式协作可以促进协作,甚至是竞争者之间。
除了诸如
Apache软件基金会,
Linux基金会和Eclipse基金会等基金会建立的一些实践之外,内源和开源项目还需要开放式协作、开放式沟通和良好的质量保证等实践。
在推行内源的公司,所有员工都必须可以访问所有需要的开发制品(例如,代码、文档、问题跟踪等)。集中软件构建是实施开放式协作的重要工具。 基于开放式协作的原则(平等的、
精英领导的、自组织的),通常欢迎愿意为内源项目提供帮助的所有贡献者。 对内源项目的贡献通常是根据其为项目带来的价值来进行评估。 公开讨论决策时,开放式沟通也实现了
精英制度。 尽管组织不一定要变成彻底的自组织来适应内源,但是内源允许个人,组织单元和项目团体具有更高程度的自组织。
开放式的沟通可以让内源项目和软件中的所有成员能够公开参与所有的交流互动。 开放式沟通是公开的(在公司内部)、书面的、有存档且完整的。 目的是允许与内源项目有关或感兴趣的任何个人或团体参与沟通。 开放式沟通是会被存档的,软件的详细文档会被收集起来,团队可以回顾当时的讨论和决策。