人机

逆向工程过程的实践

字号+ 作者/录入:3d3d 来源:51CMM 2006-01-29 [在线反馈] 我要评论

本文从过程的角度阐述了NEWPOWER对逆向工程的应用。首先简单考查了逆向工程的特征, 然后介绍了NEWPOWER定义的标准逆向工程过程。

 1 简介 3mp大湾区工业设计网
  1998年, NEWPOWER 启动了逆向工程的一些项目, 要求是把客户的现有源代码转变成设计, 如果需要的话, 进一步转化成产品需求规约。 这恰恰与类似于V模型的标准开发过程模型相逆。这样一来, 客户就可以容易地维护他们的产品(需求, 设计, 源代码,等等), 而不需要想以前那样,每次改动产品都需要直接修改源代码。 3mp大湾区工业设计网
  因此我们需要为新项目的开发定义新的过程。 一个定义良好的一致的过程不仅可以减少过程定义中的错误, 还可以为持续的改进和优化奠定基础。 3mp大湾区工业设计网
  Top Power I 发布之后我们定义了标准的逆向工程过程。 Top Power I 使用的是考究的瀑布模型。定义之后我们开始了另一个逆向工程项目, 也就是Top Power II。 该项目将实施刚刚定义的过程。 3mp大湾区工业设计网
  基准将定义在Top Power I 和Top Power II之间。3mp大湾区工业设计网
 3mp大湾区工业设计网
 2 标准过程模型
3mp大湾区工业设计网
  下面是NEWPOWER 定义的一个典型的标准逆向工程项目的模型。3mp大湾区工业设计网
3mp大湾区工业设计网
  其中ReqB 表示需求汇集和项目策划。 3mp大湾区工业设计网
  各个阶段的定义都相当清楚。 3mp大湾区工业设计网
3mp大湾区工业设计网
  3 Top Power I 过程定义
3mp大湾区工业设计网
  Top Power I 过程的定义过程如果不是荆棘密布就是困难重重。它需要对过程模型做重大改变。这最终导致组织逆向工程过程的产生。 3mp大湾区工业设计网
  与NEWPOWER的主流项目相比, 做为逆向项目的Top Power I 有以下特殊性:3mp大湾区工业设计网
  · 虽然产品需要验证和确认,但是不存在单元测试或集成测试, 也没有系统测试。产品质量很大程度上依赖于人为因素。3mp大湾区工业设计网
  · 需要新的度量来支持项目管理和产品开发,比如说,由于交付的是文档而不是源代码,效率不能简单地用产品的KAELOC总值与全部人力资源的比来衡量。3mp大湾区工业设计网
  · 其它的考虑包括:基于设计的原始资料,需要做多少抽象?如何处理客户对细小格式或风格改进的反馈?这些细节不大可能会具体定义在需求规约里,那么它们是算缺陷呢还是其它? 如果没有相关的参考资料,在项目策划中如何分配阶段性的人力和质量目标?等等。 3mp大湾区工业设计网
  以下是Top Power I SPMP 1.0.0定义的过程模型:3mp大湾区工业设计网
3mp大湾区工业设计网
  其中:3mp大湾区工业设计网
  在需求分析阶段,项目组应该只作出设计的模板(根据顾客需求)作为可交付工件。实际上在这个阶段更多的时间花在了培训上。 3mp大湾区工业设计网
  在文档阶段,建立设计文档。 3mp大湾区工业设计网
  在验证阶段,对验证和确认进行评审和审查。 3mp大湾区工业设计网
  对以上模型的一些问题和考虑:3mp大湾区工业设计网
  · 如果只产生一个模板,不一定要做需求分析。 3mp大湾区工业设计网
  · 对于复杂而庞大的系统,如果没有构架上的最少准备,直接了当的设计恢复如果不是不可能那也会困难重重。只有充分理解了构架,才有可能有效地分配人力和资源。这些准备也减轻了领域培训的压力, 并且加速设计的恢复。3mp大湾区工业设计网
  · 设计的验证不应该放在不同的阶段。在设计恢复过程中要评审和审查进展。一个项目不能等到设计全部完成之后才做验证。3mp大湾区工业设计网
  确认毕竟不等同于软件测试。 3mp大湾区工业设计网
  对标准逆向工程过程定义作出贡献的是那些点子和其它因素。 3mp大湾区工业设计网
 3mp大湾区工业设计网
 4 为Top Power II量身订做的过程模型
3mp大湾区工业设计网
  根据客户的需求和项目特性等,Top Power II 项目组使用了以下逆向工程模型:3mp大湾区工业设计网
3mp大湾区工业设计网
  量身订做的依据:3mp大湾区工业设计网
  · 客户没有要求恢复产品需求,需求恢复阶段在此略去。3mp大湾区工业设计网
  · 客户要求额外的验收评审阶段,以用于评审NEWPOWER提供的设计文档,提供改进意见。修改完成之后,发布产品。 3mp大湾区工业设计网
  与Top Power I不同, Top Power II 的过程模型在需求汇集和项目策划阶段确定之后没有任何变更。这说明了逆向工程过程的适用。 3mp大湾区工业设计网
  Top Power II 与 Top Power I相比,主要的不同在于引进了代码分析阶段。以下是引自REV98关于代码分析阶段的描述: 3mp大湾区工业设计网
  该阶段的目的在于理解和分析整个现有系统及其相关工件,提炼系统原有逻辑抽象。 3mp大湾区工业设计网
