软件工程课自测题3
软件工程测试题+参考答案
软件工程测试题+参考答案一、单选题(共40题,每题1分,共40分)1、窃听是一种()攻击,攻击者()将自己的系统插入到发送站和接收站之间。
截获是一种()攻击,攻击者()将自己的系统插入到发送站和接受站之间。
A、被动,无须,主动,必须B、被动,必须,主动,无须C、主动,无须,被动,必须D、主动,必须,被动,无须正确答案:A2、如果一名攻击者截获了一个公钥,然后他将这个公钥替换为自己的公钥并发送给接收者,这种情况属于哪一种攻击?A、重放攻击B、Smurf 攻击C、中间人攻击D、字典攻击正确答案:C3、黑客攻击服务器以后,习惯建立隐藏用户,下列哪一个用户在DOS命令net user下是不会显示的。
A、fg#B、fg%C、fg_D、fg$正确答案:D4、下列哪一种方法在支持向量机中有应用A、拉格朗日乘子法B、二分法C、最小二乘法D、极大似然估计正确答案:A5、设顺序线性表的长度为30,分成5块,每块6个元素,如果采用分块查找,则其平均查找长度为A、6B、6.5C、11D、5正确答案:B6、对N个元素的表做顺序查找时,若查找每个元素的概率相同,则平均查找长度为A、NB、N/2C、(N+1)/2D、[(1+N)*N ]/2正确答案:C7、信息安全中PDR模型的关键因素是()。
A、人B、客体C、技术D、模型正确答案:A8、某业务系统具有上传功能,页面上传的文件只能上传到UPLOAD目录,由于上传页面没有过滤特殊文件后缀,存在上传漏洞,而短时间厂家无法修改上传页面源码,现采取如下措施,哪种措施可以暂时防止上传漏洞危害又不影响业务系统正常功能。
A、禁止UPLOAD目录访问权限B、删除上传页面C、禁止UPLOAD目录执行脚本文件D、以上措施都不正确正确答案:C9、在各种作业调度算法中 , 若所有作业同时到达 , 则平均周转时间最短的算法是()。
A、多级反馈队列调度算法B、先来先服务调度算法C、高优先级优先调度算法D、短作业优先调度算法正确答案:D10、下面()不是数据字典的内容。
软件工程模拟试题3答案.docx
软件工程模拟试题3答案一、选择题(20分,每小题2分)1、软件需求分析的任务不包括(C )。
A、问题分析B、信息域分析C、结构化设计C、确定逻辑结构2、进行需求分析有的多种描述工具,但不包括(C )。
A、数据流图B、判定表C、PAD图D、数据词典3、在需求分析过程中,分析员要从用户那里解决的最重要的问题是(A )。
A、要求软件做什么B、要给软件提供哪些信息C、要求软件工作效率如何D、要求软件具有什么样的结构4、软件测试的目的是(B )。
A、评价软件的质量B、发现软件的错误C、找出软件中的所有错误D、证明软件是正确的5、以下软件成本估算模型中,是动态多变量的模型有(CD )。
A、Halstead 理论模型B、Deiphi专家估算模型C、Putnam估算模型D、COCOMO模型6、关于快速建立渐进原型(RCP法)的论述不正确的是(C)。
A、RCP法建立的原型反映了系统的某些主要特征。
B、RCP法采用循环渐进的开发方式,对系统模型作连续精化。
C、RCP法建立需求规格原型,当需求说明一旦确定原型被废弃。
D、RCP法也称为追加(addon)型的原型化方法。
7、面向对象的开发方法的工作模型是(B )。
A、瀑布模型B、喷泉模型C、智能模型D、循环模型8、白盒法又称为逻辑覆盖法,主要用于(D )。
A、功能测试B、系统测试C、a测试D、单元测试9、结构化分析方法(SA法)使用的主要描述工具有(D )。
A、数据库B、模块结构图C、PAD图D、分层的DFD图10、UML中,包图是一种(C )。
A、集合B、数据结构C、分组机制D、对系统的动态描述二、简答题(45分)1、(15分)什么是软件复用?分析说明为什么面向对象的开发方法为软件复用技术提供了良好的环境?软件复用是将已有的软件成分用于构造新的软件系统,以达到提高软件系统的开发质量与效率,降低开发成本的目的。
可复用的软件成分一称为可复用构件(Reusable Component),从旧软件中提取,也可以专门为复用而开发。
)《软件工程》在线自测试卷 3
试题1.第1题单选题检查软件产品是否符合需求定义的过程称为______。
A、确认测试B、集成测试C、验收测试D、系统测试标准答案:A您的答案:题目分数:5此题得分:0.0批注:2.第2题单选题下面对软件的可维护性影响最小的是______。
A、可理解性B、可测试性C、可修改性D、代码效率。
标准答案:C您的答案:题目分数:5此题得分:0.0批注:3.第3题单选题软件文档是软件工程实施中的重要万分它不仅是软件开发各阶段的重要依据,而且与影响软件的______。
A、可理解性B、可维护性C、可扩展性D、可移植性标准答案:A您的答案:题目分数:5此题得分:0.0批注:4.第4题单选题随着软硬件环境变化而修改软件的过程是______。
A、改正性维护B、适应性维护C、完善性维护D、预防性维护标准答案:B您的答案:题目分数:5此题得分:0.0批注:5.第5题单选题软件维护困难的主要原因是______。
A、费用低B、人员少C、开发方法的缺陷D、得不到用户支持标准答案:C您的答案:题目分数:5此题得分:0.0批注:6.第6题单选题以下判断正确的是______。
A、所谓软件开发就是编写程序。
B、利用软件工程的思想,已成功的解决了软件危机。
C、完成软件测试工作以后,为了缩短程序的长度应删除程序中的注释。
D、一般来说,程序中存在错误的概率与在该段程序中已发现的错误数成正比。
标准答案:D您的答案:题目分数:5此题得分:0.0批注:7.第7题单选题产生软件维护的副作用,是指______。
A、开发时的错误B、隐含的错误C、因修改软件而造成的错误D、运行时误操作标准答案:D您的答案:题目分数:5此题得分:0.0批注:8.第8题单选题软件维护的四类维护活动是______。
A、改正性维护,适应性维护,完善性维护和预防性维护。
B、适应性维护,完善性维护,抢救性维护和辅助性维护。
C、改正性维护,适应性维护,完善性维护和辅助性维护。
D、适应性维护,完善性维护,抢救性维护和预防性维护。
软件工程课自测题+答案
.软件工程自测题(一)一、单项选择题1. 软件危机具有下列表现( D )。
I. 对软件开发成本估计不准确II. 软件产品的质量往往靠不住III. 软件常常不可维护IV. 软件成本逐年上升A. I、II和IIIB. I、III和IVC. II、III和IVD. 以上都正确2. 软件生命周期一般都被划分为若干个独立的阶段,其中占用精力和费用最多的阶段往往是()。
A. 运行和维护阶段B. 设计阶段C. 代码实现阶段D. 测试阶段3. 下列属于软件的特点的是(D )。
A. 软件是一种逻辑实体,具有抽象性B. 软件在使用过程中没有磨损、老化的问题C. 软件不同于一般程序,它的一个显著特点是规模庞大,复杂程度高D. 以上都正确4. 软件工程的出现是由于()。
A. 软件危机的出现B. 计算机硬件技术的发展C. 软件社会化的需要D. 计算机软件技术的发展5. 软件开发技术不包含()。
A. 软件开发方法学B. 软件工程环境C. 软件工具D. 软件质量度度量6. 软件工程的课程特点( B )。
I. 学科理论及其知识应用的多维性II. 工程化III. 浓厚的方法学色彩IV. 实践性、指导性强A. I、II和IIIB. I、III和IVC. II、III和IVD. 以上都正确7. 下列属于应用软件的是( B )。
I. 计算机辅助教学软件II. 软件测试工具III. 办公自动化软件IV. 工程与科学计算软件A. I、II和IIIB. I、III和IVC. II、III和IVD. 以上都正确8. 需求分析阶段最重要的技术文档是()。
A. 设计说明书B. 需求规格说明书C. 可行性分析报告D. 用户手册9. 以下关于数据流图的说法错误的是()。
A. 数据流图舍去了具体的物质,只剩下数据的流动、加工处理和存储B. 数据流图是用作结构化分析的一种工具1C. 传统的数据流图中主要由加工、数据源点/终点、数据流、控制流、数据存储组成D. 数据流图的绘制采用自上向下、逐层分解的方法10. 数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是()。
软件工程测试题及答案
软件工程测试题及答案一、单项选择题(每题2分,共20分)1. 软件测试的目的是:A. 证明软件无缺陷B. 证明软件存在缺陷C. 证明软件符合需求规格D. 证明软件符合设计答案:B2. 黑盒测试主要关注:A. 内部逻辑B. 输入输出关系C. 代码结构D. 内部数据结构答案:B3. 白盒测试主要关注:A. 内部逻辑B. 输入输出关系C. 代码结构D. 内部数据结构答案:A4. 单元测试通常由谁执行:A. 客户B. 测试人员C. 开发人员D. 项目经理答案:C5. 系统测试的目的是:A. 测试单个模块B. 测试整个系统C. 测试集成后的模块D. 测试用户界面答案:B二、多项选择题(每题3分,共15分)1. 以下哪些属于软件测试的类型:A. 单元测试B. 集成测试C. 系统测试D. 性能测试E. 回归测试答案:ABCDE2. 软件测试过程中可能使用到的测试用例设计技术包括:A. 等价类划分B. 边界值分析C. 决策表D. 错误猜测E. 随机测试答案:ABCDE3. 软件测试的阶段包括:A. 单元测试B. 集成测试C. 系统测试D. 验收测试E. 性能测试答案:ABCD三、填空题(每空1分,共10分)1. 软件测试的目的是________。
答案:发现软件缺陷2. 软件测试的基本原则是________。
答案:测试显示存在缺陷3. 软件测试的目的是________,而不是证明软件没有缺陷。
答案:发现错误4. 软件测试的目的是________,而不是证明软件符合需求。
答案:发现错误5. 软件测试的目的是________,而不是证明软件符合设计。
答案:发现错误四、简答题(每题5分,共20分)1. 简述软件测试的重要性。
答案:软件测试是确保软件质量的关键环节,它能够发现软件中的错误和缺陷,从而提高软件的可靠性和稳定性,减少用户在使用过程中遇到的问题。
2. 描述软件测试的一般过程。
答案:软件测试的一般过程包括测试计划、测试设计、测试实施、测试评估和测试报告。
《软件工程》试题及参考答案(第3套)
厦门理工软件学院2011 –2012 学年度下期《软件工程》试题(第3套)题号一二三四五总分题分第一部分选择题一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做( )A.软件工程B.软件周期C.软件危机D.软件产生2.研究开发所需要的成本和资源是属于可行性研究中的研究的一方面。
( )A.技术可行性B.经济可行性C.社会可行性D.法律可行性3.模块的内聚性最高的是( )A.逻辑内聚B.时间内聚C.偶然内聚D.功能内聚4.在SD方法中全面指导模块划分的最重要的原则是( )A.程序模块化B.模块高内聚C.模块低耦合D.模块独立性5.软件详细设计主要采用的方法是( )A.模块设计B.结构化设计C.PDL语言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.项目开发计划C.概要设计说明书D.操作手册12.下列模型属于成本估算方法的有( )A.COCOMO模型B.McCall模型C.McCabe度量法D.时间估算法13. ()是把对象的属性和操作结合在一起,构成一个独立的对象,其内部信息对外界是隐蔽的,外界只能通过有限的接口与对象发生联系。
软件工程课自测题+答案
软件工程自测题(一)
一、单项选择题
1. 软件危机具有下列表现( D )。
I. 对软件开发成本估计不准确
II. 软件产品的质量往往靠不住
III. 软件常常不可维护
IV. 软件成本逐年上升
A. I、II 和 III
B. I、III 和 IV
C. II、III 和 IV
D. 以上都正确
2. 软件生命周期一般都被划分为若干个独立的阶段,其中占用精力和费用最多的阶段往往是( )。
2
(2. 错误。一般说来,模块的内聚程度越高,它们之间的耦合程度也就越低。) 3. 软件测试只能证明程序有错误,不能证明程序没有错误。 4. 结构化程度设计方法能改善程序结构,提高程序的运行效率。 (4. 错误。 结构化程度设计方法能改善程序结构,但往往会降低程序的运行效率。) 5. 如果测试数据满足条件覆盖,则必然满足判定覆盖。 (5. 错误。对于特定的程序而言,满足条件覆盖的测试数据不一定必然满足判定覆盖。) 四、综合题 1. 求 100~1000 间的素数。请画出描述该问题的 N-S 图。
D. 数据流图的绘制采用自上向下、逐层分解的方法
10. 数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是(
)。
A. 数据库设计
B. 数据通信
C. 数据定义
D. 数据维护
11. 需求分析阶段的研究对象是(
)。
A. 系统分析员要求
B. 用户要求
C. 软硬件要求
D. 系统要求
12. 结构化方法的基本原则是(
4
(2)程序流程图描述是:
5
6
软件工程自测题(二)
一、填空题
1. 软件 是计算机程序及其说明程序的各种文档。 程序 是计算机任务的处理对象和处理规则的描述; 文档
软件工程课自测题及答案1.docx
7. A. I 、II 和 III B.I 、 下列属于应用软件的是( I.计算机辅助教学软件III 和 IV B )。
C. IL III 和IV D.以上都正确 II.软件测试工具一、单项选择题B. I 、III 和 IVC. II 、III 和 IVD.以上都正确2. 软件生命周期一般都被划分为若干个独立的阶段,其中占用精力和费用 最多的阶段往往是(A )。
A. 软件是一种逻辑实体,具有抽象性B. 软件在使用过程中没有磨损、老化的问题D.以上都正确I. 学科理论及其知识应用的多维性 II. 工程化III. 浓厚的方法学色彩IV, 实践性、指导性强1.软件危机具有下列表现(D )。
I. 对软件开发成本估计不准确 II. 软件产品的质量往往靠不住 III. 软件常常不可维护 IV. 软件成本逐年上升A. I 、II 和 IIIA.运行和维护阶段B.设计阶段C.代码实现阶段D.测试阶段3. 下列属于软件的特点的是( D )。
C.软件不同于一般程序, 它的一个显著特点是规模庞大,复杂程度高4. 软件工程的出现是由于 )。
5. A.软件危机的出现 C.软件社会化的需要软件开发技术不包含( )。
B.计算机硬件技术的发展 D.计算机软件技术的发展 A. 软件开发方法学 B. 软件工程环境C.软件工具D,软件质量度度量 6. 软件工程的课程特点()。
III.办公自动化软件IV,工程与科学计算软件A.I、II 和IIIB.I、III 和IVC. II、III 和IVD.以上都正确8.需求分析阶段最重要的技术文档是(B )。
A.设计说明书B.需求规格说明书C.可行性分析报告D.用户手册9.以下关于数据流图的说法错误的是(C )。
A.数据流图舍去了具体的物质,只剩下数据的流动、加工处理和存储B.数据流图是用作结构化分析的一种工具C.传统的数据流图中主要由加工、数据源点/终点、数据流、控制流、数据存储组成D.数据流图的绘制采用自上向下、逐层分解的方法10.数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是(C )。
《软件工程》试题及参考答案(第3套)
《软件工程》试题(第3套)第一部分选择题一、单项选择题(本大题共20小题,每小题1分,共20分)1.需求分析中,开发人员要从用户那里解决的最重要的问题是( )。
A、要让软件做什么B、要给该软件提供哪些信息C、要求软件工作效率怎样D、要让该软件具有何种结构2.DFD中的每个加工至少有( )。
A、一个输入流或一个输出流B、一个输入流和一个输出流C、一个输入流D、一个输出流3.详细设计与概要设计衔接的图形工具是( )。
A、DFD图B、SC图C、PAD图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.详细设计说明C.项目开发计划D.概要设计说明与详细设计说明12、 CMM提供了一个框架,将软件过程改进的进化步骤组织成5个成熟度等级。
除第1级外,每个等级都包含了实现该成熟度等级目标的若干()。
A 关键实践B 关键过程域C 软件过程能力D 软件过程13. 详细设计与概要设计衔接的图形工具是( )A. DFD图B. 程序图C. PAD图D. SC图14. 测试的关键问题是 ( )A. 如何组织对软件的评审B. 如何验证程序的正确性C. 如何采用综合策略D. 如何选择测试用例15.研究开发所需要的成本和资源是属于可行性研究中的( )研究的一方面。
国开-软件工程-软件设计-自测3答案
1.随着模块规模减小,模块开发成本(),模块集成成本()。
选择一项:A. 减小/减小B. 增加/减小C. 增加/增加D. 减小/增加反馈Your answer is correct.正确答案是:减小/增加题目2正确获得1.00分中的1.00分标记题目题干2.反映模块独立性的指标是()。
选择一项:A. 模块的大小B. 内聚和耦合C. 模块的参数D. 模块的复杂性反馈Your answer is correct.正确答案是:内聚和耦合题目3正确获得1.00分中的1.00分标记题目题干3.非直接耦合的模块独立性最强,()的模块独立性最弱。
选择一项:A. 外部耦合B. 内容耦合C. 控制耦合D. 数据耦合反馈Your answer is correct.正确答案是:内容耦合题目4正确获得1.00分中的1.00分标记题目题干4.内容耦合是模块间最紧密的耦合,()是模块间最松散的耦合。
选择一项:A. 非直接耦合B. 控制耦合C. 外部耦合D. 数据耦合反馈Your answer is correct.正确答案是:非直接耦合题目5正确获得1.00分中的1.00分标记题目题干5.在对软件系统进行模块设计的时候,可以有不同的抽象层次,可以用(),配合面向问题的专业术语,概括地描述问题的解法。
选择一项:A. 自然语言B. 流程图C. 直接实现的方式D. 过程化的描述方法反馈Your answer is correct.正确答案是:自然语言题目6正确获得1.00分中的1.00分标记题目题干6.人们在认识复杂问题的过程中,使用最强有力的思维工具就是()选择一项:A. 模块化B. 抽象C. 信息隐蔽D. 内聚和耦合反馈Your answer is correct.正确答案是:抽象题目7正确获得1.00分中的1.00分标记题目题干7.信息隐藏的核心内容是()。
选择一项:A. 一个模块的内部信息不允许其他模块直接访问B. 把信息加密,只能让有密钥的模块访问C. 数据不能被其他模块访问D. 把数据都放在公共的区域反馈Your answer is correct.正确答案是:一个模块的内部信息不允许其他模块直接访问题目8正确获得1.00分中的1.00分标记题目题干8.每个子系统的接口定义了若干(),体现了子系统的功能,而功能的具体实现方法应该是隐藏的。
软件工程自测试卷
自测试卷一.单项选择(1×20)1. 在开发软件项目时,生产率并不一定随参与人数的增加而成比例增加,其主要原因是()。
A. 工作阶段间的等待时间B. 产生原型的复杂性C. 参与人员所需的工作站数目D. 参与人员之间通信困难2. ()引入了“风险驱动”的思想,是用于大规模的内部开发项目。
A. 增量模型B. 喷泉模型C. 原型模型D. 螺旋模型3. 在数据流图中,当数据流向或流自文件时()。
数据流要命名,数据存储不必命名数据流不必命名,有数据存储名就足够了数据流和数据存储均要命名,因为流入和流出的数据流时不一样的数据流和数据存储(或文件)都不要命名,通过加工可自然反映4. 在数据流图中,符号□用来表示()。
A. 处理B. 外部实体C. 数据存储D. 数据源点5. 软件危机的主要表现中包括软件质量差,而引起软件质量差的主要原因是()。
没有软件质量标准软件开发人员素质较差用户经常干预软件开发工作软件开发人员未遵循国际软件质量标准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.白盒测试方法C. 灰盒测试方法D. 软件验证方法12. 回归测试是()中最常用的方法。
软件工程08091第3套试题
北华大学计算机科学技术学院2008-2009学年第 1 学期《软件工程》课程期末考试试卷( 3 )一、填空(每题1分,共10分)1.是软件生存周期中时间最长的阶段。
2.面向规模的度量是以软件的为基础的直接度量。
3.计算机系统工程包括硬件工程、软件工程、、数据库工程等4个子工程。
4.需求描述的主要任务是以需求模型为基础,生成和初步的用户手册,并制定软件产品验收测试计划。
5.在数据流分析方法中适于复杂数据建模的工具是。
6.Jackson方法在需求分析阶段的主要步骤是:①标识实体与行为;②生成实体结构图;③。
7.Coad/Yourdon面向对象的方法包含:、标识对象的属性、识别对象的行为、识别对象所属的类和定义主题词等步骤。
8.是根据需求分析的阶段成果来确定软件和数据的总体框架。
9.以为输入,将其用某种程序设计语言翻译成计算机可理解并运行的代码的过程,称为编码。
10.由于修改程序而没有对文档进行相应的修改而引起的维护副作用称为。
二、单项选择(每题1分,共20分)1.软件是一种逻辑产品,它的开发主要是()。
A)研制B)拷贝C)再生产D)复制2.软件生命周期一般包括:软件开发期和软件运行期,下述()不是软件开发期所应包含的内容。
A)需求分析B)结构设计C)程序编制D)软件维护3.()是对软件产品、过程、资源等使用历史资料或经验公式等进行预测。
A)测量B)度量C)估算D)指标4.在软件工程中,不属于软件定义部分的任务是()。
A)软件验收测试计划B)组装测试计划C)需求分析D)软件项目计划5.软件需求分析阶段建立原型的主要目的是()。
A)确定系统的规模B)确定系统的运行要求C)确定系统是否满足用户需要 D)确定系统是否满足开发人员需要6.DFD中的每个加工至少有()。
A)一个输入流或一个输出流B)一个输入流和一个输出流C)一个输入流D)一个输出流7.DSSD和JSD方法统称为()的系统开发方法。
A)面向对象B)面向数据流C)面向数据D)面向控制流8.下列选项中,不能成为潜在对象的是()。
2024年下半年自考试02333软件工程部分真题含解析
2024年下半年自考试02333软件工程部分真题一、单项选择题1、类的状态机一般有几种不同的运行状态,其中处于等待接收事件,接收处理完事件后又进入等待状态,通常采用______。
A.IdleB.InitializingC.CommandD.Active2、RUP的分析类包括边界类、实体类和______。
A.子类B.控制类C.父类D.活动类3、CMMI组织过程改善的成熟度等级中的2级是______。
A.已执行级B.已定义级C.已管理级D.已定量管理级4、软件生存周期是指______。
A.开发软件的全部时间B.使用软件的全部时间C.开发和使用软件的全部时间D.从形成概念开始到最后淘汰让位于新的软件产品的时间5、软件工程在20世纪60年代末到80年代初获得的主要成果有______。
A.CASE产品B.面向对象语言C.瀑布模型D.软件生存周期过程6、下列可用于概念模型和软件模型的动态结构的是______。
A.类图B.对象图C.部署图D.用况图7、结构精细化设计过程中,为了提高模块的独立性,应遵循的原则是______。
A.低内聚高耦合B.低内聚低耦合C.高内聚低耦合D.高内聚高耦合8、黑盒测试技术又称为功能测试技术,包括事务处理流程技术、定义域测试技术和______。
A.路径测试技术B.用例测试技术C.状态测试技术D.结构测试技术9、RUP中,用于捕获系统语境中的一些重要领域对象,其中领域对象表达系统工作环境中存在的事物或发生的事件,领域模型一般采用______。
A.PAD图B.流程图C.类图D.N-S图10、RUP的迭代、增量式开发过程中,需要估算成本、进度,并能够减少次要的错误风险,至少需要完成______。
A.初始阶段B.精化阶段C.构造阶段D.移交阶段11、下列不属于创建一个系统的类图步骤是______。
A.模型化待建系统中的概念,形成类图中基本元素B.模型化待建系统中的各种关系,形成该系统的初始关系C.模型化系统中的接口,不需给出该系统的最终类图D.模型化逻辑数据库模式12、《ISO/IEC软件生存周期过程12207-1995》标准按过程主体把软件生存周期过程分为基本过程、组织过程和______。
《软件工程》试题及参考答案(第3套)
《软件工程》试题(第3套)第一部分选择题一、单项选择题(本大题共20小题,每小题1分,共20分)1.需求分析中,开发人员要从用户那里解决的最重要的问题是( )。
A、要让软件做什么B、要给该软件提供哪些信息C、要求软件工作效率怎样D、要让该软件具有何种结构2.DFD中的每个加工至少有( )。
A、一个输入流或一个输出流B、一个输入流和一个输出流C、一个输入流D、一个输出流3.详细设计与概要设计衔接的图形工具是( )。
A、DFD图B、SC图C、PAD图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.详细设计说明C.项目开发计划D.概要设计说明与详细设计说明12、 CMM提供了一个框架,将软件过程改进的进化步骤组织成5个成熟度等级。
除第1级外,每个等级都包含了实现该成熟度等级目标的若干()。
A 关键实践B 关键过程域C 软件过程能力D 软件过程13. 详细设计与概要设计衔接的图形工具是( )A. DFD图B. 程序图C. PAD图D. SC图14. 测试的关键问题是 ( )A. 如何组织对软件的评审B. 如何验证程序的正确性C. 如何采用综合策略D. 如何选择测试用例15.研究开发所需要的成本和资源是属于可行性研究中的( )研究的一方面。
软件工程课自测题及答案3
一.判断题1・软件实际就是程序(X ) 2.成功的测试是没有发现错误的测试 (X )3. 软件工程的主要思想是从理论的角度来观察分析软件开发盒生产活动(X )4. 一个模块直接引用另一个模块中的数据,这两个模块之间的耦合不是内容耦 合(X )5•程序只要逻辑正确,能够被机器理解并执行就够了 (X )二.选择题 1 •在软件质量因数中,软件在异常条件下人能运行的能力称为软件的(B ) A )可靠性B )健壮性C )可用性D )安全性2. 软件开发可行性研究,一般涉及经济,技术盒操作可行性,而进行可行性 研究 的基本依据是用户提出的软件本结构(B )5. 模块内部过程描述就是模块内部的( B ),它的表述形式就是详细 设计语言 A )模块化设计B )算法设计C )程序设计D )详细设计6. 在设计测试用例时,(A )是用的最多的一种黑盒测试方法 A )等价类划分B )边值分析C )因果图D )判定表7软件的可维护性,可使用性,(B )是衡量软件质量的几个主要特性 A )可靠性 B )可复用性 C )可理解性 D )可修改性8.原型化方法是一种(B )型的设计过程A )自外向内B )自顶向下C )自内向夕卜D )自底向上A )系统质量B ) 3.结构化程序设计 比.系统目标一般包含 C )系统功能 D )系统性能3种基本结构,下列结构中哪个不属于基A )顺序结构 B) 嵌套结构 种面向(C )顺序结构 B )的方法D )选择结构A )对象B )数据结构C )数据流D )控制流9. 模块(B)定义为受该模块内一个判断影响的所有模块集合A)控制流B)作用域C)宽度D)接口10. 程序控制的3种基本结构中,(C )结构可提供程序重复控制A)遍历B)排列 C )循环D)分支三. 填空题1- ________________________ 黑箱测试即一性能测试_____________ 、白箱测试即 ____________________________ 銷构测试。
软件工程自测题若干套
软件工程试题1(1)在软件工程中,白盒测试法可用于测试程序的内部结构。
此方法将程序看作是A) 路径的集合B)循环的集合C)目标的集合D)地址的集合(2)在下述哪一种测试中,测试程序的设计者必须接触到源程序功能测试Ⅱ.结构测试A)均不须B)只有ⅠC)只有ⅡD)Ⅰ和Ⅱ(3)检查软件产品是否符合需求定义的过程称为A)确认测试B)集成测试C)验证测试D)验收测试(4)下述陈述中,哪一个不是软件健壮性的度量指标?A)失败后重新启动所需的时间B)引起失败的时间所占的百分比D)失败前的平均工作时间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)软件设计中一般将用到图形工具,下述哪种(些)工具可用作设计的图形工具结构图Ⅱ.实体关系图Ⅲ. IPO图Ⅳ. 流程图Ⅴ.N-S图A)Ⅰ和ⅡB)Ⅲ和ⅣC)Ⅰ、Ⅲ、Ⅳ和ⅤD)全部A (2)C (3)A (4)C (5)B (6)A (7)D (8)B (10)C(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)改正性维护D)预防性维护(17)软件开发中常采的结构化生命周期方法,由于其特征而一般称其为A)瀑布模型B)对象模型C)螺旋模型D)层次模型(18)软件原型化开发方法有其基本步骤,下述获取基本需求Ⅱ.开发工作模型Ⅲ.严格细部说明Ⅳ. 模型验证中,哪些(个)是实现原型化的最基本的步骤?A)全部都是B)Ⅰ,Ⅱ和ⅣC)ⅣD)Ⅰ和Ⅱ(19)软件设计将涉及软件的结构、过程和模块的设计,其中软件过程是指A)模块间的关系B)模块的操作细节C)软件层次结构D)软件开发过程(20)软件需求分析和设计过程中,其分析与设计对象可归结为两个主要的对象,即数据和程序,按一般实施的原则,对二者的处理应该是A)先数据后程序B)先程序后数据C)与顺序无关D)可同时进行(11)D (12)B (13)B (14)D (15)B (16)A (17)A (18)B(19)B (20)A (21)结构化分析(SA)方法将欲开发的软件系统分解为若干基本加工,并对加工进行说明,下述结构化语言Ⅱ.判定树Ⅲ.判定表是常用的说明工具,其中便于对加工出现的组合条件的说明工具是A)Ⅱ和ⅢB)Ⅰ、Ⅱ和ⅢC)Ⅰ和ⅢD)Ⅰ和Ⅱ(22)软件开发的瀑布模型,一般都将开发过程划分为:分析、设计、编码和测试等阶段,一般认为可能占用人员最多的阶段是A)分析阶段B)设计阶段C)编码阶段D)测试阶段(23)加工是对数据流图中不能再分解的基本加工的精确说明,下述哪个是加工的最核心成分?A)加工顺序B)加工逻辑C)执行频率D)激发条件(24)构建一个原型不支持下述哪种功能?A)取代最终系统B)辅助收集软件需求C)辅助估计工程代价D)作为较大工程的基础(25)软件文档是软件的重要组成部分,也是软件开发阶段的基础,它还影响到软件的A)可复用性B)可维护性C)可扩展性D)可移植性(26) 下列哪种描述是正确的?A)定义阶段产生软件需求规划B)测试在软件生命周期中是可选的C)CASE工具只能辅助软件生命周期的设计阶段D)后一阶段改变时,不需要更新以前所有阶段的文档(27)黑盒测试法和白盒测试法经常用于软件测试阶段,其中白盒测试法主要用于测试软件的A)结构合理性B)程序正确性C)程序外部功能D)程序内部逻辑(28)软件计划是软件开发的早期和重要阶段,此阶段要求交互和配合的是A)设计人员和用户B)分析人员和用户C)分析人员和设计人员D)编码人员和用户\(21)A (22)C (23)B (24)A (25)B (26) A (27) D (28) B (29) C (30) A (29)数据流图是用于软件需求分析的工具,下列元素数据流Ⅱ.加工Ⅲ.数据存储Ⅳ. 外部实体(源或潭)哪些是其基本元素?A)Ⅰ,Ⅱ和ⅢB)Ⅰ和ⅢC)全部D)Ⅰ,Ⅲ和Ⅳ(30) 数据字典(DD)是定义哪一种系统描述工具中的数据的工具?A) 数据流程图B) 系统流程图C) 程序流程图D) 软件结构图(31) 软件需求分析一般应确定的是用户对软件的A) 功能需求B) 非功能需求C) 性能需求D) 功能需求和非功能需求(32) 软件设计包括总体设计和详细设计两部分,下列陈述中哪个是详细设计的内容?A) 软件结构B) 数据库设计C) 制定测试计划D) 模块算法(33) 数据字典是对数据定义信息的集合,它所定义的对象都包含于A) 数据流图B) 程序框图C) 软件结构D) 方框图(34) 软件设计中,设计复审是和设计本身一样重要的环节,其主要目的和作用是能A) 减少测试工作量B) 避免后期付出高代价C) 保证软件质量D) 缩短软件开发周期(35) 程序设计语言的选择是顺利实施编程的重要基础,评价可用语言的因素甚多,而其首要的选择依据是A) 语言的应用领域B) 对语言的熟悉程度C) 数据结构的复杂度D) 算法的复杂度(36) 软件开发的原型化方法是一种动态定义软件需求的方法,下述条件:成熟的原型化人员Ⅱ.快速的成型工具Ⅲ.需求了解的准确性哪个(些)条件是实施原型化方法所必备的?A)Ⅰ和ⅡB)Ⅱ和ⅢC)Ⅰ,Ⅱ和ⅢD)Ⅲ(37) 软件的可维护性度量可分解为对多种因素的度量,下述各种因素可测试性Ⅱ. 可理解性Ⅲ.可修改性Ⅳ. 可复用性哪个(些)是可维护性度量的内容?A)全部B)ⅠC)Ⅰ,Ⅱ和ⅢD)Ⅰ和Ⅱ(38) 软件测试是软件开发过程中重要和不可缺少的阶段,其包含的内容和步骤甚多,而测试过程的多种环节中基础的是A) 集成测试B) 单元测试C) 系统测试D) 验收测试(39) 数据流图是用于表示软件模型的一种图示方法,在下列可采用的绘制方法中,那些是常采用的?自顶向下Ⅱ. 自底向上Ⅲ.分层绘制Ⅳ.逐步求精A)全是B)Ⅰ,Ⅲ和ⅣC)Ⅱ,Ⅲ和ⅣD)Ⅰ和Ⅲ(31) D (32) D (33) A (34) B (35) A (36) A (37) C (38) B (39) B (40) B(40) 结构化分析方法是一种预先严格定义需求的方法,它在实施时强调的是分析对象的A) 控制流B) 数据流C) 程序流D) 指令流(41) 软件结构是软件模块间关系的表示,下列术语中哪一个不属于对模块间关系的描述?A) 调用关系B) 从属关系C) 嵌套关系D) 主次关系(42) 原型化方法是一类动态定义需求的方法,下列叙述中,哪一个不具有原型化方法的特征?A) 提供严格定义的文档B) 加强用户参与和决策C) 简化项目管理D) 加快需求的确定(43) 评审是对软件进行静态测试的一种方法,下述结论中,哪个是与软件评审无关的内容?A) 尽量发现错误B) 检查软件文档C) 根据评审标准D) 依靠测试信息(44) 软件维护是软件得以正常运行的重要环节,按照软件工程方法的理解,一般软件维护应该开始于A) 阅读设计文档B) 理解程序代码C) 分析软件结构D) 查阅测试记录(45) 软件工程哪个阶段产生软件需求定义?A) 定义阶段B) 工程阶段C) 维护阶段D) 开发阶段(46) 自顶向下绘制多层数据流程图时,必须考虑到父图与子图之间的平衡,此平衡通常由___来维护A) 输出数据B) 数据字典C) 处理序号D) 输入数据(47) 下述哪种是内聚性最严格的形式?A) 逻辑B) 功能C)过程D) 一致性(48) 下述哪个不是白盒测试法的概念?应该执行边界条件下的所有循环B) 应该执行边界条件下的所有接口应该执行所有逻辑判断的真假情况D) 应该至少执行一次模型中的所有独立路径(49) 原型化方法是一个动态设计过程,它要求使用该方法的人员具有下述哪种能力A) 熟练的编程技能B) 及时获得用户需求C) 协作精神及有力管理D) 巧妙使用工具(50) 数据流程图(DFD)是用于描述结构化方法中哪一个工作阶段的工具?(41) D (42) A (43) D (44) C (45) A (46) B (47) B (48) B (49) B (50) BA) 可行性分析B) 需求分析C) 详细设计D) 程序编码(51) 判定树和判定表是用于描述结构化分析方法中哪一环节的工具?A) 功能说明B) 数据加工C) 流程描述D) 结构说明(52) 在结构化方法中,软件功能分解应属于软件开发中的哪一阶段?A) 详细设计B) 需求分析C) 总体设计D) 编程调试(53) 信息隐蔽的概念与下述哪一种概念直接相关?A) 软件结构定义B) 模块独立性C) 模块类型划分D) 模块耦合度(54) 结构化程序流程图中一般包括三种基本结构,下述结构中哪一种不属于其基本结构?A) 顺序结构B) 条件结构C) 选择结构D) 嵌套结构(55) 软件复审时其主要的复审对象是A) 软件结构B) 软件文档C) 程序编码D) 文档标准软件需求规格说明书不应包含的内容是A) 系统输入/输出的描述B) 质量控制方案C) 数据字典D) 用户界面需求描述E) 系统可靠性要求描述F) 测试方案G)需求分析阶段进度安排H) 人员需求(40) B (41) D (42) A (43) D (44) C (45) A (46) B (47) B (48) B (49) B (50) B(51) B (52) C (53) B (54) D (55) B (56 ) F G H软件工程试题2一丶单项选择题1软件设计中划分模块的一个准则是()。
模拟三答案
《软件工程》模拟试卷(三)答案一、1.d2.c3.a4.c5.c6.b7.c8.c9.d10.B11.a12.b13.B14.a15.c16.b17.d18.d19.c20.b21.d22.c23.c24.c25.b二、1.数据流图:是描述数据处理过程的工具。
它从数据传递和加工的角度,以图形的方式刻画数据流从输入到输出的移动变换过程。
2.软件维护是软件生命周期的最后一个阶段,是在软件已经交付给用户使用之后,为了改正软件错误或满足新的需要而修改软件的过程。
它包括四种类型的维护活动:改正型维护、适应型维护、预防型维护和完善型维护。
3.软件测试是一个为了寻找软件错误而运行程序的过程。
目的就是为了发现软件中的错误。
一个好的测试用例是指很可能找到迄今为止尚未发现的错误的用例。
一个成功的测试是指揭示了迄今为止尚未发现的错误的测试。
4.程序的可维护性:为满足用户新的需求,或当环境发生了变化,或运行中发现了新的错误时,对一个已投入运行的软件进行相应诊断和修改所需工作量的大小。
5.软件生存周期是指从提出软件开发要求开始,直到该软件报废不用为止的整个时期。
这个时期又分为若干个阶段,对软件生产的管理和进度控制有重要作用,使软件的开发有相应的模式、流程、工序和步骤。
三、1.(1)改进软件结构提高模块独立性;(2)模块规模要适中;(3)深度、宽度、扇出和扇入都应适当;(4)模块的作用域应该在控制域内;(5)力争降低模块接口的复杂度;(6)设计单入口单出口的模块;(8)模块功能应该可以预测。
2.(1)采用自顶向下,逐步求精的程序设计方法。
(2)使用三种基本控制结构构造程序,分别是顺序,选择和循环(3)采用主程序员组的组织形式。
(4)采用单入口单出口的模块形式。
3.需求分析阶段的基本过程包括四个方面:对问题的识别,分析与综合,制定规格说明以及评审。
(1)问题识别,系统分析人员要研究计划阶段产生的可行性分析报告和软件项目实施计划。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一. 判断题1.软件实际就是程序( X )2.成功的测试是没有发现错误的测试(X )3.软件工程的主要思想是从理论的角度来观察分析软件开发盒生产活动(X )4.一个模块直接引用另一个模块中的数据,这两个模块之间的耦合不是内容耦合(X )5.程序只要逻辑正确,能够被机器理解并执行就够了(X )二.选择题1.在软件质量因数中,软件在异常条件下人能运行的能力称为软件的( B )A)可靠性B)健壮性C)可用性D)安全性2.软件开发可行性研究,一般涉及经济,技术盒操作可行性,而进行可行性研究的基本依据是用户提出的软件( C )A)系统质量B)系统目标C)系统功能D)系统性能3.结构化程序设计中,一般包含3种基本结构,下列结构中哪个不属于基本结构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. 各模块经过单元测试后,将各模块组装起来进行,以检查与设计相关的的有关问题。
5. 在单元测试时,需要为被测模块设计和。
6. 集成测试的方法主要有两种:和。
7. 非渐增式方法把和分成两个不同的阶段。
8. 渐增式测试有以下两种不同的组装模块的方法:、。
9. 软件测试的目的是.。
10. 软件维护的内容有四种:、、、。
11. 为了提高软件的可维护性和可靠性而对软件进行的修改称为。
12. 因修改软件而造成的错误或其他不希望出现的情况称为。
13维护的副作用有------------------,-------------------,-----------------三种214. 软件的、、是衡量软件质量的几个主要特性。
15. 软件可维护性可用下面七个质量特性来衡量,即、、、、、和。
四.名词解释1.数据字典2.内聚性3.软件生存周期模型4.多态性5. 集成测试6. 维护7. 正确性维护8. 预防性维护五.简答题1. 软件测试的目的是什么?2. 什么是集成测试?为什么要进行集成测试?3. 非渐增式测试与渐增式测试有什么区别?4. 软件维护有哪些内容?5. 软件维护的副作用有哪些?六. 应用题1. 请将下图的DFD转换为软件结构图(注:图中的 表示“或者”)主图:34子图A :答案二. 选择题三.填空题1.功能测试 结构测试2需求分析 总体设计 详细设计 编码 测试3.计划 开发 运行4. 集成测试 软件体系结构5. 驱动模块 桩模块6. 非增式测试 渐增式测试7. 单元测试 集成测试8. 自顶向下结合 自底向上结合9. 尽可能多地发现程序中的错误 .10. 正确性维护适应性维护完善性维护预防性维护11. 预防性维护12. 维护的副作用13. 编码副作用数据副作用文档副作用14. 可理解性可使用性可靠性15. 可理解性可测试性可修改性可靠性可移植性可使用性效率四.名词解释1.数据字典是用来定义数据流图中的各个成分的具体含义的。
它以一种准确的、无二义性的说明方式为系统的分析、设计及维护提供了有关元素的一致的定义和详细的描述。
2.内聚性是模块独立性的衡量标准之一,它是指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。
3.是描述软件开发过程中各种活动如何执行的模型。
4.指相同的操作或函数、过程可作用于多种类型的对象上并获得不同结果。
或(不同的对象,收到同一消息可以产生不同的结果。
)5. 集成测试是指在单元测试的基础上,将所有模拟按照设计要求组装成一个完整的系统进行的测试,故也称组装测试或联合测试。
6. 在软件运行/维护阶段对软件产品所进行的修改就是维护。
7. 为了识别和纠正错误,修改软件性能上的缺陷,应进行确定和修改错误的过程,这个过程就称为校正性维护。
8. 为了提高软件的可维护性和可靠性而对软件进行的修改称为预防性维护。
5.五.简答题51. 答:软件测试的目的。
G. J. Myers对软件测试的目的提出了以下观点:(1)软件测试是为了发现错误而执行程序的过程。
(2)一个好的测试用例能够发现至今尚未发现的错误。
(3)一个成功的测试是发现了至今尚未发现的错误的测试。
2. 答:集成测试是指在单元测试的基础上,将所有模块按照设计要求组装成一个完整的系统进行的测试,故也称组装测试或联合测试。
实践证明,单个模块能正常工作,组装后不见得仍能正常工作,这是因为:(1)单元测试使用的驱动模块和桩模块,与它们所代替的模块并不完全等效,因此单元测试有不彻底、不严格的情况。
(2)各个模块组装起来,穿越模块接口的数据可难会丢失。
(3)一个模块的功能可能会对另一个模块的功能产生不利的影响。
(4)各个模块的功能组合起来可能达不到预期要求的主功能。
(5)单个模块可以接受的误差,组装起来可能累积和放大到不能接受的程度。
(6)全局数据可能会出现问题。
因此必须要进行集成测试,用于发现模块组装中可能出现的问题,最终构成一个符合要求的软件系统。
集成测试的方法主要有两种:非渐增式测试和渐增式测试。
(1)非渐增式测试。
首先对每个模块分别进行单元测试,然后再把所有的模块按设计要求组装在一起进行测试。
(2)渐增式测试。
逐个把未经过测试的模块组装到已经过测试的模块上去,进行集成测试。
每加入一个新模块进行一次集成测试,重复此过程直至程序组装完毕。
3. 渐增式与非渐增式测试的方法有以下区别:(1)非渐增式方法把单元测试和集成测试分成两个不同的阶段,前一阶段完成模拟的单元测试,后一阶段完成集成测试。
而渐增式测试往往把单元测试6与集成测试合在一起,同时完成。
(2)非渐增式需要更多的工作量,因为每个模块都需要驱动模块和桩模块,而渐增式利用已测试过的模块作为驱动模块或桩模块,因此工作量较少。
(3)渐增式可以较早地发现接口之间的错误,非渐增式最后组装时才发现。
(4)渐增式有利于排错,发生错误往往和最近加进来的模块有关,而非渐增式发现接口错误推迟到最后,很难判断是哪一部分接口出错。
(5)渐增式比较彻底,已测试的模块和新的模块再测试。
(6)渐增式占用的时间较多,但非渐增式需更多的驱动模块。
桩模块也占用一些时间。
(7)非渐增式开始可并行测试所有模块,能充分利用人力,对测试大型软件很有意义。
4. 答:软件维护的内容。
软件维护的内容有四种:正确性维护,适应性维护,完善性维护和预防性维护。
(1)正确性维护。
在软件交付使用后,由于在软件开发过程中产生的错误并没有完全彻底的在测试中发现,因此必然有一部分隐含的错误被带到维护阶段上来。
这些隐含的错误在某些特定的使用环境下会暴露出来。
为了识别和纠正错误,修改软件性能上的缺陷,应进行确定和修改错误的过程,这个过程就称为校正性维护。
(2)适应性维护。
随着计算机的飞速发展,计算机硬件和软件环境也在不断发生变化,数据环境也在不断发生变化。
为了使应用软件适应这种变化而修改软件的过程称为适应性维护。
例如,某个应用软件原来是在DOS环境下运行的,现在要把它移植到Windows环境下来运行;某个应用软件原来是在一种数据库环境下工作的,现在要改到另一种安全性较高的数据库环境下工作,这些变动都需要对相应的软件作修改。
(3)完善性维护。
在软件漫长的运行时期中,用户往往会对软件提出新的功能要求与性能要求。
这是因为用户的业务会发生变化,组织机构也会发生变7化。
为了适应这些变化,应用软件原来的功能和性能需要扩充和增强。
这种增加软件功能、增强软件性能、提高软件运行效率而进行的维护活动称为完善性维护。
例如,软件原来的查询响应速度较慢,要提高响应速度;软件原来没有帮助信息,使用不方便,现在要增加帮助信息。
(4)预防性维护。
为了提高软件的可维护性和可靠性而对软件进行的修改称为预防性维护。
这是为以后进一步的运行和维护打好基础。
这需要采用先进的软件工程方法对需要维护的软件或软件中的某一部分进行设计、编码和测试。
5. 答:因修改软件而造成的错误或其他不希望出现的情况称为维护的副作用。
维护的副作用有编码副作用、数据副作用、文档副作用三种。
(1)编码副作用。
在使用程序设计语言修改源代码时可能引入错误。
例如:①删除或修改一个子程序、一个标号、一个标识符;②改变程序代码的时序关系,改变占用存储的大小,改变逻辑运算符;③修改文件的打开或关闭;④改进程序的执行效率;⑤把设计上的改变翻译成代码的改变;⑥为边界条件的逻辑测试作出改变;⑦以上这些变动都容易引入错误。
(2)数据副作用。
在修改数据结构时,有可能造成软件设计与数据结构不匹配,因而导致软件错误。
数据副作用是修改软件信息结构导致的结果。
例如:①重新定义局部或全局的常量,重新定义记录或文件格式;②增加或减少一个数组或高层数据结构的大小;③修改全局或公共数据;④重新初始化控制标志或指针;⑤重新排列输入/输出或子程序的参数。
(3)文档副作用。
对数据流、软件结构、模拟逻辑或任何其他有关特性进行修改时,必须对相关技术文档进行相应修改。
否则会导致文档与程序功能不匹配、缺省条件改变、新错误信息不正确等错误,使文档不能反映软件当前的状态。
如果对执行软件的修改没有反映在文档中,就会产生文档副作用。
六.应用题89。