现在的位置: 首页 > 综合 > 正文

企业持续集成成熟度模型ECIMM (5) —-报告

2013年10月09日 ⁄ 综合 ⁄ 共 1512字 ⁄ 字号 评论关闭

3.4 报告

长久以来持续集成工具就致力于报告最近的构建状态,报告也是企业持续集成中的一个被广泛关注的关键元素。在企业持续集成中,报告覆盖了组织中相关软件的质量和内容信息,同时也提供了对企业持续集成过程的度量。

 

一个团队没有报告就相当于“瞎子”。如果没有人可以看到测试结果,测试就是无用的;同样的,没有进行抽取和信息整合的大量数据使用起来是非常困难的,也是一样无用的。成熟的团队则通过不断提升报告的可视化程度来获得更多、更有用的信息。

 

在构建生命周期中使用到的许多工具都会产生报告,一个入门等级的团队通常基于工具生成的、供个别人阅读的报告来采取行动。在这个等级,如果团队中的其他人需要基于从源代码控制、测试工具、源码分析、缺陷管理或其他工具产生的信息来采取行动时,必须同报告负责人进行接触然后才能获得相关信息。

 

当团队提升到初级等级时,每个小组(开发、测试、发布)等都可以公布相关的信息。构建服务器可能提供关于代码改动、源代码分析、单元测试和编译错误的信息,测试团队会提供最近的自动化测试和手工测试报告,发布工程师会监控生产环境构建的时长、缺陷记录以及其他和发布速度相关的信息。每个小组基本都是独立工作,跨领域的信息传递都是依靠手工进行。虽然许多公司有不同水平的展现能力,但这个级别是业界的平均水平。

 

处于中级等级的团队会有两个大的变化。第一,团队的跨领域信息已经可以被互相访问,如测试人员可以从开发人员那里得知上个QA版本至今更改了哪些文件,或者开发人员测试的结果等;开发人员可以知道QA正在测试的内容以及测试的结果。每个参与构建生命周期上的人都可以获得对他们有用的最新报告的总结信息。更高的信息透明化,使得关于基础数据的沟通成本明显减少,从而将更多的精力放在基于报告中相关信息的举措上。

 

第二,有了历史报告。组织不仅有关于最近活动的信息,而且有过去的报告,这样就可以检索以前的发布信息同当前的发布进行对比。团队不仅知道最近的构建有95%的测试通过率,也知道新增了多少的新测试,哪些测试已经删除,以前的构建通过了多少个测试,以及95%的通过率同以前相比是更好了还是更糟了?团队应该更高兴还是要迅速采取行动解决问题?

 

一个高级等级团队不仅获得历史报告信息而且可以进行趋势分析。中级等级团队仅对每个测试失败进行记录,而高级等级团队则可以通过报告找到最常失败的测试,进一步的,他们还可以发现当哪些文件更改后,会使得单元测试失败以及测试小组运行的功能测试失败。通过薄弱环节的识别,可以帮助团队决定哪些代码需要进行附加测试或者进行重构。在专门的报告中,从不同领域获得的历史数据会被进行汇总、交叉引用和抽取,而且高等级团队能够实实在在的进行阅读并采取对应的措施。生成这些具有可实施性跨领域的报告是每个企业持续集成系统的目标。

当一个团队从初级向高级成长时,在上下文中进行当前的反馈时,会用相关的历史数据进行补充反馈。逻辑上的下一步是资深等级,它是针对未来的报告。一个资深等级的团队,会有大量的面向客户软件发布的相关数据,这使得产品部署后的缺陷报告和技术支持都可以被检索到。通过这些信息,我们可以生成关于发布所期望的支持工作量的预测报告。团队能够通过以往发布和当前发布的数据对比,估算出交付第一周后客户缺陷的数量。通过建立模型,他们能够问出比简单的“我们的特性都完成了吗?”更有趣的问题。

 

原文:www.urbancode.com    Enterprise Continuous Integration Maturity Model(ECIMM)

翻译:OscarYang(原始发表于http://hi.baidu.com/cmmi/),转载请注明

 

 

抱歉!评论已关闭.