《现代软件工程》作业.
现代软件工程作业一

{
temp1 = temp0 + col_j;
grad_x =
grayImg.data[temp1 - width + 1]
+ 2 * grayImg.data[temp1 + 1]
}
}
for (int row_i = 1; row_i < height - 1; row_i += 1)
{
for (int col_j = 1; col_j < width - 1; col_j += 1)
{
int grad_y =
-grayImg.data[(row_i - 1) * width + col_j - 1]
{
if (NULL == grayImg.data)
{
cout << "image is NULL." << endl;
return SUB_IMAGE_MATCH_FAIL;
}
int width = grayImg.cols;
int height = grayImg.rows;
{
cout << "image is NULL." << endl;
return SUB_IMAGE_MATCH_FAIL;
}
int width = gradImg_x.cols;
int height = gradImg_x.rows;
for (int row_i = 1; row_i < height - 1; row_i++)
现代软件工程第二章答案

习题二参考答案一. 填空题1.值得去开发, 其中的问题能否解决,需求分析, 设计2. 技术, 经济, 社会3. 研究正在运行的系统, 建立新系统的高层逻辑模型4. 所建议系统的技术可行性分析, 所建议系统的经济可行性分析, 社会因素可行性分析5. 经济角度开发成本比较和权衡二、选择题1. A2. B【解析】:经济可行性是从开发费用和软件回报的角度来分析开发该软件系统是否可行。
技术可行性是从软件实现的功能、用户要求的软件性能、是否有技术难题等方面等考虑开发该软件的可行性问题。
操作可行性判断系统的操作方式在该用户组织内是否可行,法律可行性对方在考虑开发的软件系统可能会涉及的任何侵犯、妨碍、责任等问题做出决定。
所以答案为B。
3. B4. D5. D【解析】:在软件开发中,开发人员的交流似乎非常主要的,而一个开发人员进入一个新的软件系统做开发,需要相当长的一个阶段以适应该软件的开发,这主要是由于新的人员需要一定时间的培训以熟悉该软件系统的开发状况及该软件的需求分析、定义和相关已经生成的文档,以便在软件开发中与老开发人员的交流和通信,一推动软件开发前进。
所以答案为D。
6. D【解析】:软件的计划主要是根据软件开发的要求、软件系统的规模等,对软件开发的各种资源(包括软硬见资源及开发人员)进行合理的规划,以便在开发过程中得到合理的调度,从而使软件开发最充分地利用资源,以在最短的时间内取得最大的经济效益;软件工程经济学的任务是对软件开发的成本、效益等进行分析和估算;软件工程管理学的任务是有效组织和管理软件开发,软件工程开发技术的任务之一是设计和测试软件系统。
所以答案是D。
7. A 8. A 9. C 10. D三、简答题1.可行性研究首先需要进行概要的分析研究,初步确定项目的规模和目标,确定项目的约束和限制。
把它们清楚地列举出来。
然后,分析员进行简要的需求分析,经过压缩的设计,探索出若干种可供选择的主要解决方法。
《现代软件工程技术》完整版(加精)

1.3 软件工程方法 1. 结构化方法 所谓结构化方法是一种使用功能作为其 构造块的软件开发方法。这种被称为结构 化分析与设计的方法以功能组织软件。20 世纪70年代开始,这种方法成为主流。 结构化方法非常适合科学计算,因为在 大多数科学应用中,功能是十分稳定的, 因为自然法则很少变化。
但是,在企业应用中,在范围十分广阔 的信息管理应用中,功能是人定义的。不 同时间、不同地点、不同的人都会有不同 的定义。 把结构化方法应用到这些领域中,便产 生了不适应性。尤其是对大型软件,这种 不适应性尤为突出。软件设计师按照预先 约定的需求去开发软件,但是还没等到软 件发布,需求已经发生了变化。而且软件 只能定制,无法复用。
本表来源于Butler Bloor。下面的饼图是从各种渠 道得出的平均数:
软件生命周期各阶段的近似花费比例
软件开发阶段的错误率 开发阶段 费用% 引入错误% 发现错误% 纠错费用 需求分析 5 55 18 1.0 设计 25 30 10 1.0~1.5 代码及单 元测试 10 集成测试 50 10 50 1.0~5.0 确认及编 写文档 10 运行维护 5 22 10~100
但是很快就发现,数据建模方法与结构化 方法各占一半优点和缺点。结构化方法实际 上帮助开发者处理数据(尽管它不适应功能 变化),数据建模方法却不能帮助开发者管 理功能(尽管它适应稳定的数据)。 这两种方法的共同缺点是只使用一种系统 的视觉组织系统。 能否有一种支持系统所有视觉的范型的方 法来组织系统呢?有,这就是面向对象的方法.
能提交的功能 提交功能 <25% 25~49% 50~74% 75~99% 100% 所占百分比 4.6% 27.2% 21.8% 39.1% 7.3%
数据来自Standish集团对MIS组织的研究报告
软件工程三、四、五次作业(精选五篇)

软件工程三、四、五次作业(精选五篇)第一篇:软件工程三、四、五次作业第三次作业:1、已知某定货系统的需求分析阶段得到的DFD图如下,请按SD 方法的设计步骤画出其程序结构图。
2、某校的课酬计算方案如下:(l)基本课酬为每节课10元;(2)如果班级人数超过40人,课酬增加:基本课酬×0.1;(3)如果班级人数超过60人,课酬增加:基本课酬×0.2;(4)如果教师是副教授,课酬增加:基本课酬×0.1;(5)如果教师是教授,课酬增加:基本课酬×0.2;(6)讲师,课酬不增加;(7)助教,课酬减少:基本课酬×0.1。
请用判定表表达上述计算方案。
第四次作业:1、右图给出的程序流程图代表一个非结构化的程序,请问:(1)为什么说它是非结构化的?(2)设计一个等价的结构化程序。
(3)在(2)题的设计中你使用附加的标志变量flag了吗?若没用,请再设计一个使用flag的程序;若用了,再设计一个不用flag的程序2、一个正文文件由若干个记录组成,每条记录是一个字符串。
要求统计每条记录中大写字母、小写字符以及非字母字符的个数,要求输出数据格式是:每复制一行输入字符串后,输出这个字符串中的大写字母个数、小写字母个数、非字母字符个数。
用Jackson方法,按照步骤,导出该系统的程序结构图。
开始FTgqTpF停止第五次作业1、设计下列伪码程序的语句覆盖和路径覆盖测试用例:START INPUT(A, B, C)IF A>5THEN//判定表达式1X=10ELSEX=1 END IF IFB>10 THEN//判定表达式2Y=20 ELSEY=2 END IF IF C>15THEN//判定表达式3Z=30 ELSEZ=3 END IF PRINT(X, Y, Z)STOP3.假设你的任务是对一个已有的软件做重大修改,而且只允许你从下述文档中选取两份:(a)程序的规格说明;(b)程序的详细设计结果(自然语言描述加上某种设计工具表示);(c)源程序清单(其中有适当数量的注解)。
软件工程6-1

(1)由于程序流程图的特点,它本身并不是逐步求精的好工具. 因为它使程序员容易过早地考虑程序的具体控制流程,而忽略了程序的 全局结构; (2)程序流程图中用箭头代表控制流,这样使得程序员不受任何 约束,可以完全不顾结构程序设计的精神,随意转移控制;
(3)程序流程图在表示数据结构方面存在不足.
2, 盒图(N-S图) , 盒图( 图
6.4.3 程序设计风格
1,程序内部的文档 2,数据说明 3,语句构造 4,输入/输出 输入/ 5,效率
1, 程序内部的文档 ,
程序内部的文档包括:
(1)恰当的标识符(变量和标号)的名字; 恰当的标识符(变量和标号)的名字; 恰当的标识符 (2)适当的注释; 适当的注释; 适当的注释 (3)程序的视觉组织. 程序的视觉组织
2) (2)面向对象语言 对象+消息 对象 消息 例:Delphi,Visual Basic, JAVA,C++.
6.4.2 程序设计语言的选择 一般情况下,我们采用高级语言来编程. 选择具体高级语言类型的原则: 选择具体高级语言类型的原则: (1)系统的应用领域 ) (2)用户的要求 ) (3)软件的执行环境 ) (4)目标系统的性能要求 ) (5)程序员的知识水平 ) (6)软件的可移植性要求 )
4, 输入/输出 , 输入/
在设计和程序编码时,应考虑输入和输出风格原则: (1)对所有输入数据都进行校验,以保证每个数据的有 效性; 检查重要的输入项组合的合法性; 使得输入的步骤和操作尽可能简单,并保持简单的输 入格式; 输入一批数据时,使用输入结束指示符,不要要求用 户说明输入项数; (2)在以交互式输入/输出方式进行输入时,要指明可 以使用的选择值或界限值; 应允许缺省值; (3)当程序设计语言对输入/输出格式有严格要求时, 应保持输入格式与输入语句的要求一致; 给所有的输出加注释,并设计输出报表格式.
软件工程1-1

