本文件概述了一系列高级目标,并为每个目标列出了支持实现该目标的若干目标。目标是描述我们努力方向的目的陈述。它们可以相当笼统,不需要严格可衡量或有形。另一方面,目标是支持实现我们目标的具体任务,应可衡量且有形。

我们所有的目标和目标都是为了支持我们宣称的使命

“提供一个灵活的数字出版和协作平台”

 

索引

细节

目标 1:平稳且一致地发布新 Joomla 版本

我们的目标是以最便捷和无忧无虑的方式发布 Joomla CMS 和 Joomla 框架的新版本。

目标 1.1:引入 CMS 发布团队

准备新的 Joomla 版本是一项复杂的任务,需要大量的努力,到目前为止,这些努力往往由一个人承担。为了分散工作量,并确保不止一个人能够完成整个发布周期(提高“公交因子”),PLT 将为每个 CMS 主要版本或次要版本建立一个 CMS 发布团队,以现有发布领导角色为中心。

目标 1.2:缩短从拉取请求到代码合并的时间

通常会有大量待处理的拉取请求,这些请求已经提交但尚未合并,因为它们正在等待测试人员。我们需要减少这些积压,并建立一个可持续的流程,将从拉取请求到代码合并的时间降至最低。

目标 2:鼓励开发具有较高接受概率的新功能

我们当前开发策略的批评之一是,潜在新功能的开发人员不愿投入大量时间和精力来设计、编码、测试和记录新功能,因为他们没有得到任何关于该功能最终会被接受到核心发行版中的保证。为了解决这个问题,我们希望建立一套更正式的程序,以确保在从最初提案到最终合并的功能生命周期中,新功能将得到适当的沟通、同行评审和评估。遵循这些程序的新功能要么在早期阶段被淘汰,要么得到精心呵护,最终获得成功的概率很高。

目标 2.1:引入新的功能生命周期管理流程

从需求征集 (RFC) 开始,到生产工作组的成立,再到最终接受拉取请求,新功能将通过新的功能生命周期管理流程从摇篮到坟墓得到呵护。

目标 2.2:重振生产工作组

生产工作组将是新的功能生命周期管理流程的核心要素。与 PLT 建立更紧密的关系以及定期报告计划是确保新功能顺利纳入新版本机制的一部分。生产工作组的另一项功能是确保新功能或更改的功能具有良好的测试覆盖率和完整的文档。如果我们转向发行模型,每个软件包维护者团队实际上也会成为此结构中的生产工作组。

为了加强生产工作组与 PLT 之间的沟通,每个 PWG 将在之前的报告期内生成一份简短但定期的活动报告。这些报告将在下次 PLT 内部会议上进行审查,然后进行整合和发布。报告流程也将有助于提高生产工作组的知名度,而这反过来又将有助于招聘。注意:报告现在可以在志愿者门户网站上发布。

目标 3:提高产品质量

我们的目标是提高每个新版本的质量,并提高每个新版本附带文档的质量和数量。每个新功能都会引入新的 bug,因此我们需要在每个版本发布之前增加进行的测试量。这需要在发布公告之前加强社区参与。

目标 3.1:增加全球 bug 修复活动的次数

近年来,我们一直在完善社区 bug 修复活动的理念,很明显,这些活动越来越受欢迎,是让更多人积极参与项目的一大好方法。在 2015 年,我们希望进一步增加全球各种 bug 修复活动的次数。

目标 3.2:创造更多冲刺机会

在 2014 年,PLT 在全球举办了四次面对面代码冲刺,并使用这种模式在实现特定预定义目标方面取得了相当大的成功。在这些活动的成功基础上,PLT 旨在扩大 2015 年可用的冲刺机会数量,但要受到预算限制。PLT 将发布一份冲刺政策文件,其中概述了提出和组织冲刺的程序,包括预算预期、结果记录和审查流程。

更多信息:https://docs.joomla.org/Code_sprints

目标 3.3:扩大 CMS 中测试的范围和覆盖率

