在软件生存周期中,将某种形式表示的软件转换成更高抽象形式表示的软件的活动属于( )。

A、逆向工程
B、代码重构
C、程序结构重构
D、数据结构重构
查看答案
正确答案:

B

答案解析:

解析

答案选B

通常产品设计过程是一个从设计到产品的过程,即设计人员首先在大脑中构思产品的外形、性能和大致的技术参数等,然后在详细设计阶段完成各类数据模型,最终将这个模型转入到研发流程中,完成产品的整个设计研发周期。这就是“正向设计”过程。而逆向工程,又名反向工程(ReverseEngineering-RE),则是一个从产品到设计的过程,就是根据已经存在的产品,反向推出产品设计数据(包括各类设计图或数据模型)的过程。早期的船舶工业中常用的船体放样设计就是逆向工程的很好实例。在软件开发行业,基于某个软件,以反汇编阅读源码的方式去推断其数据结构、体系结构和程序设计信息成为软件逆向工程技术关注的主要对象。软件逆向技术的目的是用来研究和学习先进的技术,特别是当手里没有合适的文档资料,而又很需要实现某个软件的功能的时候。因此很多软件开发组织为了垄断技术,在软件安装之前,要求用户同意不去逆向研究。根据黄柏素、梅宏组织翻译,RogerS.Pressman编著的《软件工程—实践者的研究方法》第4版的陈述:逆向工程抽象层次应该尽可能高,即逆向工程过程应该能够导出过程的设计表示(一种低层的抽象);程序和数据结构信息(稍高一点层次的抽象);数据和控制流模型(一种相对高层的抽象);以及实体—关系模型(一种高层抽象)。随着抽象层次增高,软件工程师获得更有助于理解程序的信息。

软件重构修改源代码和/或数据以使得它适应未来的变化。通常,重构并不修改整体的程序体系结构,它趋向于关注个体模块的设计细节以及定义在模块中的局部数据结构。如果重构扩展到模块边界之外并涉及软件体系结构,则重构变成了正向设计过程。代码重构的目标是生成可提供相同功能的设计,但是该设计比原程序有更高的质量

上一题
你可能感兴趣的试题

关于制定进度计划的工具和技术的描述,不正确的是: () 。

A、总浮动的时间等于本活动的最迟完成时间减去本活动的最早完成时间
B、自由浮动时间等于紧后活动的最早开始时间的最小值减去本活动的最早完成时间
C、资源平滑技术通过缩短项目的关键路径来缩短完工时间
D、关键路径上活动的总浮动时间与自由浮动时间都为0

省市信息产业主管部门负责对( )信息系统集成资质进行审批和管理。

A、一、二级
B、三、四级
C、本行政区域内的一、二级
D、本行政区域内的三、四级

一般情况下,随着项目的逐渐进展,成本和人员投入水平呈现出①的态势,而项目干系人对于项目最终产品的特征和项目最终费用的影响会②,变更和缺陷修改的费用通常会③。①、②和③分别是()

A、①先增后减,②逐渐减小,③逐渐增加
B、①先减后增,②逐渐增加,③逐渐减少
C、①先增后减,②逐渐增加,③逐渐增加
D、①先减后增,②逐渐减少,③逐渐减少

某承建单位准备把机房项目中的消防系统工程分包出去,并准备了详细的设计图纸和各项说明。该项 目工程包括:火灾自动报警、广播、火灾早期报警灭火等。该工程宜采用( )。

A、单价合同
B、成本加酬金合同
C、总价合同
D、委托合同

在进行项目风险定性分析时,可能会涉及到( )

A、建立概率及影响矩阵
B、决策树分析
C、敏感性分析
D、建模和模拟
热门试题 更多>
相关题库更多>
系统集成项目管理工程师
信息安全工程师
信息系统管理工程师
网络工程师
试卷库
试题库