1软件可维护性可用下面七个质量特性来衡量
软件工程―名词解释

全国 2010年 10月三、名词解释题 (本大题共 5小题,每小题 3分,共 15分1. 软件生存周期模型答案:软件生存周期模型是描述软件开发过程中各种活动如何执行的模型。
(1分软件生存周期模型确立了软件开发和演绎中各阶段的次序限制以及各阶段活动的准则, (1分确立开发过程所遵守的规定和限制, 便于各种活动的协调以及各种人员的有效通信, 有利于活动重用和活动管理。
(1分2. 模块答案:模块在程序中是数据说明、可执行语句等程序对象的集合, 或者是单独命名和编址的元素,如高级语言中的过程、函数和子程序等。
(2分在软件的体系结构中,模块是可组合、分解和更换的单元。
(1分3. 可维护性答案:软件可维护性是指软件能够被理解、校正、适应及增强功能的容易程度。
(2分可维护性可用 7个质量特性来衡量,即可理解性、可测试性、可修改性、可靠性、可移植性、可使用性和效率。
(1分4. 继承性答案:继承性是子类自动共享父类数据结构和方法的机制, 这是类之间的一种关系。
(2分在定义和实现一个类的时候,可以在一个已经存在的类的基础之上来进行,把这个已经存在的类所定义的内容作为自己的内容,并加入若干新的内容。
(1分5. 投资回收期答案:投资回收期是衡量一个开发工程价值的经济指标。
(1分投资回收期就是积累的经济效益等于最初的投资所需要的时间。
(2分全国 2010年 1月31.软件工程过程 :即软件生命周期的方法、工具和概念32.模块化 :模块化是指解决一个复杂问题时自顶向下逐层把系统划分成若干模块的过程, 有多种属性, 分别反映其内部特性 . 每个模块完成一个特定的子功能, 所有的模块按某种方法组装起来,成为一个整体,完成整个系统所要求的功能33.集成测试 :集成测试,也叫组装测试或联合测试。
在单元测试的基础上,将所有模块按照设计要求 (如根据结构图组装成为子系统或系统, 进行集成测试。
34.软件可靠性 :(1在规定的条件下,在规定的时间内,软件不引起系统失效的概率; (2在规定的时间周期内,在所述条件下程序执行所要求的功能的能力;35.模块的控制范围2008年 10月1. 过程设计语言 (PDL答案:也称程序描述语言, 又称为伪码, 是一种用于描述模块算法设计和处理细节的语言。
CISP考试认证(习题卷1)

CISP考试认证(习题卷1)第1部分:单项选择题,共94题,每题只有一个正确答案,多选或少选均不得分。
1.[单选题]为了保障系统安全,某单位需要对其跨地区大型网络实时应用系统进行渗透测试, 以下关于渗透测试过程的说法不正确的是( )。
A)由于在实际渗透测试过程中存在不可预知的风险,所以测试前要提醒用户进行系统和数 据备份,以便出现问题时可以及时恢复系统和数据B)为了深入发掘该系统存在的安全威胁,应该在系统正常业务运行高峰期进行渗透测试C)渗透测试从“逆向”的角度出发,测试软件系统的安全性,其价值在于可以测试软件在实 际系统中运行时的安全状况D)渗透测试应当经过方案制定、信息收集、漏洞利用、完成渗透测试报告等步骤答案:B解析:在正常业务运行高峰期进行渗透测试可能会影响系统正常运行。
2.[单选题]我国信息安全标准化技术委员会(TC260)目前下属6 个工作组,其中负责信息安全管理的小组是:A)WG1B)WG7C)WG3D)WG5答案:B解析:3.[单选题]以下哪个现象较好的印证了信息安全特征中的动态性( )A)经过数十年的发展,互联网上已经接入了数亿台各种电子设备B)刚刚经过风险评估并针对风险采取处理措施后仅一周,新的系统漏洞使得信息系统面临新的风险C)某公司的信息系统面临了来自美国的“匿名者”黑客组织的攻击D)某公司尽管部署了防火墙、防病毒等安全产品,但服务器中数据仍然产生了泄露答案:B解析:B 体现出了动态性4.[单选题]鉴别是用户进入系统的第一道安全防线, 用户登录系统时。
输入用户名和密码就是对用户身份鉴别。
鉴别通过, 即可以实现两个实体之间的连接。
例如, 一个用户被服务器鉴别通过后, 则被服务器认为是合法用户,才可以进行后续访问。
鉴别是对是信息的一项安全属性进行验证, 该属性属于下列选项中的( )A)保密性B)可用性C)真实性D)完整性答案:C解析:5.[单选题]从业务角度出发,最大的风险可能发生在那个阶段A)立项可行性分析阶段B)系统需求分析阶段C)架构设计和编码阶段D)投产上线阶段答案:A解析:6.[单选题]460.一个信息管理系统通常会对用户进行分组并实施访问控制,例如,在一个学校的教务系统中,教师能够录入学生的考试成绩,学生只能查看自己的分数,而学校教务部门的管理人员能够对课程信息、学生的选课信息等内容进行修改,下列选项中,对访问控制的作用的理解错误的是()A)对经过身份鉴别后的合法用户提供所有服务B)拒绝非法用户的非授权访问请求C)在用户对系统资源提供最大限度共享的基础上,对用户的访问权进行管理D)防止对信息的非授权篡改和滥用答案:A解析:7.[单选题]30. 从 Linux 内核 2.1 版开始,实现了基于权能的特权管理机制,实现了超级用户的特权分割,打破了UNIX/LINUX 操作系统中超级用户/普通用户的概念,提高了操作系统的安全性。
软件工程考试资料整理