虽然框架具有良好的测试覆盖率,但 CMS 落后于它,需要赶上。在 2014 年,我们进行了一次测试代码冲刺,旨在改进我们的测试套件以及如何编写良好测试的知识。我们在 2015 年的目标是将这些知识应用于扩大、覆盖和提高我们的测试套件的质量。我们也可能会进行更多针对性的测试冲刺。

目标 3.4:提高和扩展文档范围和覆盖率

所有开源项目的文档都是一个弱点。在 2014 年取得了很大成就,我们希望在 2015 年继续进行逐步改进。

目标 3.5:改进和扩展编码标准

在 2014 年,我们开始对所有提交到 CMS 的代码强制实施编码标准(框架已经强制实施编码标准),并且我们举办了代码风格冲刺,使 CMS 代码库符合标准。对于 2015 年,我们需要解决编码标准规则中的一些差异,扩展编码标准以涵盖更多文件类型(例如,布局目前被排除在外),并更新标准以支持 Code Sniffer 2.0。

目标 3.6:强制执行提交前文档合规性

在框架中已经实现了最小程度的文档覆盖范围,而不会阻碍贡献,我们希望在 CMS 中也实现同样的成功。这更困难,因为我们需要考虑针对多个受众的用户文档以及开发人员文档。为了实现这一点,需要采取一定程度的强制措施,因此我们将强制执行未来新功能文档的最低标准。这其中大部分将在生产工作组中进行处理。

目标 3.7:增加预发布测试

尽管 Bug 小组做出了英勇的工作,但很明显,我们需要继续增加在不同配置、安装了不同的第三方扩展以及在不同平台上测试代码预发布版本的人数。

目标 4:改进 CMS 的国际化和本地化

国际化和本地化支持是 Joomla CMS 的一大优势,我们将继续在这方面发展和加强支持。

目标 4.1:改进翻译团队流程

