0 系统愿景:
在不干扰研发人员工作的情况下收集软件研发相关的数据,为管理者提供量化决策管理的指标
1 为什么要进行数据抽取
1) 数据是非集成的、不规范(td有自定义字段)
2) 处理时会对生产系统造成性能影响(td服务器端性能调优做得不好)
3) 后台存放用的数据库类型不同
2 数据抽取的方法(都涉及到抽取周期的问题)
1) 全部抽取
2) (增量)抽取变化部分
3) 不抽取(已经被问题1否决)
和张红莲的讨论结果是,半年一次完整抓取,期间每个月或者每个周进行一次增量抓取
3 数据抽取的性能问题
1) 2008-02-20 已经抽取了在用的12个项目的完整数据,共26057条缺陷/变更记录 ,174168 条变化历史记录。
2) 上述数据积累起来约50M
3) 通过Td Api抓取,调优过仍需20分钟左右
4)暂时还有个技术难题,bug的文本描述由于超长,会导致抽取中断,所以暂时先不抽bug文本描述了。(但这个问题迟早要解决)
4 数据抽取后的过程:数据抽取成功只是创建需求变更分析模型的技术基础,后续的工作包括
1)建立主题域
2)数据的集成处理
3)建立度量模型
4)出统计分析报告
这个过程是一个迭代、演进的过程,如同数据仓库之父所说的,数据仓库的研发过程跟平常软件研发过程不一样,在没有分析数据之前,
很少有人能够提出明确的需求。
5 PPA 系统的架构图
1)集成TD
2)集成Harvest
3)集成Subversion
4)集成Excel(等Office工具)
5)提供Web浏览
6)集成Mail Server
6 PPA 系统的研发过程
测试驱动(用户需要-特性-用户故事-检查点-设计-编码-Release)的敏捷研发过程