MIP.watch('count', function (newVal, oldVal) { fetch('http://www.chazidian.com/kaoshi/ajaxapi/?action=guanzhu&id=26037&type=2') .then(function (res) { var follows2 = MIP.getData('follows') if(follows2==1){ MIP.setData({ follows:2, title:'收藏' }) } if(follows2==2){ console.log(2) MIP.setData({ follows:1, title:'已收藏' }) } }) .catch(function (err) { console.log('数据请求失败!') }) })

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

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

B

答案解析:

解析

答案选B

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

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

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

软件的质量是指()。

A、软件的功能性、可靠性、易用性、效率、可维护性、可移植性
B、软件的功能和性能
C、用户需求的满意度
D、软件特性的总和,以及满足规定和潜在用户需求的能力

下列关于冲突及其解决方式的描述中,不正确的是()

A、冲突是自然的团队问题,不是某人的个人问题
B、冲突的产生原因有项目的高压环境、责任划分不清楚、存在多个上级或者新科技的使用等
C、冲突的解决方法有合作、强制、妥协等,但不能将冲突搁置起来,从中撤退
D、冲突应早被发现,利用私下但直接的、合作的方式来处理冲突

某市政府采购办公用计算机及配套软件时进行了公开招标,以下做法正确的是()

A、在招标文件中明确指出投标企业不应有外资背景
B、该项目招标结束后,招标单位向中标人发出中标通知书,但对所有未中标的投标人只通知了中标结果
C、某项目在招标时仅有一家企业投标,于是该企业顺利中标
D、某项目的评标委员会由一名经济专家、一名技术专家和一名招标单位负责人组成。

依据下面的项目活动网络图中,该项目历时为()

A、10
B、11
C、13
D、14

在物联网的架构中,3G、4G属于()技术。

A、网络层
B、感知层
C、物理层
D、应用层
热门试题 更多>
相关题库更多>
系统集成项目管理工程师
信息安全工程师
信息系统管理工程师
网络工程师