软工题第五章
软件工程第五章课后题

一、选择题
1.软件管理中,需要对软件进行配置,各阶段文档的管理属于()。
D
A.组织管理
B资源管理
C.计划管理
D.版本管理
2.软件开发的结构化方法中,常用数据字典技术,其中数据加工是
其组成内容之一,下述方法()是常采用编写加工说明的方法。
Ⅰ结构化语言Ⅱ判定树Ⅲ判定表
A.Ⅰ
B.Ⅱ
C.Ⅱ、Ⅲ
D.都是
3.在软件工程实施中,产生软件生命周期的概念是由()。
A.方法论所决定的
B.开发技术划分
C.软件开发规律
D.软件工程管理
二、填空题
1.软件计划包括和两个阶段。
2.软件概要设计的成果是。
3.软件的详细设计,也称模块设计。
它要求设计人员为每一个程序模块确定所使用的,,、输出数据等。
4.结构化分析方法是进行分析的方法。
三、解答题
1.什么是软件的可维护性?可维护性的度量的特性是什么?
2.提高可维护性的方法有哪些?
答案:
一、1.D 2.D 3.A
二、
1.总体设计(或概要设计)详细设计
2.软件设计说明书
3.算法数据结构接口细节和输入
4. 面向数据流
三、
1.软件的可维护性:软件能够被理解、校正、适应及增强功能的容易程度。
可维护性的度量的特性是:可理解性、可测试性、可修改性、可靠性、可移植性、可使用性和效率。
2.(1)建立明确的软件质量目标。
(2)利用先进的软件开发技术和工具。
(3)建立明确的质量保证工作。
(4)选择可维护的程序设计语言。
(5)改进程序文档。
第5章习题解答

第五章可编程序控制器及其工作原理5-1 可编程序控制器具有哪些特点?答:可编程序控制器特点:1)抗干扰能力强,可靠性高;2)控制系统结构简单、通用性强、应用灵活;3)编程方便,易于使用;4)功能完善,扩展能力强;5)PLC控制系统设计、安装、调试方便;6) 维修方便,维修工作量小;7) 体积小、重量轻,易于实现机电一体化。
5-2 整体式PLC、组合式PLC由哪几部分组成?各有何特点?答:整体式结构的PLC是将中央处理单元(CPU)、存储器、输入单元、输出单元、电源、通信端口、I∕O扩展端口等组装在一个箱体内构成主机。
另外还有独立的I/O扩展单元等通过扩展电缆与主机上的扩展端口相连,以构成PLC不同配置与主机配合使用。
整体式结构的PLC结构紧凑、体积小、成本低、安装方便。
小型机常采用这种结构。
组合式结构的PLC是将CPU、输入单元、输出单元、电源单元、智能I∕O单元、通信单元等分别做成相应的电路板或模块,各模块可以插在带有总线的底板上。
装有CPU的模块称为CPU模块,其他称为扩展模块。
组合式的特点是配置灵活,输入接点、输出接点的数量可以自由选择,各种功能模块可以依需要灵活配置。
5-3 PLC控制与继电器控制比较,有何相同之处?有何不同之处?答:PLC控制与继电器控制的比较见下表:5-4 PLC的硬件指的是哪些部件?它们的作用是什么?答:PLC的基本结构由中央处理器(CPU),存储器,输入、输出接口,电源,扩展接口,通信接口,编程工具,智能I/O接口,智能单元等组成。
1)中央处理器(CPU)中央处理器(CPU)其主要作用有①接收并存储从编程器输入的用户程序和数据。
②诊断PLC内部电路的工作故障和编程中的语法错误。
③用扫描的方式通过I∕O部件接收现场的状态或数据,并存入输入映像存储器或数据存储器中。
④PLC进入运行状态后,从存储器逐条读取用户指令,解释并按指令规定的任务进行数据传送、逻辑或算术运算等;根据运算结果,更新有关标志位的状态和输出映像存储器的内容,再经输出部件实现输出控制、制表打印或数据通信等功能。
软考中级-系统集成项目管理工程师-章节真题演练-5

