在软件生存周期中,将某种形式表示的软件转换成更高抽象形式表示的软件的活动属于( )。
- A. 逆向工程
- B. 代码重构
- C. 程序结构重构
- D. 数据结构重构
正确答案: B
本题解析:
解析
答案选B
通常产品设计过程是一个从设计到产品的过程,即设计人员首先在大脑中构思产品的外形、性能和大致的 技术参数等,然后在详细设计阶段完成各类数据模型,最终将这个模型转入到研发流程中,完成产品的整 个设计研发周期。这就是“正向设计”过程。 而逆向工程,又名反向工程( Reverse Engineering - RE),则是一个从产品到设计的过程,就是根据已经 存在的产品,反向推出产品设计数据(包括各类设计图或数据模型)的过程。早期的船舶工业中常用的船 体放样设计就是逆向工程的很好实例。 在软件开发行业,基于某个软件,以反汇编阅读源码的方式去推断其数据结构、体系结构和程序设计信息 成为软件逆向工程技术关注的主要对象。软件逆向技术的目的是用来研究和学习先进的技术,特别是当手 里没有合适的文档资料,而又很需要实现某个软件的功能的时候。因此很多软件开发组织为了垄断技术, 在软件安装之前,要求用户同意不去逆向研究。 根据黄柏素、梅宏组织翻译, Roger S.Pressman编著的《软件工程—实践者的研究方法》第 4 版的陈述: 逆向工程抽象层次应该尽可能高,即逆向工程过程应该能够导出过程的设计表示 (一种低层的抽象 );程序 和数据结构信息 (稍高一点层次的抽象 );数据和控制流模型 (一种相对高层的抽象 );以及实体—关系模型 (一 种高层抽象 )。随着抽象层次增高,软件工程师获得更有助于理解程序的信息。
软件重构修改源代码和 /或数据以使得它适应未来的变化。 通常,重构并不修改整体的程序体系结构, 它趋 向于关注个体模块的设计细节以及定义在模块中的局部数据结构。如果重构扩展到模块边界之外并涉及软 件体系结构,则重构变成了正向设计过程。 代码重构的目标是生成可提供相同功能的设计,但是该设计比原程序有更高的质量
包含此试题的试卷
你可能感兴趣的试题
某系统集成企业为做好项目风险管理,给风险定义了 3 个参数: 1、风险严重性:指风险对项目造成的危害程度; 2、风险可能性:指风险发生的几率; 3、风险系数:是风险严重性和风险可能性的乘积。 其中,对项目进度延误、工作量偏差的风险严重性等级和风险可行性等级如下表所示:假定该企业将风险 系数大于等于 6 的情况定义为红灯状态,需要优先处理,则下列()的情况属于红灯状态。
- A. 进度延误 15%,工作量偏差 15%,发生几率为 0.5
- B. 进度延误 15%,工作量偏差 35%,发生几率为 0.2
- C. 进度延误 25%,工作量偏差 15%,发生几率为 0.4
- D. 进度延误 15%,工作量偏差 25%,发生几率为 0.
有关风险识别,以下说法不正确的是()
- A. 项目组全体成员参与风险识别
- B. 识别范围覆盖了项目的整个生命周期
- C. 风险管理计划是风险识别的输出
- D. 识别过程中综合运用了多种风险识别的技术和工具
某公司对本单位负责的信息系统集成项目实施失败原因进行分析后,发现约 80%的原因都是用户 需求不明确、授权不清晰、以及采用了不适宜的技术,而其他十几种原因造成的失败较少。根据这些分析 结果,该公司所采用项目质量控制的方法是()
- A. 散点图法
- B. 直方图法
- C. 帕累托法
- D. 控制图法