1.在结构化分析中,__数据字典__用于详细地定义数据流图中的成分。
2.结构化程序设计是一种程序设计技术,它采用__自顶向下、逐步求精__的设计方法和顺序、选择、循环三种基本控制结构构造常态程序。
3.结构化分析方法中,数据流图的四种基本成分为:处理、源点或终点__数据存储和数据流_。
4.模块内部的算法设计在结构化方法的___详细设计__阶段进行。
5.定性度量模块独立性的两个标准是内聚性和___耦合性___。
6.从模块内外的联系来看,结构化设计的要求是___高内聚低耦合_。
7.耦合性和内聚性是衡量___模块独立性_的两个定性的标准。
8.在一段程序中,将多次出现的一组语句设计为一个子程序,供多个部分调用,这种情况出现的内聚称为___偶然内聚_____。
9.一个进行学生成绩统计的模块其功能是先对学生的成绩进行累加,然后求平均值,则该模块的内聚性是 ____顺序内聚__。
10.在模块结构图中,直接调用某一模块的其他模块数称为该模块的__扇入数_11.在软件开发过程中要产生大量的信息,要进行大量的修改,软件配置管理能协调12.软件开发,并使混乱减到最低程度。
13.软件可维护性度量的七个质量特性是可理解性、可测试性、可修改性、可靠性、可移植性、可使用性和效率。
14.为了便于对照检查,测试用例应由输入数据和预期的输出结果两部分组成。
15.软件结构是以模块为基础而组成的一种控制层次结构。
16.在结构化分析中,用于描述加工逻辑的主要工具有三种,即:结构化语言、判定表、17.判定树。
18.结构化语言是介于自然语言和形式语言之间的一种半形式语言。
19.第二代CASE工具的特点是支持图形表示的 __结构化方法__________ 。
如数据流图与结构图。
20.在面向对象方法中,对象实现了数据和操作的结合,使数据和操作 _封装__ 于对象的统一体中。
21.面向对象分析的目的是对客观世界的系统进行建模。
22.为了使应用软件适应计算机环境的变化而 _____修改软件_的过程称为适应性维护。
提高软件可维护性的方法_软件工程_[共2页]
![提高软件可维护性的方法_软件工程_[共2页]](https://img.taocdn.com/s3/m/79fa24e6b90d6c85ed3ac6c6.png)
题,但是却不能完全解决。
不过应该注意,为了能够开始构建系统,达成共识的需求是最基本的,但这与“最终”产品是什么达成共识并不相同。
6.3.2 软件可维护性度量软件可维护性与软件质量和可靠性一样是难以量化的概念,然而借助维护活动中可以估量的属性,能间接地度量可维护性。
①察觉到问题所耗的时间。
②收集维护工具使用的时间。
③分析问题所需时间。
④形成修改说明书所用时间。
⑤纠错(或修改)所用时间。
⑥局部测试所用时间。
⑦整体测试所用时间。
⑧维护复审所用时间。
⑨完全恢复所用时间。
上述每种度量都能方便地记录。
作为管理者衡量新工具和新技术有效与否的依据,除了这些面向时间的度量外,有关设计结构和软件复杂性的度量也可间接说明软件的可维护性。
6.3.3 提高软件可维护性的方法软件的可维护性决定了软件寿命的长短,因此必须提高软件的可维护性。
为了提高软件的可维护性.需要从5个方面入手。
1.软件的质量目标和优先级对于每一种软件都应建立明确的质量目标。
目前广泛使用以下7个质量特性来衡量程序的可维护性。
对于不同类型的维护,它们的侧重不尽相同,表6-2描绘了各类维护中应侧重的质量特性。
表中“*”表示不需要的特性。
表6-2 各类维护中所侧重的质量特性维护属性改正性维护适应性维护完善性维护可理解性*可测试性*可修改性* *可靠性*可移植性 * 可使用性 * * 效率*2.提高软件质量的技术和工具为了改善软件可维护性,应尽量使用能提高软件质量的技术和工具。
①模块化技术。
一个大而复杂的软件系统根据其功能分成许多较小的模块,降低系统复杂性,使系统易于维护。
②结构化程序设计技术。
采用这种技术可以得到良好的程序结构、因为它不仅使模块结构标准化,而且可以使模块间相互作用标准化。
187。
维护

维护要求
软件 配置 评价设计
代码
评价代码
结 构 化 维 护
计划途径 ? 修改设计 重新编码 重新编码
非 结 构 化 维 护
复查
复查
交付使用
软件维护有哪些副作用?
所谓副作用是指因修改软件而造成的错误或其它不希望发生的情况, 有三种副作用: 1.修改代码的副作用 在使用程序设计语言修改源代码时,都可能引入错误。例如,删除或 修改一个子程序、删除或修改一个标号、 删除或修改一个标识符、改 变程序代码的时序关系、改变占用存储的大小、改变逻辑运算符、修 改文件的打开或关闭、改进程序的执行效率,以及把设计上的改变翻 译成代码的改变、为边界条件的逻辑测试做出改变时,都容易引入错 误。 2.修改数据的副作用 在修改数据结构时,有可能造成软件设计与数据结构不匹配,因 而导致软件出错。数据副作用就是修改软件信息结构导致的结果。例 如,在重新定义局部或全局常量、 重新定义记录或文件格式、增大或 减小一个数组或高层数据结构的大小、修改全局或公共数据、重新初 始化控制标志或指针、重新排列输入/输出或子程序的参数时,容易导 致设计与数据不相容的错误。数据副作用可以通过详细的设计文档加 以控制。在此文档中描述了一种交叉引用,把数据元素、记录、文件 和其它结构联系起来。
6.效率:效率表明一个程序能执行预定功能而又不浪费机 器资源的程度。这些机器资源包括内存容量、外存容量、 通道容量和执行时间。 7.可使用性:从用户观点出发,可使用性定义为程序方便、 实用、及易于使用的程度。一个可使用的程序应是易于使 用的、能允许用户出错和改变,并尽可能不使用户陷入混 乱状态的程序。
什么是软件的可维护性?主要有哪些因素所决定?
软件工程课自测题及答案3

一. 判断题1.软件实际就是程序( X )2.成功的测试是没有发现错误的测试(X )3.软件工程的主要思想是从理论的角度来观察分析软件开发盒生产活动(X )4.一个模块直接引用另一个模块中的数据,这两个模块之间的耦合不是内容耦合(X )5.程序只要逻辑正确,能够被机器理解并执行就够了(X )二.选择题1.在软件质量因数中,软件在异常条件下人能运行的能力称为软件的(B)A)可靠性B)健壮性C)可用性D)安全性2.软件开发可行性研究,一般涉及经济,技术盒操作可行性,而进行可行性研究的基本依据是用户提出的软件(C)A)系统质量B)系统目标C)系统功能D)系统性能3.结构化程序设计中,一般包含3种基本结构,下列结构中哪个不属于基本结构( B )A)顺序结构B)嵌套结构C)顺序结构D)选择结构4.JACKSON方法是一种面向( B )的方法A)对象 B )数据结构C)数据流D)控制流5.模块内部过程描述就是模块内部的(B),它的表述形式就是详细设计语言A)模块化设计B)算法设计C)程序设计D)详细设计6.在设计测试用例时,(A)是用的最多的一种黑盒测试方法A)等价类划分B)边值分析C)因果图D)判定表17软件的可维护性,可使用性, ( B) 是衡量软件质量的几个主要特性A)可靠性B)可复用性C)可理解性D)可修改性8.原型化方法是一种(B)型的设计过程A)自外向内B)自顶向下C)自内向外D)自底向上9.模块(B)定义为受该模块内一个判断影响的所有模块集合A)控制流B)作用域C)宽度D)接口10.程序控制的3种基本结构中,(C)结构可提供程序重复控制A)遍历B)排列 C )循环D)分支三.填空题1.黑箱测试即___性能测试____、白箱测试即_____结构测试______。
2.开发期的主要任务需求分析总体设计,详细设计,编码,测试。
3. 结构化方法将软件生命周期分为__设计__,___开发___,___运行___三个时期.4. 各模块经过单元测试后,将各模块组装起来进行集成测试,以检查与设计相关的软件体系结构的有关问题。
管理信息系统课后习题及参考答案