软考中级-系统集成项目管理工程师-章节真题演练-5第五章项目立项管理2018年5月33、在项目可行性研究内容中,()主要是从资源配置的角度衡量项目的价值,评价项目在实现区域经济发展目标、有效配置经济资源、增加供应、创造就业、改善环境、提高人民生活等方面的效益。
A、经济可行性B、技术可行性C、财务可行性D、组织可行性解析:A提到价值效益等,肯定是从经济方面进行可行性研究。
34、在()时。
可以不进行招标。
A、需要采用不可替代的专利或者专有技术B、项目全部或部分使用国有投资或国家融资C、采购大型关系公共安全的基础设施D、使用国际组织或外国政府贷款、援助资金解析:A第九条除招投标法第六十六条规定的可以不进行招标的特殊情况外,有下列情形之一的,可以不进行招标:1.需要采用不可替代的专利或者专有技术;2.采购人依法能够自行建设、生产或者提供;3.已通过招标方式选定的特许经营项目投资人依法能能够自行建设、生产或者提供;4.需要向原中标人采购工程、货物或者服务,否则将影响施工或者功能配套要求;5.国家规定的其他特殊情形。
35、关于项目招投标的说法,不正确的是()。
A、中标人确定后,招标人应当视情况向中标人发出中标通知书,将中标结果通知所有未中标的投标人B、依法必须进行招标的项目。
招标人应当自收到评标报告之日起3日内公示中标候选人C、招标人在招标文件中要求投标人提交投标保证金的,投标保证金有效期应当与投标有效期一致D、投标人少于3个的,不得开标;招标人应当重新招标解析:A中标人确定后,招标人应当向中标人发出中标通知书,并且同时将中标结果通知所有未中标的投标人。
36、针对新中标的某政务工程项目,系统集成商在进行项目内部立项时,立项内容一般不包括()。
A、项目资源分配B、任命项目经理C、项目可行性研究D、准备项目任务书解析:C内部立项(供应商立项)一般包括的内容有项目资源估算、项目资源分配、准备项目任务书、任命项目经理2017年11月32.以下关于项目建议书的叙述中,不正确的是:()A、项目建议书一般由项目承建单位编写,提交项目建设单位审批B、项目建议书是选择项目的依据,也是可行性研究的依据C、项目建议书包括项目建设的必要性、业务分析、总体建设方案、实施进度、效益与风险分析等内容D、某些情况下,项目建议书的编写、申报和审批工作可与项目可行性分析阶段的工作合并答案:A根据《系统集成项目管理工程师教程(第2版)》第222页左右,项目建议书是项目建设单位向上级主管部门提交的项目申请文件,是对拟建项目提出的总体设想。
《第五章MIS的战略规划和开发方法》习题及答案

《第五章MIS的战略规划和开发⽅法》习题及答案第五章管理信息系统的战略规划和开发⽅法5.1 单项选择题1、诺兰阶段模型把信息系统的成长过程划分为( d )阶段。
a. 三个b. 四个c. 五个d. 六个2、MIS 的战略规划可以作为将来考核( d)⼯作的标准。
a. 系统分析b. 系统设计c. 系统实施d. 系统开发3、BSP (企业系统规划法)法的优点在于能保证( a)独⽴于企业的组织机构。
a. 信息系统b. 数据类c. 管理功能d. 系统规划4、U/C 矩阵是⽤来进⾏( c)的⽅法。
a. 系统开发b. 系统分析c. ⼦系统划分d. 系统规划5 、结构化系统开发⽅法在开发策略上强调( a)。
a. ⾃上⽽下b. ⾃下⽽上c. 系统调查d. 系统设计5.2 填充题1、诺兰阶段模型把信息系统的成长过程划分为初装、蔓延,控制、集成、数据管理和成熟等六个阶段。
2、诺兰阶段模型的控制阶段是实现以计算机管理为主到以____数据______管理为主转换的关键。
3、“⾃下⽽上”的开发策略的主要缺点是不能从整体上考虑问题。
4、“⾃下⽽上”的策略适⽤于_⼩, __型系统的设计,⽽“⾃上⽽下”的策略适⽤于⼤中型系统的设计。
5、规划领导⼩组应由单位(企业、部门)的____主要决策者之⼀_____ 负责。
6、BSP法的优点在于利⽤它能保证信息系统独⽴于_______企业的组织机构_____。
7、BSP⽅法将____过程和数据类__两者作为定义企业信息系统总体结构的基础。
8、企业流程(过程)是指为完成_____企业⽬标或任务_____⽽进⾏的⼀系列跨越时空的逻辑相关的业务活动。
9、原型法贯彻的是___⾃下⽽上____的开发策略。
5.3 名词解释题1、诺兰阶段模型2、原型法3、BSP ⽅法4、“⾃下⽽上”的开发策略5、结构化系统开发⽅法5.3 名词解释题参考答案1、计算机应⽤到⼀个组织的管理中,⼀般要经历从初级到不断成熟的成长过程。
软工题第五章