3mp大湾区工业设计网
  4.1.1 该阶段的活动:
3mp大湾区工业设计网
  · 预览3mp大湾区工业设计网
  · 了解系统主要环境3mp大湾区工业设计网
  · 把源代码分解成模块3mp大湾区工业设计网
  · 找出模块之间的依赖关系和互用性3mp大湾区工业设计网
  · 理解和分析核心数据结构和关键模块的系统逻辑3mp大湾区工业设计网
  · 了解整个系统以及各个模块的全面功能3mp大湾区工业设计网
  · 评审3mp大湾区工业设计网
  · 更新项目策划3mp大湾区工业设计网
  · 后置工作 3mp大湾区工业设计网
  可以看出,该阶段的任务是对代码中类似于功能,子程序,数据结构等最小单元形成有点“高层次”的理解,理解它们之间的交互关系和依赖关系。3mp大湾区工业设计网
  我们相信,这些活动将有助于减少每个工程人员寻找源代码线索的而付出的多余的努力。然而,要找出成百上千的功能之间的命令流,这依然是个大工作,使用工具能更好地完成这些任务。NEWPOWER 为此推出了Discover, 极大地提高了效率。 3mp大湾区工业设计网
3mp大湾区工业设计网
  5 度量输出
3mp大湾区工业设计网
  5.1 Top Power II 质量度量3mp大湾区工业设计网
  Top Power II 的设计恢复有两项任务:命令流 和 GSM 升级。 3mp大湾区工业设计网
  Top Power II 命令流的质量数据:3mp大湾区工业设计网
3mp大湾区工业设计网

实际估计
人力 (人员周)34.403mp大湾区工业设计网
41.00
周期 (周)16.1415.00
文档大小 (页数)91.00100.00
  生产率3mp大湾区工业设计网
目前3mp大湾区工业设计网
10.58
目标10
基线8.24
  IPF3mp大湾区工业设计网
目前3mp大湾区工业设计网
0.02
目标0.08
基线0.09
  COQ3mp大湾区工业设计网
目前3mp大湾区工业设计网
13.16%
基线7.01%
  Top Power II GSM 升级的质量数据:3mp大湾区工业设计网
实际估计
人力 (人员周)29.0033.00
周期 (周)8.0012.00
文档大小 (页数)183.00175.00
  生产率3mp大湾区工业设计网
目前3mp大湾区工业设计网
25.24
目标17
基线8.24
  IPF3mp大湾区工业设计网
目前3mp大湾区工业设计网
0.03
目标0.08
基线0.09
  COQ3mp大湾区工业设计网
目前3mp大湾区工业设计网
15.36%
基线7.01%
Top Power II 的整体 IPF/IPD 度量 3mp大湾区工业设计网
 基线 目标Top Power II
IPF3mp大湾区工业设计网
0.09 0.10.07
IPD0.05 0.040.02
  阶段完成效率3mp大湾区工业设计网
 基线 Top Power II
需求征集和项目策划3mp大湾区工业设计网
13mp大湾区工业设计网
1.00
代码分析11.00
设计恢复0.420.62
  以上度量中的基线数据是Top Power I的输出。无庸置疑,Top Power II几乎在所有方面都有所改进。 3mp大湾区工业设计网
  注:Top Power I 和 Top Power II的 IPF/IPD 和 PCE 都在诸如通讯开发等其它类型的项目的基线之上,我们把这些变化归结为逆向工程的特征。将来比如说,如果客户改变了需求,这会有所改进。 3mp大湾区工业设计网
3mp大湾区工业设计网
  6 教训和最佳实践
3mp大湾区工业设计网
  · 为了克服在新领域专家意见短缺的困难,Top Power 项目组在设计评审之前安排了许多技术方面的讨论,极大地降低了设计恢复阶段的IPF/IPD 。他们相信这些会议适用于所有的逆向工程项目。另一方面,评审和审查几乎是确认设计的唯一途径,如何提高评审和审查的效率也很重要。3mp大湾区工业设计网
  · 根据工程人员的反馈和度量输出,在逆向工程中,审查,做为一种确认手段并不优于评审。工程人员相信审查非常适用于属是属非之间界线分明的确认,但是,他们的确认界线不分明。在评审中,他们把大部分时间花在修改语法,格式和风格上了。3mp大湾区工业设计网
  · 他们相信对在设计恢复中从事文档工作的中国工程人员来说,英文技巧相当有用,因为客户对文档的正式程度要求很高
  文  /  佚名

转载请注明出处。

转载此文是出于传递更多信息之目的。若有来源标注错误或侵犯了您的合法权益,请作者持权属证明与本网联系,我们将及时更正、删除,谢谢。

相关文章
网友点评