cloudtopo 发表于 2011-04-15 18:19

Topo代码管理之统计分析简介

本帖最后由 cloudtopo 于 2011-04-15 18:53 编辑

Topo系统给企业软件团队提供了很多非常有用的代码管理功能,借助于这些功能,软件团队可以改善他们的工作效率,Topo系统的代码管理包括:代码深度查看,代码统计分析,代码在线检视和自动构建四个主要功能。本文给大家介绍一下代码统计功能。
一:代码统计入口
在Topo系统的代码模块中,系统允许对任意的代码库的任意目录启动代码统计分析,并且系统自动保存所有统计历史。
当然,Topo系统也对统计功能的权限设计做了周密考虑,只有项目经理可以启动代码统计以及维护已有的代码统计结果,项目成员只能查看统计结果。
http://www.cloudtopo.com/images/topo_code_stat/code_stat_enterpoint.png
点击从上图中的右上角的功能导航栏“统计分析”,我们可以查看到历次统计结果,从最底部的“启动代码统计”,我们可以随时对当前查看的目录启动代码统计分析。


二:统计参数配置
在选中统计目录后,点击“启动代码统计”,会进入统计参数配置界面,如下图所示:
http://www.cloudtopo.com/images/topo_code_stat/code_stat_trunk_config.png


我们可以给本次统计起一个名称,当然系统会自动根据当前统计的目录名称作为缺省值。另外,统计时还可以设置本次统计需要排除哪些文件,例如,sql文件不想被统计,那么只需要在统计文件例外中输入“*.sql”即可,系统允许你排除任意目录下的任意文件名的自由匹配。系统缺省为空表示统计所有支持统计的文件。
配置好后,点击“确定”即可启动统计。

三:统计中的状态
下图我们可以看到统计结果显示界面,上面操作中的“/trunk”统计处于正在统计中的状态,一般来说,统计耗时与指定的库目录中文件的多少以及这些文件的变更次数相关,因此如果统计一个较大并且变化历史较多的代码库目录,耗时会比较长些。
http://www.cloudtopo.com/images/topo_code_stat/code_stat_trunk_processing.png

对于耗时比较长的统计,用户大可在启动统计后离开该界面,然后过一段时间再回来检查统计是否完成,离开该界面并不会中断统计过程。当然,如果想立即看到统计结果,你也不用总是点击“刷新”按钮,系统为例贴心的提供了“打开自动刷新”的这个功能,这样你就可以随时看到统计是否完成了。


四:统计结果的维护
下图中给我们展示了对“/trunk”统计完成后的情况,所有的统计结果均被系统永久保存,这样项目成员可以随时看到以前的代码统计结果。
当统计结果较多时,系统自动分页查询这些结果,并且提供了排序和统计路径过滤查找等功能,让你很容易找到需要查看的统计结果。
http://www.cloudtopo.com/images/topo_code_stat/code_stat_trunk_finished.png


对以前的统计结果,项目经理可以做如下两个操作:
1:再次启动统计。
每次统计总是从最新版本的代码开始统计,并且统计完成后会自动记录当前统计结果的最新版本号。再次启动统计时,系统自动记录了上次的统计参数,当然,这时项目经理还可以在重新启动统计前再次调整这些参数。
2:删除统计结果
在Topo系统中,统计结果在服务器上保存为一个独立的文件目录,随着统计次数的增多,统计结果占用的磁盘空间也会增多,如果想清理一些硬盘空间,那么项目经理还可以删除以前不再需要的统计。

五:统计结果查看
经过上面的几次简单点击,我们就可以看到代码统计分析结果了,作为例子,我们对GoogleCode中开源项目mpmath的代码库进行了一次统计。点击上表中标题栏中的“libmp”,即可看到下面的统计分析结果:

1:代码总行数随时间的变化情况:
http://www.cloudtopo.com/images/topo_code_stat/code_stat_result_lineofcode.png

上图中可以看到该代码目录每个月的代码增长情况。这个统计有利于我们掌握开发进展情况。


2:代码变动剧烈程度
代码总行数与代码变动情况对比,这个图可以看出代码的变化剧烈程度,从而判断出代码的稳定度。
http://www.cloudtopo.com/images/topo_code_stat/code_stat_result_churnlevel.png

3:开发者贡献情况:


每个开发人员的代码贡献情况,以及他们最近1年的代码活动情况。
http://www.cloudtopo.com/images/topo_code_stat/code_stat_result_developers.png

4:开发者代码提交情况图


上面这个是以图形化的方式展现每个开发者最近1年的代码活动情况,显然红点也多代表该开发者代码活动也频繁。
http://www.cloudtopo.com/images/topo_code_stat/code_stat_result_commitactivity.png

5:代码变化总行数情况

http://www.cloudtopo.com/images/topo_code_stat/code_stat_result_contributedlines.png

这个结果与前面的代码总行数不同,是指当前统计的代码目录的代码历次变化行数累计。举个例子:如果一个文件最先有100行代码,第一次删除了20行代码,第二次增加了30代码,这时最终的代码总行数为100-20+30=110行,但是代码变化总行数为100+20+30=150行。


6:代码提交周统计情况:
http://www.cloudtopo.com/images/topo_code_stat/code_stat_result_activitybyhourofweek.png


这个图可以看到你的团队经常在一周的那些天提交代码比较多。

7:其他统计内容:
诸如按照文件目录进行统计,按照某个人进行统计等功能就不再这里介绍了, 对这些功能感兴趣的话,去申请试用Topo吧。

更多信息,请访问项目管理资料库。
页: [1]
查看完整版本: Topo代码管理之统计分析简介