第五章习题一、选择题1.对于软件产品来说,有4个方面影响着产品的质量,即( A )、( B )、( C )及成本、时间和进度等条件。
重视软件过程的质量是近年来质量管理理论和实践的新发展。
重视软件过程质量的控制,其部分原因可能是:相对于产品质量的控制来说,过程质量的控制是( D )、( E )、( F ),而产品质量的控制是( G )、( H )、( I )。
供选择的答案:A ~ C. ①开发时间②开发技术③过程质量④风险控制⑤质量控制⑥人员素质⑦项目管理⑧配置管理D ~ I. ①主动的②被动的③整体的④系统的⑤先期的⑥事后的⑦个别的⑧部分的2. 在软件维护的实施过程中,为了正确、有效地修改,需要经历以下3个步骤:(A )、(B )、(C )。
( A )是决定维护成败和质量好坏的关键。
( C )包括(D )确认、计算机确认和维护后的(E )。
供选择的答案:A ~ C. ①修改程序②建立目标程序③分析和理解程序④重新验证程序⑤验收程序D. ①动态②静态③人工④自动E. ①验证②验收③检验④存档2. A. ③, B. ①, C. ④, D. ②, E. ②在软件维护的实施过程中,为了正确、有效地修改,需要经历以下3个步骤:分析和理解程序、修改程序和重新验证程序。
经过分析,全面、准确、迅速地理解程序是决定维护成败和质量好坏的关键。
有如下几种方法:分析程序结构图、数据跟踪、控制跟踪及其它方法。
在将修改后的程序提交用户之前,需要通过静态确认、计算机确认和维护后的验收,保证修改后的程序的正确性。
3. 从供选择的答案中选出同下列各叙述关系最密切的字句。
A. 软件从一个计算机系统或环境转移到另一个计算系统或环境的容易程度。
B. 软件在需要它投入使用时能实现其指定的功能的概率。
C. 软件使不同的系统约束条件和用户需求得到满足的容易程度。
D. 在规定的条件下和规定的一段期间内,实现所指定的功能的概率。
E. 尽管有不合法的输入,软件仍能继续正常工作的能力。
第5章 习题参考答案

第五章习题参考答案一、填空题1、MCS-51有5个中断源,2个中断优先级,优先级由软件填写特殊功能寄存器 IP 加以选择。
2、外中断请求标志位是 IE0 和 IE1 。
3、 RETI 指令以及任何访问 IE 和 IP 寄存器的指令执行过后,CPU不能马上响应中断。
4、8051单片机响应中断后,产生长调用指令LCALL,执行该指令的过程包括:首先把 PC的内容压入堆栈,以进行断点保护,然后把长调用指令的16位地址送 PC ,使程序执行转向程序存储器中的中断地址区。
二、选择题:1、在中断服务程序中,至少应有一条( D )。
A、传送指令B、转移指令C、加法指令D、中断返回指令2、要使MCS-51能够响应定时器T1中断,串行接口中断,它的中断允许寄存器IE的内容应是( A )。
A、 98HB、 84HC、 42HD、 22H3、MCS-51响应中断时,下列哪种操作不会发生( A )A、保护现场B、保护PCC、找到中断入口D、保护PC转入中断入口4、MCS-51中断源有( A )A、 5个B、 2个C、 3个D、6个5、计算机在使用中断方式与外界交换信息时,保护现场的工作应该是( C )A、由CPU自动完成B、在中断响应中完成C、应由中断服务程序完成D、在主程序中完成6、MCS-51的中断允许触发器内容为83H,CPU将响应的中断请求是( D )。
A、 INT0,INT1B、 T0,T1C、 T1,串行接口D、 INT0,T07、若MCS-51中断源都编程为同级,当它们同时申请中断时,CPU首先响应( B )。
A、 INT1B、 INT0C、 T1D、T08、当CPU响应串行接口中断时,程序应转到( C )。
A、 0003HB、 0013HC、 0023HD、 0033H9、执行MOV IE,#03H后,MCS-51将响应的中断是( D )。
A、 1个B、 2个C、 3个D、0个10、外部中断1固定对应的中断入口地址为( C )。
软件项目管理习题题目