1.2 软件与软件危机
面对焦油坑,很多常用的办法就是人海战术。在《人月神话》 的第2章里,Brooks提出了著名的人月神话法则:向进度落后 的项目中增加人手,只会使进度更加落后。 Brooks的著名观点:人月神话是不存在的。(这就是人月神化 的出处) 反过来,软件开始是精英们的游戏?年轻的软件经理特别喜 欢由头等人才组成的小型、精干的队伍,而不是那些几百人的 大型团队,这里的“人”当然暗指平庸的程序员。Brooks认为, 寻求精英团队的想法是幼稚的。与其回避困难,还不如现实地 来讨论,如何在有意义的时间进度内创建大型的系统。 Brooks借助法国城市兰斯(Reims)在建筑风格上的一致性 的例子,说明,风格的一致和完整性来自8代拥有自我约束和 牺牲精神的建筑师们,他们每一个人牺牲了自己的一些创意, 以获得纯粹的设计。同样,这不仅显示了上帝的荣耀,同时也 体现了他拯救那些沉醉在自我骄傲中的人们的力量。
软件是开发出来的,不是制造出来的 软件可能被“废弃”,但不会“用坏” 软件大部分是定制的,而不是装配的
软件的复杂度
一个比较中等的项目 - 5-10 人 - 10-15 个月的开发 周期 - 3-5 个外部界面 - 一些不可知的事情 & 风险
更高的技术复杂性 - 嵌入式,实时的,分布式的,不可出错的 嵌入式,实时的,分布式的, - 定制的 空前的,可复用的 定制的, 空前的, - 高性能的
1.2 软件与软件危机
现实不容乐观
60年代(软件史前)的软件危机:
(1)对软件开发的进度和成本无法估计 (2)用户对已经开发完成的软件的满意度非常低 (3)软件质量无法保证 (4)软件开发后的维护工作很难进行 (5)软件通常没有合适的文档资料 (6)软件成本在系统总成本中所占的比例越来越高 (7)软件开发的生产率跟不上需求 1962年美国水手Ⅰ号因导航软件一个语句的语义错误,导致偏 离航线,任务失败。 阿波罗8号因计算机软件错误,造成存储器信息丢失。 阿波罗14号在飞行的10天中,出现了18个软件错误。 美国IBM公司的OS/360系统,花了几千人很多年的努力而失败
软件工程大作业题目讲解