第1章1.什么是信息,什么是数据?简述二者之间的联系和区别。
2.什么是信息循环?3.简述信息的层次和信息的类型及主要特性。
4.简述管理信息的特点。
6.简述信息系统的定义。
7.什么是管理信息系统,它有什么特点?第2章1.建立管理信息系统方法应包含的容主要有哪些?2.简述管理信息系统的生命周期。
3.构造化方法的根本思想是什么?4.什么是构造化生命周期法?5.什么是快速原型法?6.简述在系统分析阶段使用原型法的开发过程。
7.试述本教材为什么选择构造化生命周期法作为重点讲述容。
8.管理信息系统的开发方式有哪些?第3章1.试述系统规划的主要目标和任务。
2.试述系统规划工作的主要特点和关键问题。
3.什么是管理信息系统开发中的系统分析?其主要目标和活动容有哪些?系统分析工作的主要特点是什么?4.初步调查的容主要有哪些?5.可行性研究的目的是什么?6.可行性研究主要从哪几个方面去考察?简述其容。
第4章1.简述需求分析中现行系统调查、新系统逻辑方案的提出等活动的详细容、关键问题、主要成果及其描述方法。
2.为什么数据流图要分层?3.简述分层数据流图的组成与根本符号以及绘制步骤。
4.简述数据词典在需求分析中的作用和编写数据词典的根本要求。
5.什么是根本加工?描述表达根本加工逻辑功能的构造化工具有那些?特点是什么?6.*银行发放贷款原则如下:〔1〕对于贷款未超过限额的客户,允许立即贷款;〔2〕对于贷款已超过限额的客户,假设过去还款记录好且本次贷款额在2万元以下,可作出贷款安排,否则拒绝贷款。
请用构造化语言、决策表来描述该原则。
7.依据如下决策表,画出决策树。
信件收费决策表8.下面是对银行取款活动的描述:储户携带存折前去银行,把存折和填好的取款单一并交给银行工作人员检验。
工作人员需核对帐目,发现存折有效性问题、取款单填写问题或是存折、帐卡与取款单不符等问题时,均应报告储户。
在检验通过的情形下,银行则应将取款信息登记在存折和帐卡上,并通知付款。
软件工程试题与答案-(17)1

