Home > Community > Developers > Development_model

Cooker:合作式开发模型

合作式开发模型

Mandriva 的产品使用合作式开发模型。这对于普通的 Linux 用户意味着什么呢?Mandriva Linux 的每个新版本都是由 Mandriva 开发者团队以及 Linux 社区中的活跃力量所共同开发的。这种过程比其它任何开发方式都能够改进操作系统的质量。

在传统软件产业(或称封闭开发)中,开发主要是关起门来由少数几个团队成员完成的。将这种模式与开放源代码的合作式模型相比,后者可以将全球开发者和用户的意见汇总在一起,以期从技术和使用体验上都达到更高的层次。

Mandriva 始终信奉开放源代码理念,并将其通过“Cooker”的方式进一步发扬光大。Cooker 是不断改进的 Mandriva Linux 发行版,该版本每时每刻都会涌入 Linux 世界中的更新软件以及 Mandriva 的自有开发成果。Cooker 面向公众完全开放,而无数的志愿者也通过不同的方式给出了他们的意见和建议。实际上,我们所知道的 Mandriva Linux 发行版,实际上是 Cooker 在特定时间点的一次冻结,以及随后进行的一系列测试和调试。由于完全来自于 Cooker,Mandriva Linux 完全是按照用户的需要前进的,因为社区的意见显著影响了其开发过程。

下面为您简要介绍一下 Mandriva 的开发流程。

混合

新一轮开发循环的第一阶段是每个人畅所欲言最佳的时候。在这一早期阶段,大家会对现有应用程序的改进、调试意见和新软件包纳入等问题深入地交换意见。

您可以将此过程想象为厨房里忙碌的景象。来自世界各地的名厨们带着各自的拿手好菜摩拳擦掌,准备大干一番。而作为食客的您,只需按照您的口味细细品尝各种美味佳肴。当然,如果您不讲究膳食理论,随意将不同食品混合在一起品尝,有可能会吃坏肚子的哟。

项目进行的过程,实际上就是将软件包添加到现有的软件基础中,然后再通过测试和纠正发现的错误和/或冲突来改进软件。每个新引进的软件包有时会需要现有软件对其进行适应或修改。比如,引入新的 Linux 内核(这是整个操作系统的核心)通常会使得软件工作的方式发生变化,所以需要进行充分测试。

参与者会下载 Cooker,并将其安装到自己的计算机上,然后再报告结果。开发者和贡献者会阅读错误报告并为纠正问题提供可能的解决方案;如果应用程序自身需要纠错,贡献者可以修改相应的应用程序并将修改提交上来;如果贡献者想要在发行版中添加特定的应用程序,可以将该应用程序打包并上传到独立的服务器上。在决定是否将该软件纳入 Cooker 之前,Mandriva 的开发者会检查贡献者提交的内容并确定修改的内容是否稳定。

冻结

在一段时间紧张的开发之后,开发过程即将进入“特性冻结”阶段。在该阶段中,Cooker 将只接受错误修正,而不再进行软件版本更新。开发团队不仅检查已经证实的错误是否修正,还将跟踪并测试各种常见问题。这一阶段的任务是稳定性 - Cooker 应该是非常稳定的,这样才能临时冻结后制作一个“beta”测试版本,以供进行更广范围的测试。通常情况下会释放 ISO 映像,以便让大家下载刻录并将其安装到自己的系统上。Beta 测试版允许我们从用户以及更大的 GNU/Linux 社区中收集反馈。在一个完整的版本循环中,可能有两到三个 beta 测试版。

“版本候选”(简称RC)是经过充分测试和调试的版本。如果该版本的质量已经高到正式班的程度了,那么该版本将被重命名为正式版并向全世界发布。

Cooker 从不会停止。即使是向公众发布 Mandriva Linux 新版本的当天,开发循环也在继续为未来的版本进行着准备。不管是在一周的哪一天,你都会看到 Cooker 的参与者都在努力工作,以确保您能够使用到最新最可靠的 Linux 操作系统。

我们希望这个对 Cooker 和开放源代码开发的介绍能够引起您加入其中的兴趣。如果您想要帮助的话,您无需是程序员或者内核专家——beta 测试者是这一过程中重要的一部分,而我们总是需要测试不同系统配置的。 此页面中列出了关于如何订阅 Cooker 邮件列表的细节。