软件工程大作业题目1.英汉小词典基本要求:实现类似“金山词霸”的英汉双向词典。
输入英文,显示词性、解释、音标和衍生词等。
输入中文,显示拼音和英文。
同时显示单词的索引,无需输入,只需点击就可查询。
高级要求:屏幕拾词2.围棋围棋是一种古老的运动,现在计算机大面积普及,围棋电子化也是一种大势所趋。
“围棋对弈”就是希望开发一个模拟现实中围棋对弈的软件平台,供人使用。
基本要求:实现围棋下子、提子、胜负判定功能,规则参照围棋界通用规则。
3.人机对弈(五子棋)基本要求:开发五子棋对弈的软件平台,进行人机对弈,实现下子和胜负判定功能,规则参照实际五子棋的通用规则。
4.游戏(挖地雷)Windows系统提供一个“挖地雷”的游戏,并具有高、中、低三个级别供用户选择。
用户按“开始”,系统进行计时,用户开始“挖”地雷,当把全部地雷都挖出,则获胜;只要碰到一个地雷就失败,只能从头开始。
地雷数目、分布位置随机产生,本游戏保存所有获胜盘的日期、开始和结束时间、地雷数。
游戏规则遵循Windows系统所提供的“挖地雷”游戏的规则。
5.计算器基本要求:Windows操作系统提供一个计算器,现要求开发一个能够完成Windows系统提供的计算器的所有功能。
高级要求:增强输入框的功能:用户可以在输入功能框中输入任何合法、非法的运算四则运算表达式,如果是合法表达式,计算器自动计算并显示结果,如果非法显示出错信息。
说明:1 合法的表达式:36.789*((23+68*45)-27/3747);2 非法的表达式:36.789*((23+68*45)-27/3747));67#67(3-2);6.源代码行数计数器基本要求:用户选择多个C或C++的程序文件,本软件能计算这些文件的源代码行数、空行行数和注解行数,计算结果显示并可保存在文件中。
高级要求:对C或C++程序进行美化,即按规则缩进,输出美化后的源程序文件。
7.画图板基本要求:实现MS Windows中“画图”软件的简单功能,包括用彩笔画直线、画矩形、画圆、用颜色填充一个区域、橡皮擦、颜色盒。
现代软件工程第9章作业