1234123412软件工程试题及答案第一部分选择题一、单项选择题每小题1分,共20分。
(在每小题的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内)1.在下列工具与环境中()属于较早期的CASE。
A.基于信息工程CASE B.人工智能CASEC.结构的基于图形CASE D.集成的CASE环境2.Putnam成本估算模型是一个()模型。
A.静态单变量 B.动态单变量 C.静态多变量 D.动态多变量3.在McCall软件质量度量模型中,()属于面向软件产品修改。
A.可靠性 B.可重用性C.适应性 D.可移植性4.ISO的软件质量评价模型由3层组成,其中用于评价设计质量的准则是()A.SQIC B.SQMC C.SQRC D.SQDC5.软件复杂性度量的参数包括()A.效率 B.规模 C.完整性 D.容错性6.对象实现了数据和操作的结合,使数据和操作()于对象的统一体中。
A.结合 B.隐藏C.封装 D.抽象7.软件调试技术包括()A.边界值分析 B.演绎法 C.循环覆盖 D.集成测试8.瀑布模型的存在问题是()A.用户容易参与开发B.缺乏灵活性 C.用户与开发者易沟通 D.适用可变需求9.软件测试方法中的静态测试方法之一为()A.计算机辅助静态分析 B.黑盒法 C.路径覆盖 D.边界值分析10.软件生命周期中所花费用最多的阶段是()A.详细设计 B.软件编码 C.软件测试D.软件维护11.第一个体现结构化编程思想的程序设计语言是()A.FORTRAN语言B.Pascal语言 C.C语言D.PL/1语言12.程序的三种基本控制结构是()A.过程、子程序和分程序B.顺序、选择和重复 C.递归、堆栈和队列 D.调用、返回和转移13.在详细设计阶段,经常采用的工具有()A.PAD B.SA C.SC D.DFD14.详细设计的结果基本决定了最终程序的()A.代码的规模 B.运行速度 C.质量 D.可维护性15.需求分析中开发人员要从用户那里了解()A.软件做什么 B.用户使用界面 C.输入的信息 D.软件的规模16.结构化程序设计主要强调的是()A.程序的规模 B.程序的效率C.程序设计语言的先进性D.程序易读性17.IDEF。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
填空题
1.软件可维护性可用下面七个质量特性来衡量,即( )、( )、( )、( )、( )、( )和( )。
对于不同类型的维护,这七种特性的侧重点也不同。
2.临时维护小组采用“( )”或“( )”等方法来提高维护工作的效率。
3.为了支持应用软件系统,通常需要的文档有:( )文档、( )文档、( )文档、( )文档、( )文档。
4.提高软件可维护性的方法有( )、( )、( )、( )、( )。
5.长期维护小组由( )、( )、( )、( )等成员组成。
6.软件维护的内容有( )维护、( )维护、( )维护和( )维护四种。
7.有两类维护技术,它们是( )技术和( )技术。
8.维护的副作用有( )副作用、( )副作用、( )副作用三种。
9.用于软件维护工作的活动可分为两种:( )活动包括分析评价、修改设计和编写程序代码等。
( )活动包括理解程序代码功能、解释数据结构、接口特点和设计约束。
10不管维护类型如何,大体上要开展的技术工作包括:( )、( )、( )、( )、( )、( )。
11.为了保证可维护性,以下四类检查是非常有用的,这四类检查是:( )、( )、( )、( )。
12.度量一个可维护的软件的七种特性时采用的方法有:( )、( )、( )。
13.软件维护的流程为:( )、( )、( )、( )。
14. ( )是一种由用户产生的文档,它用作计划维护任务的基础。
15.面向维护的技术是在软件开发阶段用来减少错误、提高( )的技术。
面向维护的技术涉及软件开发的( )阶段。
维护支援技术是在软件维护阶段用来提高( )的技术。
16.必须在软件交付之前对整个( )进行( ),以减少文档副作用。
17.在软件交付使用后,由于在软件开发过程中产生的( )没有完全彻底在( )阶段发现,必然有一部分隐含错误带到( )阶段。
18.维护阶段是软件生存周期中时期( )的阶段,花费精力和费用( )的阶段。
19.采用手工方法开发软件只有程序而无文档,维护困难,这是一种( )维护;采用( )方法开发软件,各阶段均有文档,容易维护,这是一种( )维护。
20.所有软件维护申请报告要按规定方式提出,该报告也称( )报告。
21.软件维护费用增加的主要原因是维护的( )非常低。
22.为了提高软件的可维护性和可靠性而对软件进行的修改为( )。
23.软件可维护性是指软件功能被( )、( )、( )的容易程度。
24. 在软件维护中,因修改软件而导致出现的错误或其他情况称为( )。
25.为提高可维护性,要使用的先进的、强有力的、实用的软件开发方法是( )。
26.为了识别和纠正在运行中产生的错误而进行的维护称为( )维护。
27.为了使应用软件适应计算机硬件、软件及数据环境所发生的变化而修改软件的过程称为( )。
28. 为增加软件功能、增强软件性能、提高软件运行效率而进行的维护活动称为( )。
29.软件的( )、( )、( )是衡量软件质量的几个主要特性。