第一章绪论1.列举你在执行 IT 相关任务时曾经碰到的问题。
试把这些问题按频率和影响大小分别排序。
对每一个问题,考虑是否可以通过某种方法降低发生的可能性。
2.软件工程的三个目标是什么,以什么衡量是否达到目标?3.软件工程活动包括哪些?那些活动需要有最终用户的参预?每一个过程需要有怎样的文档产出?4.设计包括哪两个阶段,具体任务,干系人有什么区别?5.软件工程的原则有哪些?6.你能说出哪些软件工程模型,他们各自有什么有缺点,合用于怎样的系统?7.有人说“线性模型已经过时了,有着诸多缺点,不需要再了解它。
”你怎么看待这种说法?线性模型和其他模型的关系是怎样的?8.在下列哪一个阶段项目发起人对项目的范围、质量、时间和成本有最大的影响力,为什么?9.项目的定义是什么,有什么特点,请给出三个是项目的例子,并给出三个不是项目的例子。
10.软件项目与普通的项目的区别在什么地方11.判断以下活动中哪些是项目,哪些不是项目,并请说明理由。
(1)升级某政府部门的办公自动化系统(2)打字员打印文件(3)报考软件学院软件工程硕士研究生(4)购买家用轿车(5)每天骑车上班12.项目生命周期包括哪些阶段?哪个阶段具有最大的不确定性?各个阶段的活动主要有哪些?13.项目管理的六要素有哪些?相互之间是什么关系。
TQC 又指什么?14.怎样衡量项目是否成功?15.项目管理分哪几大知识体系,它们之间什么关系?16.在选择职员时,应该考虑哪些因素?17.管理者是否应该和小组中更多的普通员工交朋友,并和他们打成一片?18.如果项目快结束时,忽然有一个很重要的,但非常耗时的变更,你作为项目经历应该怎么做19.为什么说时间和人员不能交换?试说明其原因。
20.你能列出那些人际关系的矛盾?试阐述可能的解决方法。
第二章需求管理1.软件需求的定义是什么,分别从用户角度,开辟者角度,相关文档角度给以阐述2.描述软件需求要做的五项主要事情指什么。
软件工程考试题