与翻译团队达成一致,投入资源改进流程和工具,以自动化创建翻译包并将其上传到 Joomla 语言服务器 (http://update.joomla.org/language/translationlist.xml

另请参阅:https://github.com/joomla-projects/translate-joomla

目标 4.2:开发和发布 com_localise

已经做了大量工作来开发 com_localise 组件,以帮助翻译团队管理翻译包的创建和维护。这项工作将在明年继续进行,目标是在 2015 年发布一个完全可用的产品。

目标 4.3:改进多语言网站的用户界面

构建和维护多语言网站可能很困难,因为必须按照特定顺序执行重要步骤。我们将鼓励改进用户界面,使其更容易设置和维护多语言网站。

目标 5:开始规划 CMS 的下一个主要版本

目前尚不清楚 CMS 的下一个主要版本将是什么样子。在 2015 年,我们将尝试阐明我们对下一个主要版本甚至更远的版本的愿景。

目标 5.1:定义和记录下一个主要版本的愿景

将进行协作讨论,以定义 CMS 下一个主要版本的目標和目标。

目标 6:增加 Joomla 框架的采用率

这是我们 2013 年采用的项目整体三年愿景声明的一部分。对于 2015 年,PLT 包含以下目标来支持这一愿景。

目标 6.1:参加 2015 年 Google 暑期代码编程

以前参与 GSoC 项目非常成功,因此在核心发行版中添加了许多重要贡献。我们非常希望在 2015 年继续取得成功。

目标 6.2:增加出席和演讲次数

在 2015 年,PLT 希望继续增加我们社区中的人数(不仅仅是 PLT 成员),在非 Joomla 技术活动中进行正式演讲,并分享 Joomla 框架的优势和用途。我们还想增加参加非 Joomla 活动的人数,同时继续支持不断增长的 Joomla 活动列表。

目标 6.3:更多示例代码和最佳实践

为了使使用真实世界的框架应用程序更容易上手并取得成功,我们需要提供更多示例代码和最佳实践示例。

目标 6.4:继续推广框架

虽然口碑是增加框架在各种情况下采用率的非常有效的方式,但我们还需要通过全面的营销来支持它,如果我们要显着提高采用率。

目标 6.5:审查 CLA 工作流程并在必要时更新

CLA = 贡献者许可协议。如果需要,请在 CLA 工作流程中包含文档。确保 CLA 工作流程不会阻碍贡献者。考虑使用 https://www.clahub.com/ 等工具来自动执行签署 CLA 的过程。

目标 7:增加 Joomla CMS 的采用率

这是我们 2013 年采用的项目整体三年愿景声明的一部分。对于 2015 年,PLT 包含以下目标来支持这一愿景。

目标 7.1:参加 2015 年 Google 暑期代码编程

以前参与 GSoC 项目非常成功,因此在核心发行版中添加了许多重要贡献。我们非常希望在 2015 年继续取得成功。

目标 7.2:增加出席和演讲次数

在 2015 年,PLT 希望继续增加我们社区中的人数(不仅仅是 PLT 成员),在非 Joomla 技术活动中进行正式演讲,并分享 Joomla CMS 的优势和用途。我们还想增加参加非 Joomla 活动的人数,同时继续支持不断增长的 Joomla 活动列表。

目标 7.3:更多示例代码和最佳实践

展示 API 的正确使用方式。例如,正确使用 JHtml。

目标 7.4:继续推广 Joomla CMS

虽然口碑是增加 Joomla 在各种情况下采用率的非常有效的方式,但我们还需要通过全面的营销来支持它,如果我们要显着提高采用率。

目标 7.5:审查 CLA 工作流程并在必要时更新

CLA = 贡献者许可协议。如果需要,请在 CLA 工作流程中包含文档。确保 CLA 工作流程不会阻碍贡献者。考虑使用 https://www.clahub.com/ 等工具来自动执行签署 CLA 的过程。

目标 8:更好地了解我们的用户

为了对我们产品的未来发展做出明智的决策,我们需要了解用户的需求,为此,我们需要收集有关用户相关的的信息。

目标 8.1:收集匿名使用信息

对于 3.x 分支,增强由 Don Gilbert 启动的统计插件,并将其合并到核心代码中,并在安装后显示消息,允许用户启用该插件。由于第三方安装应用程序,它不能在安装程序中成为选项,也不能由于法律和隐私问题而成为选择退出插件。同时,部署服务器来收集和显示数据。服务器需要经过强化,以使欺骗虚假数据变得极其困难。

插件代码:https://github.com/dongilbert/jstats-plugin

服务器代码:https://github.com/dongilbert/jstats-server

目标 8.2:收集更详细的下载信息

根据协议,在 2014 年,我们将包含一个简单的表格,该表格将在下载过程的一部分中显示,以收集有关用户的基本匿名信息。

目标 8.3:从 GitHub 收集更多信息

从 Github 收集更多有关开发人员交互的信息。

目标 8.4:对相关主题进行用户调查

通过对用户进行有关与 CMS 持续开发相关的主题的调查,收集更多用户信息。

目标 9:增加前端人员使用 Joomla

众所周知,前端人员在 Joomla 中遇到了一些问题,这些问题已经存在了一段时间。我们需要为他们提供他们以最佳方式完成工作的工具。

目标 9.1:发布 Joomla 3.5,其中包含对前端开发人员的改进

专注于特定前端领域的发行版,例如

  • 对所有内容使用相同的覆盖方法。
  • 将 Joomla 与 Mootools 和 Bootstrap 2 解耦。
  • 改进前端调试工具。
  • 评估现代构建系统。
  • 无障碍改进。

目标 10:提高 PLT 的透明度

向社区报告我们正在做的事情是领导团队的重要任务,对于依赖志愿者工作的开源项目来说更是如此。

目标 10.1:开放生产工作组列表

我们计划开放 PWG 列表,以允许社区成员更多地参与讨论过程。

目标 10.2:提高生产过程的多样性。

我们希望不仅仅是领导成员,而是希望更多人参与进来。

目标 11:为所有人创建安全的环境,让他们为项目做出贡献

为 Joomla! 代码库和 Joomla 做出贡献应该是一件人们可以毫无恐惧地做的事情。所有贡献都有价值,我们鼓励人们说出自己的想法并分享想法。