1.填空题(1)软件产品在交付使用之前一般要经过4步测试: 、、、。
(2)在单元测试中,测试一个模块是,需要设计。
(3)动态测试指通过发现错误。
对软件产品进行动态测试时,使用法。
静态测试是指不在机器上运行,而是采用和的手段对程序进行检测。
(4)白盒测试是测试,黑盒测试是测试。
(5)用白盒技术设计测试用例时,追求程序逻辑覆盖程度的几种常用覆盖技术为、、、、和。
(6)黑盒法把测试对象看成一个测试人员完全不考虑程序的和。
只在软件的处进行测试。
(7)采用黑盒技术设计测试用例的方法一般有、、、等四种。
(8)使用边界值分析方法设计测试用例时一般与结合起来。
但它不是从一个等价类中任选一个例子作为代表,而是将测试边界情况作为重点目标,选取、或边界值的测试数据。
(9)用等价类划分法设计测试用例时,如果被测试程序的某个输入条件规定了取值范围,则可确定一个合理的等价类和。
(10)软件测试的目的是,调试的目的是并,因此调试也成为。
2.选择题(1)软件测试的主要特点是()A.软件测试的开销大B.软件测试要依靠工具C.软件不能进行“穷举”测试D.软件测试要依靠人工(2)整体测试又称为组装测试,其主要内容包括()A.对整体的性能进行测试B.用白盒法设计测试用例进行测试C.确定组装策略和次序D.对组装过程进行测试(3)渐增式是将模块一个一个地连入系统,每连入一个模块()。
A.只需要对新连入的模块进行测试B.都不需要再进行测试C.要对新子系统进行测试D.都要进行回归测试(4)静态测试是以人工的、非形式化的方法对程序进行分析和测试。
常用的方法有()A.运行程序并分析运行结果B.桌前检查与代码会审C.数据流分析图D.调用图(5)集成过程的()A.按照模块的大小集成B.尽早测试包含I/O的模块C.尽早测试关键模块D.按照“输入-处理-输出”的次序进行集成(6)关于白盒法覆盖程度的论述中正确的是()A.语句覆盖:选择测试用例使程序中每条语句至少被执行一次B.判定覆盖: 选择测试用例使程序中每个判定至少获得一次“真”值和一次“假”值C.条件覆盖:选择测试用例使每个条件都满足D.条件组合覆盖:将所有的判定条件都组合起来执行(7)软件测试的基本原则是()A.关键是注重选择高效的测试用例B.选择尽可能多的测试用例C.尽量不由程序设计者进行测试D.充分注意测试中的群集现象(8)等价分类法的关键是()A.确定等价类的边界条件B.按照用例来确定等价类C.划分等价类D.确定系统中相同和不同的部分(9)调试的目的是为了()A.证明软件符合设计要求B.发现软件中的错误和缺陷C.改善软件的功能和性能D.发掘软件的潜在能力(10)①实现阶段进行,它所依据的功能模块描述和内部细节及测试方案就在②阶段完成,目的是发现编程错误。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《现代软件工程》作业作业一:(一)名词解释1.软件危机2.数据流图3.数据字典4.变换流5.事务流6.耦合性7.内聚性8.程序设计语言(PDL)(二)填空题1. 在信息处理和计算机领域内,一般认为软件是_____、_____ 和_____ 。
2. 数据流图的基本组成部分有_____、_____、_____、_____。
3. 数据流图和数据字典共同构成了系统的_____模型,是需求规格说明书的主要组成部分。
4. 数据流图一般可分为_____和_____两类。
5. 结构化设计方法中,要把数据流图转换成软件结构,若某个加工将它的输入流分离成许多发散的数据流,形成许多加工路径,并根据输入的值选择其中一个路径来执行,这种特征的DFD称为_____数据流图。
6. PDL是描述处理过程“_____ ”的细节,结构化语言是描述加工“_____ ”的。
(三)选择题1. 软件工程的概念是哪年提出的( )。
A. 1988B. 1968C. 1948D. 19282. 影响输入输出风格的因素不包括( )。
A. 数据状态B. 通信环境C. 用户经验D. 输入/输出设备3. 符合数据说明顺序规范的是( )。
A. 全程量说明、局部量说明、类型说明、常量说明B. 全程量说明、局部量说明、常量说明、类型说明C. 类型说明、常量说明、全程量说明、局部量说明D. 常量说明、类型说明、全程量说明、局部量说明4. 瀑布模型的关键不足在于( )。
A. 过于简单B. 各个阶段需要进行评审C. 过于灵活D. 不能适应需求的动态变更5. 以下哪一项不是软件危机的表现形式( )。
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. 流程图B. IPO图C. 盒图D. PAD图(四)简答题1. 简述瀑布模型的阶段划分和各阶段的主要任务以及瀑布模型存在的问题。
2. 简述SA方法的优缺点。
3. 变换分析设计与事务分析设计有什么区别?简述其设计步骤。
(五)应用题某单位住房分配方案如下:所有住户50平方米以内每平方米1000元,超过50平方米后:在本人住房标准面积以内每平方米1500元,其中住房标准为:教授105平方米,副教授90平方米,讲师75平方米;标准面积以外每平方米4000元。
请用判定表和判定树表示各条件组合与费用之间的关系。
作业二:(一)名词解释1. 软件测试2. 语句覆盖3. 结构化维护4. 软件可维护性5. COCOMO估算模型6. 动态模型7. 功能模型8. 数据流图9. 事件跟踪图10.状态图(二)填空题1. 渐增式测试有三种不同的组装模块的方法:_____、_____和_____。
2. 自顶向下渐增式测试不需要编写_____模块,只需要编写_____模块,其步骤是从_____模块开始,沿着被测程序的_____的控制路径逐步向下测试,它有两种组合策略:_____和_____。
3. 自底向上渐增式测试不需要编写_____模块,只需要编写_____模块。
4. 软件配置审查的任务是检查软件的所有文档资料的_____和_____。
5. 调试也称_____,是在成功的测试之后才开始进行,其目的是确定错误的_____和_____,并改正错误。
6. 调试技术包括_____、_____、_____和_____。
7. 回溯法调试是从_____出发,而归纳法调试是从_____入手。
8. 预防性维护指为了提高软件_____和_____而对软件做出的修改。
9. 为了有效地进行软件维护,应事先开始_____,建立维护机构,这种维护机构通常以_____形式出现。
10. 软件工程管理中,控制包括_____、_____、_____和_____。
11. 在类的层次结构中,通常上层类称为______或______,下层类称为______。
12. 对象之间进行通信的构造叫做______。
在对象的操作中,当一个消息发送给某个对象时,消息包含接收对象去执行某种操作的信息。
接收消息的对象经过______,然后给予______,这种通信机制称为______。
13. 类中操作的______叫做方法,一个方法有______、______、______。
当一个对象接收一条消息后,它所包含的方法决定对象______。
14. 面向对象的特征是______、______、______、______。
15. 抽象是指强调实体的______、______,忽略一些无关紧要的属性。
类实现了对象的______和______的抽象,它是对象的共性的抽象。
16. 封装性是指所有软件部件内部都有明确的______以及清楚的______。
每个软件部件都有友好的______,软件部件的______与______分离。
17. 注释说明了_____的功能,它分为_____和_____。
(三)选择题1. 就软件产品的特点,以下说法错误的是( )。
A. 软件具有高度抽象性,软件及软件生产过程具有不可见性B. 同一功能软件的多样性,软件生产过程中的易错性C. 软件在开发和维护过程中的不变性D. 不同开发者之间思维碰撞的易发性2. 不属于软件项目进度安排的主要方法是( )。
A. 工程网络图B. Gantt图C. 任务资源表D. IFD图3. 以下说法错误的是( )。
A. 文档仅仅描述和规定了软件的使用范围及相关的操作命令B. 文档也是软件产品的一部分,没有文档的软件就不成软件C. 软件文档的编制在软件开发工作中占有突出的地位和相当大的工作量D. 高质量文档对于发挥软件产品的效益有着重要的意义4. 在软件项目管理过程中作为软件开发工作的第一步的一个关键活动是( )。
A. 编写规格说明书B. 制定测试计划C. 编写需求说明书D. 制定项目计划5. 一个项目是否开发,从经济上来说是否可行,归根结底是取决于( )。
A. 成本估算B. 项目计划C. 工程管理D. 工程网络图6. 以下说法错误的是( )。
A. 软件配置管理简称SCIB. 软件配置项是配置管理的基本单位C. 软件配置实际上是一动态的概念D. 软件工程过程中某一阶段的变更均要引起软件配置的变更7. 软件工程比其他工程管理更为( )。
A. 容易B. 困难C. 迅速D. 迟缓8. 应用执行对象的操作可以改变该对象的( )。
A. 属性B. 功能C. 行为D. 数据9. 通过执行对象的操作改变该对象的属性,但它必须通过( )的传递。
A. 接口B. 消息C. 信息D. 操作10. 在面向对象的设计中,我们应遵循的设计准则除了模块化、抽象、低耦合、高内聚以外,还有( )。
A. 隐藏复杂性B. 信息隐蔽C. 经常类的复用D. 类的开发11. 软件开发过程中,抽取和整理用户需求并建立问题域精确模型的过程叫( )。
A. 生存期B. 面向对象设计C. 面向对象程序设计D. 面向对象分析12. 面向对象的主要特征除对象惟一性、封装、继承外,还有( )。
A. 多态性B. 完整性C. 可移植性D. 兼容性13. 在考察系统的一些涉及时序和改变的状况时,要用动态模型来表示。
动态模型着重于系统的控制逻辑,它包括两个图:一个是事件追踪图,另一个是( )。
A. 数据流图B. 状态图C. 系统结构图D. 时序图14. 面说法正确的是( )。
A. 经过测试没有发现错误说明程序正确B. 测试的目标是为了证明程序没有错误C. 成功的测试是发现了迄今尚未发现的错误的测试D. 成功的测试是没有发现错误的测试15. ( )能够有效地检测输入条件的各种组合可能会引起的错误。
A. 等价类划分B. 边界值分析C. 错误推测D. 因果图16火车是一种陆上交通工具。
火车和陆上交通工具之间的关系是( )关系。
A. 组装B. 整体部分C. has aD. 一般具体17. 对象模型的描述工具是( )。
A. 状态图B. 数据流图C. 对象图D. 结构图18. 面向对象的主要特征除对象惟一性、封装、继承外,还有( )。
A. 多态性B. 完整性C. 可移植性D. 兼容性19. 对白盒测试和黑盒测试补充的一种有效方法是加强阶段( )。
A. 调试B. 评审C. 维护D. 自测试20. 如果编写系统软件,可选用( )语言。
A. FoxProB. CC. COBOLD. FORTRAN21. 如果采用快速原型开发软件适宜选用( )语言。
A. 4GLB. 汇编C. AdaD. Java(四)简答题1. 简述软件测试与软件调试的区别。
2. 简述软件维护的流程。
3. 什么是软件配置管理?什么是基线?4. 面向对象设计的启发规则是什么?5. 什么是程序设计风格?为了具有良好的设计风格,应注意哪些方面的问题?(五)应用题1.某商场在“五一”期间,顾客购物时收费有4种情况:普通顾客一次购物累计少于100元,按A类标准收费(不打折),一次购物累计多于或等于100元,按B类标准收费(打9折);会员顾客一次购物累计少于1000元,按C类标准收费(打8折),一次购物累计等于或多于1000元,按D类标准收费(打7折)。
测试对象是按以上要求计算顾客收费模块,按照路径覆盖法设计测试用例。
2. 交通工具分为空中、陆上、水上交通工具,空中交通工具分为客机、货机、专用轻型机;陆上交通工具分为火车、汽车,火车和汽车又分客车、货车,水上交通工具有轮船,轮船分为客轮、货轮、客货混合轮。
建立交通工具的对象模型。