2009-01-13 87 views
0

我们正在努力使所有项目的Bugzilla应用程序标准化。默认安装将错误分组为产品其中有组件版本您对软件产品中“组件”的定义是什么?

我们团结在我们产品版本的定义,但仍有约何谓组件一些混乱/讨论/争论。

如何定义组件只要涉及到项目中的错误分类?

回答

4

为了进行错误跟踪,我将使用Component来表示不同开发人员倾向于处理的高级别区域。对我来说,组件[在错误跟踪] ==关注区域

例如,对于一个虚构的EventPlanner应用程序,我会列出我的组件:

  • 日历
  • 用户界面
  • 印刷

注意,这可能会有所不同比我作为一个开发人员通常会考虑一个soft ware零件。例如,我的EventPlanner应用程序可能使用了Calendar API,但“用户界面”和“打印”本身不是软件组件。

1

我将定义组件类似于引用像Visual Studio中的项目,可能是类库,控制台应用程序,Windows应用程序或网站/ Web应用程序的代码分支。

0

任何属于“帮手”对象的东西,可以做一些小功能来支持应用程序的更大功能,而可以在其他产品中重复使用。

例如,EmailSender类,或ErrorLogger等

+0

我认为,通过将错误归咎于负责的个人类,您将很难分类错误。实际上,捕捉错误的人几乎不知道底层的类结构,并且不知道将哪个“组件”分组到错误。 – 2009-01-13 18:23:25

0

不管它是你最感兴趣的是你的产品分解成的bug跟踪的目的。根据一些不是特定于错误跟踪问题的概念,区分对您有用比根据“正确”更重要。

对我而言,您可以在不破坏其他零件的情况下更改实现的任何代码部分都可以作为组件使用。你可以明确地指出并说,“这个错误是,以及其他地方。”

如果您的产品是巨型意大利面条码球,您可能无法从组件中获益。如果你已经很好地分离了,并且你有一个非常大的项目,那么你可能会有数百个可能被视为“组件”的东西,并且你可能不得不在语义上对它们进行分组,以防止区别比它更麻烦价值。

编辑:在回复对另一个答案的评论时,如果提交错误的人对提交文件有必要的问题了解,则此模型效果最佳。我们总是审查(分类)报告的错误并自行归档。如果您将组件选择留给用户,这个想法对您而言不会奏效。

0

从大学伯克利分校的A·理查德·牛顿博士谁教一个叫课程“基于组件的SoftwareState的最 - 艺术与教训”定义的软件组件作为

软件组件一个 的单位合约 指定接口和显式 仅上下文相关性。软件 组件可以独立部署 和第三方

我不认为有一个更好的定义是受到 组成。所以这里的错误可能是在组件级别或界面级别,即组合级别。

2

组件是产品的细分,它提供产品功能的子集。

例如,如果堆栈溢出是这里的产品有一些潜在的组件:

  • 问题
  • 标签
  • 徽章
  • 概况

胶合逻辑的位应该将这些组件组合在一起以形成项目。