软件标准答案
- 格式:doc
- 大小:140.50 KB
- 文档页数:8
软件水平考试试题答案1.通常在软件的活动中无需用户参与。
A.需求分析B.维护C.编码D.测试参考答案:C2.详细描述软件的功能、性能和用户界面,以使用户了解如何使用软件。
A.概要设计说明书B.详细设计说明书计C.用户手册D.用户需求说明书参考答案:C3.下述任务中,不属于软件工程需求分析阶段的`是。
A.分析软件系统的数据要求B.确定软件系统的功能需求C.确定软件系统的性能要求D.确定软件系统的运行平台参考答案:D4.在开发信息系统时,用于系统开发人员与项目管理人员沟通的主要文档是。
A.系统开发合同B.系统设计说明书C.系统开发计划D.系统测试报告参考答案:B5.系统测试人员与系统开发人员需要通过文档进行沟通,系统测试人员应根据一系列文档对系统进行测试,然后将工作结果撰写成,交给系统开发人员。
A.系统开发合同B.系统设计说明书C.测试计划D.系统测试报告参考答案:D6.常见的软件开发模型有瀑布模型、演化模型、螺旋模型、喷泉模型等。
其中模型适用于需求明确或很少变更的项目,模型主要用来描述面向对象的软件开发过程。
A.瀑布模型B.演化模型C.螺旋模型D.喷泉模型参考答案:A、D7.在开发一个系统时,如果用户对系统的目标是不很清楚,难以定义需求,这时最好使用。
A.原型法瀑布模型C.V-模型D.螺旋模型参考答案:A8.采用瀑布模型进行系统开发的过程中,每个阶段都会产生不同的文档。
以下关于产生这些文档的描述中,正确的是。
A.外部设计评审报告在概要设计阶段产生。
B.集成测评计划在程序设计阶段产生。
C.系统计划和需求说明在详细设计阶段产生。
D.在进行编码的同时,独立的设计单元测试计划参考答案:D9.是一种面向数据流的开发方法,其基本思想是软件功能的分解和抽象。
A.结构化开发方法B.Jackson系统开发方法C.Booch方法D.UML(统一建模语言)参考答案:A10.软件开发中的瀑布模型典型地刻画了软件生存周期的阶段划分,与其最相适应的软件开发方法是。
软件测试试题及答案答案一、单项选择题(每题2分,共10分)1. 软件测试的目的是:A. 证明软件无缺陷B. 证明软件存在缺陷C. 证明软件符合需求规格D. 证明软件符合设计规格答案:B2. 黑盒测试的主要依据是:A. 程序内部逻辑B. 程序外部特性C. 程序数据结构D. 程序运行环境答案:B3. 以下哪个不是软件测试的阶段?A. 单元测试B. 集成测试C. 系统测试D. 维护测试答案:D4. 软件测试中,测试用例的主要目的是:A. 验证软件功能B. 验证软件性能C. 验证软件安全性D. 所有选项答案:D5. 以下哪个不是软件测试的类型?A. 功能测试B. 性能测试C. 压力测试D. 需求测试答案:D二、多项选择题(每题3分,共15分)1. 软件测试过程中可能遇到的问题包括:A. 缺陷B. 错误C. 故障D. 风险答案:ABCD2. 软件测试的基本原则包括:A. 测试显示存在缺陷B. 测试不能证明不存在缺陷C. 穷尽测试是不可能的D. 早期测试答案:ABCD3. 软件测试的目的是:A. 验证软件符合需求B. 验证软件符合设计C. 验证软件符合实现D. 验证软件符合标准答案:ABD4. 以下哪些是软件测试的方法?A. 静态测试B. 动态测试C. 黑盒测试D. 白盒测试答案:ABCD5. 软件测试的文档通常包括:A. 测试计划B. 测试用例C. 测试报告D. 用户手册答案:ABC三、判断题(每题1分,共10分)1. 软件测试可以完全替代用户测试。
(错误)2. 软件测试的目的是发现尽可能多的缺陷。
(正确)3. 软件测试可以在软件开发过程的任何阶段进行。
(正确)4. 软件测试可以提高软件的可靠性。
(正确)5. 软件测试可以降低软件维护的成本。
(正确)6. 软件测试可以证明软件没有缺陷。
(错误)7. 软件测试只能发现软件中的错误。
(错误)8. 软件测试可以提高用户对软件的满意度。
(正确)9. 软件测试可以减少软件的缺陷。
2018年5月[0010]《软件工程》作业标准答案1、( )是用户和设计交换最频繁的方法。
原型化方法螺旋模型方法构件组装模型瀑布模型方法2、在人工智能领域,目前最广泛使用的高级语言是 ( )。
LISPAda FORTRANCOBOL3、模块内聚度越高,说明模块内各成分彼此结合的程度越( )相等 无法判断 紧密松散4、“软件危机”产生的主要原因是()。
没有维护好软件 开发方法不当开发人员编写程序能力差 软件日益庞大5、软件维护申请报告由( )填写。
维护负责人 用户专家维护程序员6、程序语言的编译系统和解释系统相比,从用户程序的运行效率来看 ( )。
两者大致相同 前者运行效率高后者运行效率高不能确定7、软件维护是软件得以正常运行的重要环节,按照软件工程方法的理解,一般软件维护应开始于()。
E. 查阅测试记录分析软件结构阅读设计文档理解程序代码8、软件设计中划分模块的一个准则是()。
低内聚高耦合高内聚低耦合低内聚低耦合高内聚高耦合9、维护阶段产生的文档包括( )。
开发进度报告软件问题报告维护申请报告软件修改报告10、从工程管理的角度来看,软件设计分两步完成()系统分析、模块设计总体设计、详细设计详细设计、总体设计模块设计、详细设计11、SA法的主要描述手段有()系统流程图和模块图DFD图、数据词典、加工说明功能结构图、加工说明软件结构图、加工说明12、采用甘特图表示软件项目进度安排,下列说法中正确的是()。
能够反映多个人物之间的复杂关系能够直观表示任务之间相互依赖的制约关系能够表示哪些任务是关键任务能够表示字人物之间的并行和串行关系13、画DFD图的主要目的()对系统的数据结构进行描述。
对目标系统的层次结构进行描述。
解决系统是“如何做的问题”。
作为需求分析阶段用户与开发者之间交流信息的工具。
14、数据字典是数据流图中所有元素的定义的集合,一般由以下4类条目组成()。
A. 数据流条目、数据存储条目、数据源条目、加工条目数据说明条目、控制流条目、加工条目、数据存储条目数据源条目、数据流条目、数据处理条目、数据文件条目数据流条目、数据项条目、文件条目、加工条目15、在下列的基本成分中,哪个不是数据流程图的基本成分?()信息处理系统状态信息存储外部实体16、数据流图中,当数据流向或流自文件时()。
计算机软件考试题及答案一、选择题(每题2分,共20分)1. 下列关于操作系统的描述中,不正确的是()。
A. 操作系统是计算机硬件与用户之间的接口B. 操作系统是计算机系统资源的管理者C. 操作系统可以提高计算机系统资源的利用率D. 操作系统是用户编写的程序答案:D2. 在计算机存储器中,CPU可以直接访问的是()。
A. 硬盘B. 内存C. 光盘D. 软盘答案:B3. 下列关于计算机病毒的描述中,正确的是()。
A. 计算机病毒是一种生物病毒B. 计算机病毒可以自我复制C. 计算机病毒只会破坏硬件D. 计算机病毒不能通过网络传播答案:B4. 在下列设备中,属于输入设备的是()。
A. 打印机B. 键盘C. 显示器D. 鼠标答案:B5. 下列关于计算机网络的描述中,不正确的是()。
A. 计算机网络可以实现资源共享B. 计算机网络可以提高计算机的可靠性C. 计算机网络可以提高计算机的计算速度D. 计算机网络可以提高计算机的安全性答案:D二、填空题(每题2分,共10分)1. 计算机软件分为______和______两大类。
答案:系统软件;应用软件2. 在计算机系统中,______是执行程序指令的部件。
答案:CPU3. 计算机的存储器分为______和______两种。
答案:内存储器;外存储器4. 计算机病毒的主要传播途径包括______、______和______。
答案:电子邮件;移动存储设备;网络下载5. 计算机硬件系统主要包括______、______、______、______和______。
答案:输入设备;输出设备;存储器;处理器;控制器三、简答题(每题5分,共20分)1. 简述操作系统的主要功能。
答案:操作系统的主要功能包括进程管理、内存管理、文件管理、设备管理和用户接口。
2. 什么是计算机的硬件组成?答案:计算机的硬件组成主要包括中央处理器(CPU)、存储器、输入设备和输出设备。
3. 计算机病毒的危害有哪些?答案:计算机病毒的危害包括破坏数据、降低系统性能、泄露用户信息、造成网络拥堵等。
《软件工程》形成性考核答案-3————————————————————————————————作者:————————————————————————————————日期:2《软件工程》形成性考核答案第一、二章一、填空题1. 软件工程学的内容可包括(理论)、结构、(方法)、(工具)、环境、管理、规范等。
2. 软件生存周期一般可分为问题定义、(可行性研究)、(需求分析)、设计、(编码)、测试、运行与维护阶段。
3. 可行性研究的目的是(用最小的代价在尽可能短的时间内确定问题是否能够解决)。
4. 系统流程图是(描绘物理系统)的传统工具。
5. 在可行性研究中,(技术可行性)是系统开发过程中难度最大,最重要的一个环节。
二、判断题1. 软件工程采用的生存周期方法就是从时间角度对软件的开发和维护这个复杂问题进行分解,将软件生存的时期分为若干阶段。
(√)2. 螺旋模型是利用笛卡尔坐标的四个象限上分别代表四个方面的活动来表示。
(√)3. 原型模型适用于嵌入式软件。
(╳)4. 面向对象技术是构件组装模型的基础。
(√)5. 在可行性研究中最难决断和最关键的问题是经济可行性。
(╳)6. 系统流程图表达的是部件的信息流程,还表示对信息进行加工处理的控制过程。
(╳)7. 自底向上成本估计不是从整体开始,而是从任务单元开始。
(√)三、单项选择题1. 下列哪个阶段不是软件生存期三个阶段中的内容( C )。
A.计划阶段B.开发阶段C.编码阶段D.维护阶段2. 下列关于瀑布模型的描述正确的是( C )。
A. 瀑布模型的核心是按照软件开发的时间顺序将问题简化。
B. 瀑布模型具有良好的灵活性。
C. 瀑布模型采用结构化的分析与设计方法,将逻辑实现与物理实现分开。
D. 利用瀑布模型,如果发现问题修改的代价很低。
四、简答题参考答案:软件是计算机系统中与硬件相互依存的另一部分,它是包括程序,数据结构及其相关文档的完整集合。
它包括三个方面的内容:⑴程序:在运行时,能提供所希望的功能和性能的指令集。
计算机软件考试题目及答案(正文内容开始)一、选择题1. 下列哪项不是计算机的基本组成部分?A.硬件 B.软件 C.数据库 D.系统答案:C.数据库2. 下列不是操作系统的功能的是:A.资源管理 B.内存管理 C.文件管理 D.程序设计答案:D.程序设计3. TCP/IP协议是指:A.传输控制协议/网际协议 B.传输常规协议/互联协议 C.网络传输协议/因特网协议 D.通讯传输协议/网络协议答案:A.传输控制协议/网际协议4. 下列哪种语言是编译型语言?A.Python B.Java C.JavaScript D.C答案:D.C5. 下列哪项不属于数据库管理系统(DBMS)?A.MySQL B.Oracle C.SAP D.Excel答案:D.Excel二、填空题1. SQL是_________标准化查询语言的缩写。
答案:结构化2. 常用的操作系统有Windows、Linux、_________等。
答案:iOS3. 在常用的编程语言中,C++是______编程语言。
答案:面向对象4. 网络协议TCP/IP中,IP是指_________协议。
答案:网际5. HTML是_________标记语言的缩写。
答案:超文本三、简答题1. 什么是算法?请用自己的话简单解释。
答:算法是指用来解决问题或完成任务的一系列步骤和规则。
它可以抽象地描述为输入、输出和执行操作的过程。
算法的核心目标通常是高效、准确地执行操作,可以通过控制结构(如循环和条件判断)来实现。
2. 数据库管理系统的作用是什么?举例说明一种数据库管理系统。
答:数据库管理系统(DBMS)是用于存储、管理和处理大量数据的软件系统。
它提供了数据的组织、访问和更新功能,以及数据完整性、安全性和并发控制等特性。
举例一种数据库管理系统是MySQL。
MySQL是一种开源的关系型数据库管理系统,被广泛应用于Web开发等领域。
它支持多种操作系统平台,并提供了强大的数据操作和查询能力,同时具备良好的性能和可靠性。
计算机软件试题及答案一、单项选择题(每题2分,共20分)1. 计算机软件分为哪两大类?A. 系统软件与应用软件B. 操作系统与应用软件C. 系统软件与数据库管理系统D. 操作系统与数据库管理系统答案:A2. 以下哪个不是操作系统的功能?A. 进程管理B. 存储管理C. 文件管理D. 网络管理答案:D3. 在计算机系统中,软件与硬件的关系是?A. 相互独立B. 相互依赖C. 软件可以独立于硬件存在D. 硬件可以独立于软件存在答案:B4. 以下哪个不是数据库管理系统的功能?A. 数据定义B. 数据查询C. 数据加密D. 数据备份答案:C5. 计算机软件生命周期中,需求分析阶段的主要任务是什么?A. 编写代码B. 确定软件的功能需求C. 进行软件测试D. 完成软件部署答案:B6. 在软件开发过程中,以下哪个阶段是用于发现和修复软件缺陷的?A. 需求分析B. 系统设计C. 编码实现D. 软件测试答案:D7. 以下哪个不是软件工程的基本原则?A. 模块化B. 可复用性C. 可维护性D. 可扩展性答案:B8. 以下哪个不是软件测试的类型?A. 单元测试B. 集成测试C. 系统测试D. 性能测试答案:D9. 在软件开发中,面向对象编程的主要特点是什么?A. 过程化B. 模块化C. 抽象化D. 封装性答案:D10. 以下哪个不是软件维护的内容?A. 功能增强B. 缺陷修复C. 性能优化D. 软件重构答案:D二、多项选择题(每题3分,共15分)1. 以下哪些属于系统软件?A. 操作系统B. 办公软件C. 编译器D. 驱动程序答案:ACD2. 软件工程的主要目标包括哪些?A. 降低软件开发成本B. 提高软件质量C. 提升软件性能D. 缩短软件开发周期答案:ABD3. 以下哪些是软件测试的目的?A. 验证软件功能B. 确保软件质量C. 减少软件缺陷D. 提升用户体验答案:ABC4. 面向对象编程中,以下哪些是基本特征?A. 封装B. 继承C. 多态D. 抽象答案:ABC5. 以下哪些是软件维护的类型?A. 纠错性维护B. 适应性维护C. 完善性维护D. 预防性维护答案:ABCD三、判断题(每题1分,共10分)1. 软件工程是研究和应用计算机软件的开发、运行和维护的工程学科。
计算机软件试题及答案第一节:选择题1. 下列哪个不是计算机软件的分类?A. 操作系统B. 应用软件C. 硬件驱动程序D. 编程语言答案:C2. 常见的操作系统有以下哪几种?A. Windows、iOS、AndroidB. Word、Excel、PowerPointC. C、C++、JavaD. Photoshop、Illustrator、InDesign答案:A3. 在计算机软件开发中,IDE 是什么的缩写?A. Interactive Development EnvironmentB. Integrated Design EnvironmentC. Intelligent Data EntryD. Internet Data Exchange答案:A4. 下列哪个不是计算机软件开发过程中的常用编程语言?A. PythonB. HTMLC. RubyD. SQL答案:B5. 哪个是面向对象编程中常用的编程语言?A. CB. AssemblyC. JavaD. Fortran答案:C第二节:填空题1. HTML 是什么的缩写?答案:HyperText Markup Language2. 常见的数据库管理系统有以下哪几种?答案:MySQL、Oracle、SQL Server3. 在面向对象编程中,类是什么的实例化?答案:对象第三节:简答题1. 请简述什么是软件开发生命周期?答:软件开发生命周期是指软件从需求分析到维护的全过程。
它包括需求分析、系统设计、编码、测试和维护等阶段。
在需求分析阶段,开发人员与用户沟通确定软件需求;在系统设计阶段,根据需求确定软件的整体结构和功能;编码阶段是将设计好的系统转化为计算机能够识别的编程语言;在测试阶段,对编码完成的软件进行功能和性能的测试;维护阶段则是对软件进行修复和更新,以保证其正常运行。
2. 请简述什么是操作系统?答:操作系统是计算机系统中的核心软件,它负责管理和控制计算机硬件资源,并提供给用户和应用程序一个接口,方便他们使用计算机系统。
软件工程习题附答案软件工程是一门研究和应用如何以系统性、规范化、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来的学科。
以下是一些软件工程的习题及答案,希望能帮助您更好地理解这门学科。
一、选择题1、软件生命周期中所花费用最多的阶段是()A 详细设计B 软件编码C 软件测试D 软件维护答案:D解析:软件维护阶段需要对软件进行修改、优化和修复,由于软件在使用过程中可能会遇到各种问题和需求变更,所以维护阶段通常会花费大量的时间和资源。
2、下面不属于软件工程的 3 个要素的是()A 工具B 过程C 方法D 环境答案:D解析:软件工程的三要素是方法、工具和过程。
方法为软件开发提供了“如何做”的技术;工具为方法的运用提供了自动的或半自动的软件支撑环境;过程是将方法和工具结合起来,以达到合理、及时地进行软件开发的目的。
3、软件可行性研究实质上是要进行一次()需求分析和设计过程。
A 简化、压缩的B 详细的C 彻底的D 深入的答案:A解析:可行性研究的目的是用最小的代价在尽可能短的时间内确定问题是否能够解决,其实质是进行一次简化、压缩的需求分析和设计过程。
4、软件测试的目的是()A 证明软件的正确性B 找出软件中的所有错误C 尽可能多地发现软件中的错误D 调试程序答案:C解析:软件测试的目的是尽可能多地发现软件中的错误,而不是证明软件的正确性,也不可能找出软件中的所有错误。
5、下面描述中,不符合结构化程序设计风格的是()A 使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑B 自顶向下C 注重提高程序的执行效率D 限制使用 goto 语句答案:C解析:结构化程序设计强调清晰的结构和良好的可读性,注重程序的可理解性和可维护性,而不是过于追求执行效率。
二、填空题1、软件生存周期一般可分为问题定义、可行性研究、()、设计、()、测试、运行与维护阶段。
第七讲软件工程与标准化知识例题1软件的生命周期一般包括:软件的项目计划和需求分析等六个阶段,下述______不是软件生命周期的一个阶段。
A. 软件设计B. 编码C. 实施D. 运行/维护⏹解答:(1)C⏹试题分析:本题的考点是,有关软件生命周期的基本划分方法。
同任何事物一样,软件产品/系统也有一个生存周期。
一般分为以下六个阶段:软件项目计划(Panning)需求分析和定义(Requirement analysis and definition)软件设计(Software design)编码(Coding)测试(Testing)运行/维护(Running/maintenance)例题2下述任务中,不属于软件工程需求分析阶段的是______A. 分析软件系统的数据要求B.确定软件系统的功能需求C. 确定软件系统的性能要求D.确定软件系统的运行平台⏹解答:D⏹试题分析:本题的考点是,软件生存周期中,需求分析阶段的任务。
需求分析和定义阶段相关要求如下:确定待开发软件系统的功能、性能、数据、界面等,从而确定系统的逻辑模型,最主要的是功能需求分析。
参加人员有用户、项目负责人、系统分析员产生的文档有需求规格说明书例题3软件设计的主要任务是设计软件的结构、过程和模块,其中软件结构设计的主要任务是要确定______A.模块间的操作细节B. 模块间的相似性C. 模块间的组成关系D. 块间的具体功能⏹解答: C⏹试题分析:本题的考点是,软件生存周期中,软件设计阶段的任务。
软件设计阶段分为概要设计和详细设计,相关要求如下:概要设计:主要任务是模块分解、确定软件的结构、模块的功能、模块间的接口、全局数据结构参加人员有系统分析员、高级程序员。
详细设计:主要任务是设计每个模块的实现细节和局部数据结构。
参加人员有高级程序员、程序员。
产生文档:设计规格说明书、数据说明书、模块开发卷宗。
例题4项目管理工具中,将网络方法用于工作计划安排的评审和检查是______。
单项选择题(在每小题的四个备选答案中,选出一个正确的答案序号填在括号内。
每小题1分,共20分)
1. 信息隐蔽概念与( A )这一概念直接的相关。
A. 模块的独立性
B. 模块类型的划分
C. 软件结构定义
D. 软件生命周期
2. 下列方法中不属于面向对象的开发方法有( C )。
A. Booch方法
B. Coad方法
C. VDM方法
D. OMT方法
3. 不属于详细设计的主要工具有( C )。
A. IPO图
B. PAD图
C. PDL
D. SC
4. 选择结构的复杂性比顺序结构的复杂性要( B )。
A. 小
B.大
C.相等
D.无法比较
5.软件需求分析是保证软件质量的重要步骤,它的实施应该是在(C)。
A.编码阶段
B.软件开发全过程
C.软件定义阶段
D.软件设计阶段
6. 模块内聚度越高,说明模块内各成分彼此结合的程度越(B)。
A.松散
B.紧密
C.无法判断
D.相等
7. 软件文档是软件工程实施中的重要部分,它不仅是软件开发各阶段的重要依据,而且影
响软件的( A )。
A. 可理解性
B.可维护性
C.可扩展性
D.可移植性
8. 单元测试阶段主要涉及( C )的文档。
A.需求设计
B. 编码和详细设计
C. 详细设计
D. 概要设计
9. 鱼是一种水生动物。
鱼与水生生物之间的关系是( A )。
A. 一般与特殊关系
B. 组装关系
10.下列选项不属于软件工程方法学三要素的是( D )。
A.方法
B.工具
C.过程
D.操作
11. 软件生命周期一般都被划分为若干个独立的阶段,其中占用精力和费用最多的阶段往
往是( A )。
A.运行和维护阶段
B.设计阶段
C.代码实现阶段
D.测试阶段
12. .黑盒测试在设计测试用例时,主要需要研究( A )。
A.需求规格说明与概要设计说明
B.详细设计说明
C.项目开发计划
D.概要设计说明与详细设计说明
13. 可行性研究要进行一次( D )需求分析。
A. 深入的
B. 详尽的
C. 彻底的
D. 简化的、压缩了的
14. 下列属于维护阶段的文档是( C )。
A.软件规格说明
B.用户操作手册
C.软件问题报告
D.软件测试分析报告
15. 数据字典的最基本功能是( C )。
A.数据库设计
B.数据通信
C.数据定义
D.数据维护
16. 以下关于数据流图的说法不正确的是( C )。
A.数据流图舍去了具体的物理元素,只剩下数据的流动、加工处理和存储
B.数据流图是用作结构化分析建模的一种工具
C.传统的数据流图主要由处理、数据源点/终点、数据流、控制流、数据存储组成
D.数据流图的编绘采用自上向下、逐层分解的方法
17. 选择程序设计语言的关键因素是( D )。
A.软件应用领域
B.软件执行环境
C.软件开发方法
D.算法和数据结构
18. 所谓软件过程的里程碑,通常是指( C )。
A.一定的时间间隔
B.每个项目活动
C.基线
D.开发进度月报
19. 程序的三种基本控制结构是( B )。
A.过程、子程序与分程序
B.顺序、选择和重复
C.递归、堆栈和队列
D.调用、返回和转移
20. 因计算机硬件和软件环境的变化而作出的修改软件的过程称为( B )。
A.改正性维护
B.适应性维护
C.完善性维护
D.预防性维护
填空题 (每小题2分,共16分)
1.软件不仅仅是程序,还应该有一整套_______文档_____________。
2.传统的软件生命期模型是______瀑布模型______________。
3.Jackson程序设计方法是一种______面向数据结构__________的设计方法。
5.与程序流程图相比,盒图没有__转移箭头_____,因此不允许随意转移控制。
6.在单元测试中,使用_驱动程序_模拟被测单元的调用和数据传递动作,_存根程序__模拟被测模块的子程序。
7.度量软件规模的常用技术主要有___代码行技术___和_____功能点技术____。
8.可行性研究包括__技术可行性___、_经济可行性__和__社会可行性__等三个方面的可行性研究。
简答题 (每题8分,共32分)
1.集成测试有哪两种测试策略?试比较它们的优缺点。
答:主要是自顶向下集成测试策略和自底向上集成测试策略两种。
自顶向下集成测试策略的优点是:能尽早地对程序的主要控制和决策机制进行检验,因此能较早地发现错误。
缺点是:在测试较高层模块时,低层处理采用桩模块替代,不能反映真实情况,重要数据不能及时回送到上层模块,因此测试并不充分。
自底向上集成测试策略的优点是:不用桩模块,测试用例的设计亦相对简单,但缺点是程序最后一个模块加入时才具有整体形象。
2.简述结构化程序设计方法的基本要点。
答:
(1)采用自顶向下,逐步求精的程序设计方法.
(2)使用三种基本控制结构构造程序,分别是顺序,选择和循环
(3)采用主程序员组的组织形式.
(4)采用单入口单出口的模块形式.
3.试解释软件、软件工程和软件工程方法学的基本含义。
答:
软件:软件是一种产品,同时又是开发和运行产品的载体。
作为一种产品,它表达了由计
提供所希望的功能和性能的指令集(即程序);(2)使程序能够正确运行的数据结构;(3)描述程序研制过程、方法所用的文挡。
软件工程:是指导计算机软件开发和维护的工程学科。
采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。
软件工程方法学:软件工程方法学是研究软件设计方法论及工程开发技术的一门新兴学科。
4. 简述面向对象开发方法的三大模型及各自的作用。
答:
面向对象开发方法中的三大模型是指对象模型、动态模型、功能模型。
各自的作用是: ❑ 对象模型:描述现实世界中的“类与对象”以及之间的关系,表示目标系统的静态数据
结构。
❑ 动态模型:描述对象之间的互相作用。
❑ 功能模型:该模型表明系统中数据之间的依赖关系,以及有关的数据处理功能。
应用分析题 (共32分)
1. 根据给出的程序流程图,画出它的N-S 图和流图(也称为程序图),并计算它的McCabe 复杂
度。
(15分)
其中:Pi 代表操作语句,Ci 代表判定条件
答:
(1) N-S 图为:
(2)流图为:
(3)McCabe复杂度根据公式:
V(G)= E – N +2 = 10 – 8 + 2 = 4
2.设计一个程序:先读入三角形的三条边的值(分别为A、B、C),再根据这些值判断三角形
是普通的、等腰的或等边的,要求打印出说明信息。
(10分)
1)写出该程序的有关约束条件;
2)结合黑盒测试中的等价分类法技术,设计有关测试用例。
答:
1)我们可以设三角形的3条边分别为A,B,C。
如果它们能够构成三角形的3条边,必须满足的约束条件是:
如果是等腰的,还要判断A=B,或B=C,或A=C。
如果是等边的,则需判断是否A=B,且B=C,且A=C。
2)等价分类法有关部门等价类的划分:
有关测试用例:
3.绘制取款过程的数据流程图:(7分)
储户将填好的取款单及存折交储蓄所,经查对储户帐,将不合格的存折和取款单退还储户,合格的存折和取款单被送交取款处理。
处理时要修改储户帐和现金帐,并将存折利息单和现金交储户,同时将取款单存档。
试画出以上存取款处理过程的数据流程图。
答:数据流程图为:。