六、填空题1、(可行性研究)的目的就是用最小代价在尽可能短的时间内确定该软件项目是否能够开发、是否值得开发。
2、可行性研究的目的不是是开发一个软件项目,而是研究这个项目是否(是否做值得)。
3、可行性研究需要从(经济)可行性、(技术)可行性、(操作)可行性和(社会)可行性四个方面分析研究每种解决方案的可行性。
4、技术可行性是对开发项目的(功能、性能、限制条件)进行分析,确定现有4、可行性研究要进行的需求分析和设计应是(C)。
A.详细的B.全面的C.简化的D.彻底的七、填空题1、需求分析的基本任务是要准确地定义(扇新系统的目标),为了满足用户需求,回答系统必须(做什么)的问题。
2、在需求分析阶段,首先进行问题识别,即双方确定对问题的综合需求,这些需求包括:(功能)需求、(性能)需求、(环境)需求、(用户界面)需求。
另外还有可靠性、安全性、保密性、可移植性、可维护性等方面的需求。
3、需求分析的困难主要体现在4个方面:问题的复杂性、(交流障碍)、(不完备性和不一致性)、需求易变性。
4、在需求分析阶段进行以下几个方面的工作:识别系统综合要求、(分析系统的数据要求)、导出软件逻辑模型、(编写文档)。
八、选择题1、需求分析(D)。
A.要回答“软件必须做什么?”B.可概括为:“理解、分解、表达”6个字C.要求编写需求规格说明书D.以上都对的(物理)模型,即着手实现软件需求,并将设计的结果反映在(设计)文档中。
9、总体设计评价是对设计部分是否完整地实现了需求中规定的(功能)、(性能)等要求,设计方案的(可行性),关键的处理及内外部接口定义(正确性)有效性,各部分之间的(一致性)等都一一进行评审。
10、在一个模块中,(功能)、(状态)和(接口)反映模块外部特征,(逻辑)反映它的内部特性。
11、(信息隐藏)是指在设计和确定模块时,使得一个模块的内包含的信息对于不需要遮羞信息的其它模块来说是不能(访问)的。
12、设计软件结构,具体为:(1)采用某种方法将一个复杂系统按功能划分为(模块)(2)确定每个模块的(功能)(3)确定模块之间的(调用关系)(4)确定模块之间的(接口),即模块之间传递的信息。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第五章习题一、选择题1.对于软件产品来说,有4 个方面影响着产品的质量,即( A )、( B )、( C )及成本、时间和进度等条件。
重视软件过程的质量是近年来质量管理理论和实践的新发展。
重视软件过程质量的控制,其部分原因可能是:相对于产品质量的控制来说,过程质量的控制是( D )、( E )、( F ),而产品质量的控制是( G )、( H )、( I )。
供选择的答案:A ~ C. ①开发时间② 开发技术③ 过程质量④ 风险控制⑤质量控制⑥ 人员素质⑦ 项目管理⑧ 配置管理D ~ I. ①主动的② 被动的③ 整体的④ 系统的⑤ 先期的⑥ 事后的⑦ 个别的⑧ 部分的2.在软件维护的实施过程中,为了正确、有效地修改,需要经历以下 3 个步骤:( A )、( B )、( C )。
( A )是决定维护成败和质量好坏的关键。
( C )包括( D )确认、计算机确认和维护后的( E )。
供选择的答案:A ~ C. ①修改程序② 建立目标程序③ 分析和理解程序④ 重新验证程序⑤ 验收程序D.①动态②静态③人工④自动E.①验证② 验收③ 检验④ 存档2.A.③,B.①,C.④,D.②,E.②在软件维护的实施过程中,为了正确、有效地修改,需要经历以下3个步骤:分析和理解程序、修改程序和重新验证程序。
经过分析,全面、准确、迅速地理解程序是决定维护成败和质量好坏的关键。
有如下几种方法:分析程序结构图、数据跟踪、控制跟踪及其它方法。
在将修改后的程序提交用户之前,需要通过静态确认、计算机确认和维护后的验收,保证修改后的程序的正确性。
3•从供选择的答案中选出同下列各叙述关系最密切的字句。
A.软件从一个计算机系统或环境转移到另一个计算系统或环境的容易程度。
B.软件在需要它投入使用时能实现其指定的功能的概率。
C.软件使不同的系统约束条件和用户需求得到满足的容易程度。
D.在规定的条件下和规定的一段期间内,实现所指定的功能的概率。
E.尽管有不合法的输入,软件仍能继续正常工作的能力。
供选择的答案:①可测试性②可理解性③可靠性④可移植性⑤可使用性⑥兼容性⑦容错性⑧可修改性⑨可接近性⑩一致性4•软件可移植性是用来衡量软件的(A )的重要尺度之一。
为了提高软件的可移植性,应注意提咼软件的(B )。
米用(C )有助于提咼(B )。
为了提高可移植性,还应(D )。
使用(E )语言开发的系统软件具有较好的可移植性。
供选择的答案:A.①通用性②效率③质量④人机界面B.①使用的方便性② 简洁性③ 可靠性④ 设备独立性C.①优化算法② 专用设备③ 表格驱动方式④ 树型文件目录D. ①有完备的文件资料② 选择好的宿主计算机③ 减少输入输出次数④ 选择好的操作系统E.① COBO② APL③ C④ SQL5.下面有关软件维护的叙述有些是不准确的,请将它们列举出来。
供选择的答案:①要维护一个软件,必须先理解这个软件。
②阅读别人写的程序并不困难。
③如果文档不齐全也可以维护一个软件。
④谁写的软件就得由谁来维护这个软件。
⑤设计软件时就应考虑到将来的可修改性。
⑥维护软件时一件很吸引人的创造性工作。
⑦维护软件就是改正软件中的错误。
⑧维护好一个软件是一件很难的事情。
二、简答题1.某些软件工程师不同意“目前国外许多软件开发组织把60%以上的人力用于维护已有的软件”的说法,他们争论说:“我并没有花费我的60%的时间去改正我所开发的程序中的错误”。
请问,你对上述争论有何看法?2.为什么大型软件的维护成本高达开发成本的4 倍左右?3.某软件公司拟采取下述措施提高他们开发出的软件产品的可维护性。
请判断哪些措施是正确的,哪些措施不正确。
(1)在分析用户需求时同时考虑维护问题。
(2)测试完程序后,删去程序中的注解以缩短源程序长度。
(3)在软件开发过程中尽量保证各阶段文档的正确性。
(4)编码时尽量多用全局变量。
(5)选用时间效率和空间效率尽可能高的算法。
(6)尽可能利用硬件特点以提高程序效率。
(7)尽可能使用高级语言编写程序。
(8)进行总体设计时加强模块间的联系。
(9)尽量减少程序模块的规模。
(10)用数据库系统代替文件系统来存储需要长期保存的信息。
(11)用CAS邸境或程序自动生成工具来自动生成一部分程序。
(12)尽量用可重用的软件构件来组装程序。
(13)使用先进的软件开发技术。
(14)采用放错程序设计技术,在程序中引入自检能力。
(15)把与硬件及操作系统有关的代码放到某些特定的程序模块中。
4.假设你的任务是对一个已有的软件做重大修改,而且只允许你从下述文档中选取两份:(a)程序的规格说明;(b)程序的详细设计结果(自然语言描述加上某些设计工具表示);(c)源程序清单(其中有适当数量的注解)。
你将选取哪两份文档?为什么这样选取?5.当一个十几年前开发出的程序还在为其用户完成关键的业务时,是否有必要对它进行再工程?如果对它进行再工程,经济上是否划算?6.代码重构与正向工程有何相同之处?有何不同之处?第五章习题解答一、选择题1. A.②,B.③,C.⑥D.⑤,E.①,F④,G⑥, H②,I⑦其中,A、B、C答案顺序可互换,D、E、F答案顺序可互换,G、H、I答案顺序可互换。
对于软件产品来说,有4 个方面影响着产品的质量,即开发技术、过程质量、人员素质及成本、时间和进度等条件。
这4 个方面因素对产品质量究竟有多少影响又取决于项目的项目的规模和项目的类型。
重视软件过程的质量是近年来质量管理理论和实践的新发展,但不能把产品质量的控制与过程质量的控制相对立起来。
重视软件过程质量的控制,其部分原因可能是,相对于产品质量的控制来说,过程质量的控制是先期的、主动的、系统的,而产品质量的控制是事后的(产品已经生产出来)、被动的(发现了不合格产品只能报废或采取其它补救措施)、个别的(逐个产品的质量检验)。
2.A.③,B.①,C.④,D.②,E.②在软件维护的实施过程中,为了正确、有效地修改,需要经历以下3 个步骤:分析和理解程序、修改程序和重新验证程序。
经过分析,全面、准确、迅速地理解程序是决定维护成败和质量好坏的关键。
有如下几种方法:分析程序结构图、数据跟踪、控制跟踪及其它方法。
在将修改后的程序提交用户之前,需要通过静态确认、计算机确认和维护后的验收,保证修改后的程序的正确性。
3.A.④,B.⑤C.⑥,D.③,E.⑦论述A是指可移植性。
可移植性的定义是:将一个软件系统从一个计算机系统或环境移植到另一个计算机系统或环境中运行时所需工作量的大小。
论述B 是指可使用性。
可使用性的定义是:程序方便、实用、及易于使用的程度。
用户一有请求,就能对每一个操作方式作出解释,始终如一地按照用户的要求运行。
计算其按用户请求实现指定功能的概率,是一种度量准则。
论述C是指兼容性。
有两类基本的兼容性:向下兼容和交错兼容。
向下兼容是软件新版本保留它早期版本的功能的情况;交错兼容是共同存在的两个相关但不同的产品之间的兼容性。
软件可以在不同系统约束和不同用户需求下完成指定的工作。
论述D是指可靠性。
可靠性的定义是:一个程序按照用户的要求和设计目标,在给定的一段时间内正确执行的概率。
论述E是指容错性。
容错性的定义是:系统出错(机器临时发生故障或数据输入不合理)时,能以某种预定方式,做出适当处理,得以继续执行和恢复系统的能力。
4.A.③,B.④,C.③,D.①,E.③软件可移植性是用来衡量软件质量的重要尺度之一。
为了提高软件的可移植性,应注意提高软件的设备独立性。
采用表格驱动的方式有助于提高软件的设备独立性。
为了提高可移植性,还应有完备的文档资料。
使用C语言开发的系统软件具有较好的可移植性。
5.软件维护人员通常不是改软件的开发人员,这给软件维护带来很大的困难。
特别是有些软件在开发时没有遵循软件开发的准则,没有开发方法的支持,维护这样的软件就更困难。
下面列举一些与软件维护有关的问题。
①要维护一个软件,首先必须要理解它。
而理解一个别人编写的程序通常是很困难的,尤其是对软件配置(指各种相关的文档)不齐全的软件,理解起来就更加困难。
②需要维护的软件往往缺少合格的文档,或者文档资料不齐全,甚至根本没有文档。
在软维护中,合格的文档十分重要,它有助于理解被维护的软件。
合格的文档不仅要完整正确地反映开发过程各阶段的工作成果,而且应当容易理解并应与程序源代码一致。
而错误的文档会把对软件的理解引入歧途。
③在软件维护时,不要指望得到原来开发该软件的人员的帮助。
开发人员开发完一个软件后,往往会从事另一软件的开发,甚至已离开原开发单位。
即使原来的开发人员还在,也可能时间太久而忘却了实现的细节。
④多数软件在设计时没有考虑到将来的修改,这给软件的修改造成了困难。
而且在修改软件时很可能引入新的差错。
⑤软件维护通常不是一件吸引人的工作。
从事维护工作常使维护人员缺乏成就感,这也严重影响维护工作,从而影响了维护质量的提高。
二、简答题1.答:首先,软件维护并非仅仅是改正程序中的错误,它还包括为了使软件适应变化了的环境而修改软件的活动,以及为了满足用户在使用软件的过程中提出的扩充或完善软件的新需求而修改软件的活动,甚至包括为了提高软件未来的可维护性或可靠性而主动地修改软件的活动。
实际上,为了消除程序中潜藏的错误而进行的改正性维护,仅占全部维护活动的1/5 左右。
其次,目前国外许多软件开发组织把60%以上的人力用于维护已有的软件”,指的是软件开发组织内人力分配的整体状况。
至于具体到软件组织内的每位软件工程师,则分工各不相同。
有些人专职负责软件维护工作,他们的全部工作时间都花费在维护已有软件产品的工作上;另一些人专职负责软件开发工作,他们并不花费时间去维护已有的软件产品;还有一些人可能既要从事软件开发工作又要兼管软件维护工作。
第三,软件维护人员并非只负责维护自己开发的程序,通常,一名维护人员参与多个软件产品的维护工作。
2.答:软件维护不像一般产品维修那样仅限于排除用户在使用产品的过程中遇到的故障。
事实上,当用户在使用软件产品的过程中遇到了故障时,软件维护人员必须进行改正性维护活动以诊断并改正软件中潜藏的错误;当运行软件的环境改变了的时候,软件维护人员必须适当地修改软件(即进行适应性维护),以使软件适应新的运行环境;当用户在使用软件的过程中提出增加软件功能或提高软件性能的要求时,软件维护人员必须对软件进行完善性维护,以满足用户的新需求。
此外,在资源允许的情况下,对某些关键的老程序还可能主动地进行预防性维护。
由于软件维护涵盖的范围很广(与一般产品维修有点类似的改正性维护仅占全部维护活动的20%左右),软件维护的工作量和成本自然就很高。
一般产品的维修比较简单,用好部件替换被用坏了的部件就可以了。
软件维护比一般产品维修要困难得多,实际上,不论是哪种类型的维护,都必须修改原来的设计和程序代码。