Bug修复

程序出现bug时会导致程序出现与开发者设计初衷相违背的现象出现。我们可以发现并修复一部分bug,但许多的bug是先通过我们的客户报修之后再进行修复。

在哪里可以提交bug?

我们主要通过两个渠道从客户处获取bug信息

  • 西斯卡专业建站软件社区论坛的bug追踪工具这是bug信息的主要来源。大多数的bug描述和讨论均为英语,尽管如此,您也可能偶尔会看到俄语的bug描述和讨论。

    俄语的bug信息报告通常与俄语版西斯卡软件的某些特定功能相关(如俄国支付网关和支付方式等问题)。一旦此类问题获得解决,我们通常会提供对应的英文描述来解释该问题。如果该问题具有普遍性,即不限于俄语版本的软件,我们将创建一个相同的英文版的bug信息报告。
  • 工单系统的技术支持
    如果您联系我们的技术支持寻求帮助,且您报告的问题最终被确认为由bug导致,您无需进行任何其它操作。我们的技术支持会将bug信息反馈给开发人并告知您解决方法。

bug修复耗时多久?

一旦我们的技术专家复现了客户报修的bug,他们会将bug状态改为已确认。确认之后,bug解决的时间长短将因其复杂程度而存在差异:

  • 小bug,拼写错误及细微调整耗时 45个连续自然日
  • 重大bug耗时3个工作日

在上述时间段内,我们将修复bug并告知您bug被修复的软件版本将于何时发布。如有必要,我们可能会告知您如何修复您的当前版本中的bug。我们一般会提供给您一个简单的分步操作指南或者 DIFF 文件.

如何定义bug的严重性?

我们的开发人员和技术专家负责定义bug的严重性。下面是部分标准:

  • 是否可以在净安装的(即没有进行定制修改和没有添加第三方插件的)西斯卡软件上复现该bug?净安装示例请参考链接 http://demo.cs-cart.com/http://demo.mv.cs-cart.com/
  • 该bug是否经常出现?是否只在特定设置下出现?如果是在特定设置下出现,这些设置是否是默认设置?
  • 该bug是否与核心功能相关?是否与特定的插件相关?如果是与特定插件相关,这些插件是否是默认安装的插件?
  • 该bug是否完全影响了功能的实现?是否存在其它变通方式可以实现同样的功能?
  • 该bug是否是由软件本身的脆弱性导致?可以轻易解决吗?造成的损失有多大?
  • 该bug是否在之前已经发布的某个西斯卡专业建站软件或电商平台搭建软件版本中被修复过?

按照惯例,如果某个问题导致站点无法访问,客户无法下单或进行其它操作,该问题将被定义为 重大bug;许多用户都会遇到这种问题,而且这种问题目前没有临时解决方案。

为何要耗时如此之久来修复bug?

一旦一个bug被确认,我们将在 3个工作日内修复重大bug,在 45 个连续自然日内 修复小bug。下面是我们确定该修复时间长短的依据:

西斯卡软件开发分为单独的周期(即sprint)。每个周期历时2周。开发人员会在每个周期开始的周一分配到他在该周期内需要修复的所有bug任务。新出现的bug任务通常会在该周期结束之后再分配给开发人员。

这种开发模式保证了开发人员可以专注于当前bug的修复,而不至于因为中途插入的新任务而分心。 对于项目管理人员来说,在这种模式下,他们管理产品开发将更加容易,因为在每一个周期结束时,他们可以知道这个周期内任务完成的数量和进度。这种开发模式是敏捷开发Scrum的一部分。

我们假设,在一个周期中第一周的周二确认了一个新的bug,这时候开发人员已经被分配了他们在该周期内需要完成的任务。在这种情况下,该bug将会在13天之后才被分配给开发人员,之后开发人员需要2周的时间来修复这个bug。

因此,修复一个bug耗时达6周(约30个工作日),因为在正常修复bug的时间基础上我们还额外增加了2周以防止意外情况的出现, 比如我们需要与第三方机构沟通或者开发人员无法在约定的时间期限内修复bug。

bug是否总是会及时修复?

在多数情况下,我们只需要对代码进行小范围修改就可以解决小bug。但这种修改可能会影响软件的向后兼容性以及店铺的功能,以至于其它店主在升级自己购买的软件至新版本时,店铺会遇到问题。

因此对于这种问题,我们都会单独处理。多数情况下,我们会指导您修复您的店铺存在的问题,而问题所涉及到的代码修改则只会在主要的软件版本发布时进行(例如:从CS-Cart 4.x.x升级到CS-Cart 5的时候)。