软件工程 需求分析 复习答案

合集下载

《软件工程》11套考试复习练习试题、作业题[含答案解析]

《软件工程》11套考试复习练习试题、作业题[含答案解析]

作业1:1. 软件是计算机系统中与硬件相互依存的另一部分,它是包括( A )、( B )及( C )的完整集合。

其中,( A )是按事先设计的功能和性能要求执行的指令序列。

( B )是使程序能够正确操纵信息的数据结构。

( C )是与程序开发、维护和使用有关的图文材料。

供选择的答案:A~C. ①软件②程序③代码④硬件⑤文档⑥外设⑦数据⑧图表2. 开发软件时对提高软件开发人员工作效率至关重要的是( A )。

软件工程中描述生存周期的瀑布模型一般包括计划、( B )、设计、编码、测试、维护等几个阶段,其中设计阶段在管理上又可以依次分成( C )和( D )两步。

供选择的答案:A.①程序开发环境②操作系统的资源管理功能③程序人员数量④计算机的并行处理能力B.①需求分析②需求调查③可行性分析④问题定义C、D.①方案设计②代码设计③概要设计④数据设计⑤运行设计⑥详细设计⑦故障处理设计⑧软件体系结构设计3. 从供选择的答案中选出适当字句填入下列关于软件发展过程的叙述中的( )内。

有人将软件的发展过程划分为4个阶段:第一阶段(1950~1950年代末)称为“程序设计的原始时期”,这时既没有( A ),也没有( B ),程序员只能用机器指令编写程序。

第二阶段(1950年代末~1960年代末)称为“基本软件期”。

出现了( A ),并逐渐普及。

随着( B )的发展,编译技术也有较大的发展。

第三阶段(1960年代末~1970年代中期)称为“程序设计方法时代”。

这一时期,与硬件费用下降相反,软件开发费急剧上升。

人们提出了( C )和( D )等程序设计方法,设法降低软件的开发费用。

第四阶段(1970年代中期~现在)称为“软件工程时期”。

软件开发技术不再仅仅是程序设计技术,而是包括了与软件开发的各个阶段,如( E )、( F )、编码、单元测试、综合测试、( G )及其整体有关的各种管理技术。

供选择的答案:A ~ D:①汇编语言②操作系统③虚拟存储器概念④高级语言⑤结构式程序设计⑥数据库概念⑦固件⑧模块化程序设计E ~ G:①使用和维护②兼容性的确认③完整性的确认④设计⑤需求定义⑥图象处理4. 软件工程过程有哪几个基本过程活动?试说明之。

软件工程(软件需求)习题与答案

软件工程(软件需求)习题与答案

软件工程(软件需求)习题与答案软件工程(软件需求)习题与答案1. 引言在软件工程领域,软件需求是项目成功的关键之一。

对于开发者来说,了解和熟悉软件需求的基本概念和流程是至关重要的。

本文将针对软件工程中的软件需求进行习题和答案的探讨,帮助读者更好地理解和应用相关知识。

2. 习题集2.1 习题一:什么是软件需求?为什么软件需求很重要?答案:软件需求是指软件开发过程中,对于所要开发的软件系统的功能、性能以及其他特点的描述和规定。

软件需求的编写和理解对于项目的成败具有决定性的作用。

准确的软件需求能够指导开发团队进行开发工作,并确保最终的软件产品符合用户的期望。

2.2 习题二:软件需求的分类是什么?答案:软件需求可以分为功能需求和非功能需求两类。

功能需求描述了软件系统应具备的功能和行为,非功能需求则描述了软件系统的性能、可靠性、安全性等方面的需求。

2.3 习题三:请列举几个软件需求的常见问题。

答案:常见的软件需求问题包括:- 不完整的需求描述:缺少必要的细节和规范,导致开发团队无法准确理解用户需求。

- 冲突的需求:不同的用户提出了矛盾的要求,导致开发过程复杂化。

- 模糊的需求:需求描述含糊不清,无法量化和验证。

- 可测量性问题:需求无法被准确地测量和评估。

- 可行性问题:需求不符合项目的可行性要求,无法被合理地实施。

3. 答案解析3.1 习题一解析软件需求是对软件系统功能、性能和其他特点的描述和规定。

软件需求的重要性在于它能够指导开发团队进行开发工作,并确保最终产品符合用户期望。

缺乏准确的软件需求往往导致项目失败或产品无法满足用户需求。

3.2 习题二解析软件需求可以分为功能需求和非功能需求两类。

功能需求描述了软件系统应具备的功能和行为,如注册、登录等;非功能需求描述了软件系统的性能、可靠性、安全性等方面的需求,如响应时间、可扩展性等。

3.3 习题三解析常见的软件需求问题包括需求描述不完整、冲突的需求、模糊的需求、可测量性问题以及可行性问题。

软件需求分析

软件需求分析

软件需求分析一、复习要求1. 了解软件需求的目标和任务。

2. 了解软件软件需求的获取方法。

3. 了解可行性研究的方法和可行性研究报告的主要内容。

4. 掌握结构化分析方法。

5. 了解支持需求分析的原型化方法。

6. 了解需求规格说明和需求评审的主要内容。

二、例题分析【例1】软件需求分析阶段的工作,可以分为以下4个方面:对问题的识别、分析与综合、编写需求分析文档以及( )。

供选择的答案:A. 总结B. 阶段性报告C. 需求分析评审D. 以上答案都不正确答案: C.分析:作为需求分析阶段工作的复查手段,在需求分析的最后一步,应该对功能的正确性、完整性和清晰性,以及其它需求给予评价。

一般,评审的结果都包括了一些修改意见,待修改完成后再经评审通过,才可进入设计阶段。

【例2】各种需求方法都有它们共同适用的( )。

供选择的答案:A.说明方法B.描述方式 C. 准则D.基本原则答案: D.分析:虽然各种分析方法都有独特的描述方法,但所有的分析方法还是有它们共同适用的基本原则。

这些基本原则包括:需要能够表达和理解问题的信息域和功能域;要能以层次化的方式对问题进行分解和不断细化;要分别给出系统的逻辑视图和物理视图。

【例3】在结构化分析方法中,用以表达系统内数据的运动情况的工具有( )。

供选择的答案:A. 数据流图B. 数据词典C. 结构化英语D. 判定表与判定树答案: A.分析:数据流图从数据传递和加工的角度,以图形的方式刻画数据流从输入到输出的移动变换过程,所以,它不是描述数据的静态结构,而是描述数据流的传递和变换。

数据词典主要用于定义数据和控制对象的细节,结构化英语、判定表和判定树主要用于描述加工规格说明,都不是表达数据在系统内运动情况的工具。

【例4】在结构化分析方法中用状态―迁移图表达系统或对象的行为。

在状态―迁移图中,由一个状态和一个事件所决定的下一状态可能会有( )个。

供选择的答案:A. 1B. 2C. 多个D. 不确定答案: C.分析:在状态―迁移图中,由一个状态和一个事件所确定的下一状态可能会有多个。

软件工程复习题(带答案)

软件工程复习题(带答案)

软件工程复习题(带答案)软件工程复习题一、单选题1、软件开发的结构化设计(SD)方法,全面指导模块划分的最重要原则应该是( c )A模块高内聚 B模块低耦合 C模块独立性 D程序模块化2、软件工程方法的提出起源于软件危机,而其目的应该是最终解决软件的什么问题?( D )A产生危机 B质量保证 C开发效率 D生产工程化3、软件工程开发的可行性研究是决定软件项目是否继续开发的关键,而可行性研究的结论主要相关于( A )A软件系统目标 B软件的性能C软件的功能 D软件的质量4、软件需求分析一般应确定的是用户对软件的( D )A.功能需求B.非功能需求C.性能需求D.功能需求和非功能需求5、软件测试是满足软件的功能和性能要求,保证软件正确性的措施,一般软件测试计划的制订应始于软件开发的哪个阶段? ( D )A.需求分析B.软件设计C.程序编码D.软件计划6、软件工程方法是在实践中不断发展的方法,而早期的软件工程方法主要是指( B )A.原型化方法B.结构化方法C.面向对象方法.D.功能分解法7、数据流图描述数据在软件中流动和被处理变换的过程,它是以图示的方法来表示,即.( A )A.软件模型B.软件功能C.软件结构D.软件加工8、软件工程学涉及到软件开发技术和工程管理两方面的内容,下述内容中哪一个不属于开发技术的范畴?(D)A.软件开发方法B.软件开发工具C.软件工程环境D.软件工程经济9、软件文档是软件工程实施中的重要成份,它不仅是软件开发的各阶段的重要依据,而且也影响软件的()A.可理解性B.可维护性C.可扩展性D.可靠性10、从( )语言开始,软件摆脱了对硬件的依赖。

A.第一代B.第二代C.第三代D.第四代11、在下面列出的基本成分中,哪个不是实体关系图的基本成分? ( )A.实体B.数据存储C.关系 D属性13、结构化程序设计主要强调程序的(C)A.效率B.速度C.可读性D.大小14、在软件工程中根据程序的功能说明,而不关心程序内部逻辑的测试方法为( A )A.黑盒法B.白盒法C.灰盒法D.综合法15、软件开发的结构化分析方法,常用的描述软件功能需求的工具有( C )A业务流程图,数据字典 B.软件流程图,模块说明C.数据流图,数据字典D.系统流程图,程序编码16、结构化程序设计思想的核心是要求程序只由顺序、循环和( A )三种结构组成。

软件工程六十题需求分析

软件工程六十题需求分析

软件工程六十题1﹑软件产品的特性是什么?产品特性:⑴是一种逻辑产品,与物质产品有很大的区别。

⑵软件产品的生产主要是研制,生产成本主要在开发和研制,开发研制完成后,通过复制就产生了大量软件产品。

⑶软件产品不会用坏,不存在磨损,消耗。

⑷生产主要是脑力劳动,还末完全摆脱手工开发方式,大部分产品是"定做"的⑸开发软件的费用不断增加,致使生产成本相当昂贵。

2﹑软件生产有几个阶段?各有何特征?⑴程序设计时代:这个阶段生产方式是个体劳动,使用的生产工具是机器语言,汇编语言。

⑵程序系统时代:这个阶段生产方式是小集团合作生产,使用的生产工具是高级语言,开发方法仍依靠个人技巧,但开始提出结构化方法。

⑶软件工程时代:这个阶段生产方式是工程化的生产,使用数据库﹑开发工具﹑开发环境﹑网络﹑分布式﹑面向对象技术来开发软件。

3﹑什么是软件危机?产生原因是什么?软件开发技术的进步未能满足发展的要求。

在软件开发中遇到的问题找不到解决的办法,问题积累起来,形态尖锐的矛盾,导致了软件危机。

产生原因:⑴软件规模越来越大,结构越来越复杂。

⑵软件开发管理困难而复杂。

⑶软件包开发费用不断增加。

⑷软件开发技术落后。

⑸生产方式落后,仍采用手工方式。

⑹开发工具落后,生产率提高缓慢。

4﹑什么是软件工程?它目标和内容是什么?软件工程就是用科学的知识程和技术原理来定义,开发,维护软件的一门学科。

软件工程目标:付出较低开发成本;达到要求的功能;取得较好的性能;开发的软件易于移植;只需较低的维护费用;能按时完成开发任务,及时交付使用;开发的软件可靠性高。

软件工程内容:研究内容包括开发技术和开发管理两个方面。

开发技术主要研究:软件开发方法,开发过程,开发工具和环境。

开发管理主要研究:软件管理学,软件经济学,软件心理学。

5﹑软件工程面临的问题是什么?软件工程需要解决的问题:软件的费用,可靠性,可维护性,软件生产率和软件的重用。

6﹑什么是软件生存周期?它有哪几个活动?软件生存周期:一个软件从提出开发要求开始直到该软件报废为止的整个时期。

(完整版)2、软件工程复习题及答案

(完整版)2、软件工程复习题及答案

中南大学现代远程教育课程考试(专科)复习题及参考答案软件工程一、单项选择题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、软件调试技术包括()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、定义时期B、分析论证时期C、调研时期D、初始阶段13、结构化分析方法是一种预先严格定义需求的方法,它在实施时强调的是分析对象的()A、数据流B、数据元素C、数据结构D、数据约束14、软件维护是软件得以正常运行的重要环节,按照软件工程方法的理解,一般软件维护应该开始于()A、修改源代码B、阅读设计文档C、阅读源代码D、修改设计文档15、以实体、联系和属性等基本概念为基础的实体联系图是基本实体联系图。

软件工程复习题及答案(完整)

软件工程复习题及答案(完整)

一、选择1、文档是软件产品的一部分,没有文档的软件就不称其为软件。

对2、在需求分析过程中,分析员要从用户那里解决的最重要的问题是给该软件提供哪些信息。

错3、需求规格说明书在软件开发中具有重要的作用,它也可以作为软件可行性分析的依据。

错4、建立用例模型的步骤包括确定角色、确定用例和绘制用例图。

错5、数据流图建立系统的功能模型,它由数据流、加工和数据存贮组成。

错6、软件配置管理是一组标识、组织和控制修改源程序的活动。

错7、UML是一种直观化、明确化、构建和文档化软件产物的通用语言。

错8、好的测试是用少量的测试用例运行程序,发现被测程序尽可能多的错误。

对9、边界值分析方法是取输入/输出等价类的边界值作为测试用例。

对10、面向对象的分析是面向计算机系统建立软件系统的对象模型。

错11、(D)是将系统化的、规范的、可定量的方法应用于软件的开发、运行和维护的过程,它包括方法、工具和过程三个要素。

A 软件过程B 软件测试C 软件生存周期D 软件工程12、ISO9000是由ISO/TC176制定的关于(B)和质量保证的国际标准。

A 质量控制B 质量管理C 质量策划D 质量改进13、CMM提供了一个框架,将软件过程改进的进化步骤组织成5个成熟度等级。

除第1级外,每个等级都包含了实现该成熟度等级目标的若干(B)。

A 关键实践 B 关键过程域 C 软件过程能力 D 软件过程14、在软件开发的各种资源中,(D)是最重要的资源。

A 开发工具B 方法C 硬件环境D 人员15、软件的复杂性是(A),它引起人员通信困难、开发费用超支、开发时间超时等问题。

A 固有的B 人为的C 可消除的D 不可降低的16、在各种不同的软件需求中,(D)描述了用户使用产品必须要完成的任务,可以在用例模型或方案脚本中予以说明。

A 业务需求B 功能需求C 非功能需求D 用户需求17、原型化方法是用户和软件开发人员之间进行的一种交互过程,适用于(A)系统。

2018软考试题及答案

2018软考试题及答案

2018软考试题及答案一、单项选择题(每题1分,共10分)1. 软件工程中,需求分析阶段的主要任务是()。

A. 确定软件的功能需求B. 设计软件的体系结构C. 编写软件的详细设计文档D. 进行软件的测试工作答案:A2. 在面向对象的程序设计中,封装的目的是()。

A. 提高程序的运行效率B. 增强程序的可读性C. 隐藏对象的内部状态和实现细节D. 简化程序的调试过程答案:C3. 数据库管理系统(DBMS)的主要功能不包括()。

A. 数据定义B. 数据操纵C. 数据存储D. 程序编译答案:D4. 在项目管理中,风险管理的主要目的是()。

A. 完全避免风险B. 识别风险并制定应对策略C. 增加项目的成本D. 延长项目的周期答案:B5. 软件测试的目的是()。

A. 证明软件是正确的B. 发现尽可能多的软件缺陷C. 确保软件满足用户需求D. 减少软件的开发成本答案:B6. 在敏捷开发中,迭代周期通常较短,其主要目的是()。

A. 增加工作量B. 减少沟通成本C. 提高软件质量D. 降低项目风险答案:D7. 软件配置管理的主要任务不包括()。

A. 版本控制B. 变更管理C. 软件发布D. 性能优化答案:D8. 在软件工程中,模块化设计的主要优势是()。

A. 增加软件的复杂性B. 提高软件的可维护性C. 降低软件的性能D. 减少软件的功能答案:B9. 软件项目的成本估算不包括()。

A. 人力成本B. 设备成本C. 培训成本D. 软件销售收入答案:D10. 软件维护的主要类型不包括()。

A. 改正性维护B. 适应性维护C. 完善性维护D. 创新性维护答案:D结束语:以上是2018年软件考试的部分试题及答案,希望对您的复习有所帮助。

《软件工程》-经典考试例题复习题,重点知识点(含答案)

《软件工程》-经典考试例题复习题,重点知识点(含答案)

1.某旅馆的电话服务如下:可以拨分机号和外线号码。

分机号是从7201至7299。

外线号码先拨9,然后是市话号码或长话号码。

长话号码是以区号和市话号码组成。

区号是从100到300中任意的数字串。

市话号码是以局号和分局号组成。

局号可以是455,466,888,552中任意一个号码。

分局号是任意长度为4的数字串。

要求:写出在数据字典中,电话号码的数据流条目的定义即组成。

电话号码=[分机号|外线号码]分机号=7201 (7299)外线号码=9+[市话号码|长话号码]长话号码=区号+市话号码区号=100 (300)市话号码=局号+分局号局号=[455|466|888|552]分局号=4{数字}4数字=[0|1|2|3|4|5|6|7|8|9]2.为以下程序流程图分别设计语句覆盖和判定覆盖测试用例,并标明程序执行路径。

(1)语句覆盖测试用例令x=2,y=0,z=4作为测试数据,程序执行路径为abcde。

(2)判定覆盖可以设计如下两组数据以满足判定覆盖:x=3,y=0,z=1(1分)(通过路径abce);x=2,y=1,z=2(1分)(通过路径acde)。

或者x=2,y=1,z=1;覆盖路径acdex=1,y=1,z=1;覆盖路径acex=3,y=0,z=1;覆盖路径abce(注意:本题也还可以有其他答案)3.请用判定表画出以下问题的行为逻辑。

人们往往根据天气情况决定出门时的行装。

天气可能下雨,也可能不下雨;下雨或不下雨天气可能变冷,也可能不变冷。

如果天气要下雨,出门时带上雨伞;如果天气变冷,4.对下列子程序进行调试:procedure example(y,z: real; var x: real)beginif (y>1) and (z=0) then x:=x/y;if (y=2) or (x>l) then x:=x+l;end.该子程序接受x, y, z的值,并将计算结果x的值返回给调用程序。

软件需求分析复习题

软件需求分析复习题

软件需求分析复习题一、判断题1、使用实例方法可以使用户更清楚地认识到新系统允许他做什么,那么我们就应该试图把每一个需求及一个使用实例相联系,尽可能多的使用实例。

〔F〕2、在状态图中定义的状态主要有:初态(即初始状态),终态(即最终状态)与中间状态,在一张状态图中只能有一个初态,而终态那么可以有0至多个。

〔T 〕3、构造化分析方法适合于数据处理类型软件的需求分析。

〔T〕4、数据流图中每个加工至少有一个输入数据流,但可以没有输出数据流。

〔F〕5、DFD及数据流程图的区别是程序流程图用于表示程序的过程设计,DFD用作描述软件的逻辑功能,不能表示程序的控制构造。

〔T〕6、属性是指实体某一方面的特征,一个实体通常有多个属性。

联系也可以有属性。

〔T〕7、软件需求描述的是“如何做〞,而不是“做什么〞。

〔F〕8、软件成功的标准是用户在用,并且可以很容易做完要做的事。

〔T〕9、业务规那么包括企业方针、政府条例、工业标准、会计准那么与计算方法等。

业务规划本身就是软件需求。

〔F〕10、软件需求的层次包括业务需求、用户需求、功能需求。

〔T〕二、选择题1.需求分析最终结果是产生〔C 〕A.工程开发方案B.可行性分析报告C.需求规格说明书D.设计说明书2.需求分析中,开发人员要从用户那里解决的最重要的问题是〔A 〕A.让软件做什么B.要给软件提供哪些信息C.需求软件工作效率怎样D.让软件具有何种构造3.需求规格说明书的内容不应包括对〔B 〕的描述。

A.主要功能B.算法的详细过程C.用户界面的运行环境D.软件性能4.需求规格说明书的作用不应包括〔D 〕A.软件设计的依据B.用户及开发人员对软件要做什么的共同理解C.软件验收的依据D.软件可行性研究的依据5.下面关于面向对象方法中消息的表达,不正确的选项是〔B 〕A.键盘,鼠标,通信端口、网络等设备——有变化,就会产生消息B.操作系统不断向应用程序发送消息,但应用程序不能向操作系统发送消息C.应用程序之间可以相互发送消息D.发送及接收消息的通信机制及传统的子程序调用机制不同6.面向对象技术中,对象是类的实例。

软件需求分析与设计复习题-软件工程

软件需求分析与设计复习题-软件工程

软件需求分析与设计复习题一.判断1、( × ) 程序设计语言种类很多,在进行软件开发时可以随便选择一种语言进行编码。

2. ( x ) 软件需求规格说明书在软件开发中具有重要的作用,是软件可行性分析的依据。

3、(× ) 在软件开发的各个阶段进行过程中,增加人员肯定会对整个项目提前完成有好处。

4.( x ) 好的测试用例应能证明软件是正确的。

5.( x ) 软件功能测试的测试用例主要是由需求阶段的功能说明部分转化而来。

6、( x ) CoCoMo模型可以用来估算系统的工作量和软件开发所需时间。

7.( x ) 有时为了测试的方便,而可以局部地修改软件系统。

8、( v ) OOA方法的核心思想是利用面向对象的概念和方法为软件需求建造模型,大致步骤是识别对象(属性和方法),识别类及其结构,定义对象之间的消息传递等。

9.( x ) 面向对象方法更适合于软件重用的根本原因在于它是软部件唯一的合成技术。

10、( v ) 系统需求分析员应该具有开发软、硬件系统的经验并且了解用户领域的知识。

11.( x ) 在软件的生命周期中,工作量最大的一个阶段就是编写程序。

12、( x )软件运行正确,可见软件中没有缺陷(fault)。

13.( x ) RUP(Rational Unified Process:统一软件过程)本质上是轻量级的软件过程规范。

14、( v )软件失败(failure)在系统交付之前和交付之后都可能被发现。

15.( x ) 基准测试(benchmark test)是非正式的用户确认和验收测试。

16、( x )开发人员和客户对软件质量因素的认可是完全一致的。

17.( x ) UML语言支持面向对象的主要概念,并与具体的开发过程相关。

18、( v )里程碑(milestone)就是开发过程中的某个活动(activity)。

19.( v ) 好的软件测试是用少量的测试用例运行程序,发现被测程序尽可能多的错误。

软件工程复习题库带答案完整版

软件工程复习题库带答案完整版

一、选择题1、白盒测试法是通过分析程序的(C)来设计测试用例的。

A.应用范围B.功能C.内部逻辑D.输入数据2、风险预测从两个方面评估风险,即风险发生的可能性以及(D)。

A.风险产生的原因B.风险监控技术C.风险能否消除D.风险发生所产生的后果3、极限编程(XP)由价值观、原则、实践和行为四部分组成,其中价值观包括沟通、简单性和(C)。

A.好的计划B.不断的发布C.反馈和勇气D.持续集成4、等价分类法的关键是(C)。

A.确定等价类的边界条件B.按照用例来确定等价类C.划分等价类D.确定系统中相同和不同的部分5、下列不属于黑盒测试的技术是(A)。

A.程序段或语句的功能 B.模块的接口C.数据的名称和用途 D.模块的功能6、为了提高模块的独立性,模块之间最好是(D)耦合。

A.控制耦合B.公共耦合C.内容耦合D.数据耦合7、一个软件开发过程描述了“谁做”,“做什么”,“怎么做”和“什么时候做”,RUP用(A)来表述“谁做”。

A.角色B.活动C.制品D.工作流8、功能性注释嵌入在源程序内部,它是用来说明(A)。

A.程序段或语句的功能 B.模块的接口C.数据的名称和用途 D.模块的功能9、在结构化分析方法中,数据字典是重要的文档。

对加工的描述是数据字典的组成内容之一,常用的加工描述方法有( C )。

A.只有结构化语言 B.有结构化语言和判定树C.有结构化语言、判定树和判定表 D.有判定树和判定表10、某银行为了使其网上银行系统能够支持信用卡多币种付款功能而进行扩充升级,这需要对数据类型稍微进行一些改变,这一状况需要对网上银行系统进行( B )维护。

A.正确性 B.适应性C.完善性 D.预防性11、软件危机的主要原因是(A)。

A软件本身特点与开发方法B对软件的认识不够C软件生产能力不足D软件工具落后12、DFD是常用的进行软件需求分析的图形工具,其基本符号是(C)。

A.输入、输出、外部实体和加工B.变换、加工、数据流和存储C.加工、数据流、数据存储和外部实体D.变换、数据存储、加工和数据流13、软件工程管理是对软件项目的开发管理。

软件工程复习题及答案

软件工程复习题及答案

一、单项选择题1.软件可行性研究实质上是要进行一次需求分析、设计过程。

A.简化、压缩的B.详细的C.彻底的D.深入的2.以下哪个软件生存周期模型是一种风险驱动的模型。

A.瀑布模型B.增量模型C.螺旋模型D.喷泉模型3.可行性分析中,系统流程图用于描述。

A.当前运行系统B.当前逻辑模型C.目标系统D.新系统4.结构化分析建立功能模型的工具是。

A.DFDB.判定树/判定表C.SCD.结构化语言5.检查软件产品是否符合需求定义的过程称为。

A.确认测试B.集成测试C.系统测试D.单元测试6.在整个软件维护阶段所花费的全部工作中,所占比例最大的是。

A.校正性维护B.适应性维护C.完善性维护D.预防性维护7.通信内聚是指。

A.把需要同时执行的动作组合在一起形成的模块B.各处理使用相同的输入数据或者产生相同的输出数据C.一个模块中各个处理元素都密切相关于同一功能且必须顺序执行D.模块内所有元素共同完成一个功能,缺一不可8.一个只有顺序结构的程序,其环形复杂度是。

A.0B.1C.3D.59.下述四个能力成熟度等级,级别最高的是。

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.应用执行对象的操作可以改变该对象的。

软件工程(第五版)--习题及答案--第三章

软件工程(第五版)--习题及答案--第三章

软件⼯程(第五版)--习题及答案--第三章⼀、判断题1、(√)软件需求分析阶段要确定软件系统要“做什么”。

2、(×)软件需求规格说明书可作为可⾏性研究的依据。

3、(√)需求分析员可以参加最后的需求评审⼯作。

4、(×)画数据流图时可以加少量的控制流,使加⼯之间有时序的关系。

5、(√)结构化分析模型的核⼼是数据词典。

6、(×)在数据流图中,带有箭头的线段表⽰的是控制流。

7、(×)在软件⽣产过程中,需求信息的来源是项⽬经理。

8、(√)需求分析阶段的任务是确定软件的功能。

⼆、选择题1、需求分析最终结果是产⽣(B)。

A、项⽬开发计划B、需求规格说明书C、设计说明书D、可⾏性分析报告2、数据流图(DFD)是(A)⽅法中⽤于表⽰系统的逻辑模型的⼀种图形⼯具。

A、SAB、SDC、SPD、SC3、需求规格说明书的作⽤不包括(C)。

A、软件验收的依据B、⽤户与开发⼈员对软件要做什么的共同理解C、软件可⾏性研究的依据D、软件设计的依据4、数据词典是⽤来定义(D)中的各个成分的具体含义。

A、流程图B、功能结构图C、结构图D、数据流图5、结构化分析⽅法(SA)是⼀种⾯向(B)的分析⽅法。

A、数据结构B、数据流C、结构化数据系统D、对象6、在数据词典中,以下哪⼀项表⽰允许重复0⾄任意次(A)。

A、{ }B、0{ }C、0{ }nD、{ }n7、以下数据流图符号中哪⼀个表⽰加⼯(B)。

A、B、C、D、8、软件开发的需求活动,其主要任务是(D)。

A、给出软件解决⽅案B、给出系统模块结构C、定义模块算法D、定义需求并建⽴系统模型9、结构化分析的核⼼是(A)。

A、⾃顶向下的分解B、⽤DFD建模C、⽤DD描述数据需求D、⾃底向上的抽象10、需求分析的任务是(A)。

A、正确说明让软件“做什么”B、⽤DFD建模C、⽤DD建⽴数学模型D、给出需求规格说明书11、对于分层的DFD,⽗图与⼦图的平衡是指(B)。

《软件工程学》第3章 需求分析-答案

《软件工程学》第3章 需求分析-答案

3.1 需求分析的任务和步骤1.需求分析阶段产生的文档是软件需求规格说明书。

2.需求分析的任务是要建立软件的逻辑模型。

3.分析系统的数据要求是软件需求分析阶段的一个重要的任务。

4.需求分析的任务不包括(B)。

A.问题分析B.系统设计C.需求描述D.需求评审5.需求规格说明书是在计划时期可行性研究阶段产生的文档。

(×)6.需求分析阶段的成果主要是需求规格说明,但该成果与软件设计、编码、测试直至维护关系不大。

(×)7.软件需求是指用户对目标软件系统在功能、性能、行为、设计约束等方面的期望。

(√ )8.需求分析中的性能要求是指系统的技术性能指标,包括:存储量、响应时间、精确度和安全保密等方面。

(√ )3.2 需求分析获取的常用方法3.3 需求分析的方法3.4 结构化分析技术1.要将一个复杂的系统分析清楚,常用方法的结构化分析方法就是( A )A.面向数据流自顶向下逐步求精的方法B.由内向外进行分析的方法C.先局部后整体的分析方法D.使用IPO图形工具分析的方法2.结构化程序设计的一种基本方法是( D )。

A.筛选法B.递归法C.归纳法D.逐步求精法3.结构化程序设计主要强调的是( A )。

A.程序易读性B.程序的效率C.程序的规模D.程序设计语言的先进性4.下列各种叙述中,哪一个不是结构化方法的特征?( C )A.严格定义需求B.划分开发阶段C.提供运行模型D.制定规范文档5.通常所说的结构化设计(SD)是属于基于( B )的设计方法。

A.数据结构B.数据流C.对象D.以上均可6.通常所说的结构化设计方法就是基于数据流的设计方法。

7.结构化程序设计强调模块采用自上而下逐步求精设计方法,单入口、单出口。

(√ )3.5 需求分析图形工具。

软件工程考试题及答案

软件工程考试题及答案

软件工程考试题及答案一、选择题(每题2分,共20分)1. 软件工程中的需求分析阶段的主要任务是什么?A. 确定软件的功能需求B. 设计软件的架构C. 编写软件的详细设计文档D. 进行软件的编码实现答案:A2. 在软件开发过程中,哪个阶段是进行风险评估的?A. 需求分析B. 设计C. 编码D. 测试答案:B3. 软件测试中的黑盒测试通常是基于什么进行的?A. 程序源代码B. 程序的内部逻辑C. 程序的功能需求D. 程序的运行环境答案:C4. 敏捷开发方法论中,哪个活动是迭代的核心?A. 需求收集B. 编码实现C. 测试D. 回顾会议答案:B5. 在软件维护中,哪种类型的维护是最常见的?A. 纠错性维护B. 适应性维护C. 完善性维护D. 预防性维护答案:A二、填空题(每空1分,共10分)6. 软件工程的生命周期包括需求分析、________、编码、测试和维护等阶段。

答案:设计7. 软件工程中的_______原则指的是高内聚低耦合。

答案:模块化8. 在软件开发中,_______ 是指软件在特定条件下使用时,能够达到预期功能、性能要求的能力。

答案:可靠性9. 软件项目管理中的_______ 是指在项目开发过程中,对项目进行监控和控制,确保项目按计划进行。

答案:监控10. 在软件测试中,_______ 是指测试用例设计得尽可能覆盖所有可能的执行路径。

答案:穷尽测试三、简答题(每题10分,共30分)11. 简述软件工程中的模块化设计原则及其优点。

答案:模块化设计原则是指将软件系统划分为多个模块,每个模块具有特定的功能,并且模块之间通过定义良好的接口进行交互。

其优点包括:- 易于管理:模块化使得软件更容易理解和维护。

- 可重用性:模块可以在不同的项目中重复使用。

- 并行开发:模块化允许多个团队并行开发不同的模块。

- 灵活性:模块化提高了软件的灵活性,便于扩展和修改。

12. 解释什么是软件的可维护性,并说明其重要性。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、单项选择题1. 以下哪一项不是软件危机的表现( B)A.开发的软件可维护性差 B.软件极易被盗版C.经费预算经常被突破 D.开发的软件不能满足用户需求2.下面不属于软件工程的三个要素是( B )。

A 过程B 环境C 方法D 工具3. 需求分析阶段的任务是确定( D )。

A 软件开发方法B 软件开发工具C 软件开发费用D 软件开发功能4. 下列不属..于.需求分析工具的是( D )。

A.数据流图B.用例图C.状态图D.程序流程图5.关于软件测试的目的,下面观点错误的是( C)A.为了发现错误而执行程序的过程B.一个好的测试用例能够发现至今尚未发现的错误C.证明程序是正确、没有错误的D.一个成功的测试用例是发现了至今尚未发现的错误的测试6. 软件详细设计阶段的任务是( A)。

A.算法与数据结构设计B.功能设计C.调用关系设计D.输入/输出设计7. 下列属于静态测试方法的是( A )A.人工检测 B.路径覆盖C.黑盒测试 D.白盒测试8.汽车是一种交通工具,汽车类和交通工具类之间的关系是( C)A.组合聚集关系 B. 共享聚集关系C.一般-具体关系 D. 整体-部分关系9.结构化程序设计的风格,主要强调的是( C )。

A.程序的执行效率B.模块的内聚C.程序的可理解性 D.模块的耦合10.在整个软件维护阶段所花费的全部工作中,所占比例最大的是( D)。

A.校正性维护 B.适应性维护C.预防性维护 D.完善性维护11. “软件工程的概念是为解决软件危机而提出的”这句话的意思是( C )A.强调软件工程成功解决了软件危机的问题B.说明软件危机的存在总是使软件开发不像传统工程项目那样容易管理C.说明软件工程这门学科的形成是软件发展的需要D.说明软件工程的概念,即:工程的原则、思想、方法可解决当时软件开发和维护存在的问题12. 在软件工程的需求分析阶段,不属于问题识别内容的是( A )A. 输入/输出需求B.性能需求C.环境需求D.功能需求13. 软件需求规格说明书的作用不包括( C)A.软件验收的依据B.软件设计的依据C.软件可行性研究的依据D.用户与开发人员对软件要做什么的共同理解14.一个成功的测试可以( B )A.表明程序没有错误B.发现了尚未发现的错误C.发现所有错误D.提高软件的可靠性15. 下列属于详细设计工具的是( D )A.数据流图B.用例图C.状态图D.程序流程图16. 下列不属于动态测试方法的是( A)A.人工检测 B.路径覆盖C.白盒测试 D.黑盒测试17.大学生是学生,学生类和大学生类之间的关系是( C )A.组合聚集关系 B. 共享聚集关系C.一般-具体关系 D. 整体-部分关系18.为了提高软件的可维护性,编程阶段应注意( B )。

A.提高模块的独立性 B.养成良好的程序设计风格C.文档的副作用 D.保存测试用例和数据19. 软件生命周期中所花费用最多的阶段是(D)。

A.详细设计 B.软件编码C.软件测试 D.软件维护二、简答题1. 软件生存周期可以分为几个阶段,每个阶段的提交物是什么?答:软件生存周期分为六个阶段:(1)可行性研究和项目开发计划,提交项目开发计划和可行性分析报告。

(2)需求分析,提交软件需求说明书。

(3)概要设计,提交概要设计说明书。

(4)详细设计,提交详细设计说明书。

(5)编码,提交源程序清单。

(6)测试,提交测试报告。

(7)维护,提交维护报告。

2. 简述统一过程模型(UP)及其主要的特点。

答:统一过程模型是风险驱动的基于用例技术的,以架构为中心的,迭代可配置的软件开发流程。

主要特点:UP是一个通用的过程框架,可以用于各类软件系统和应用领域,并是以用例驱动的,以架构为中心,迭代和增量的过程,是在重复一系列组成系统生命周期的循环。

3. 简述需求分析的任务及其过程步骤。

答:需求分析的任务是理解客户需要什么,分析需求,评价可行性,协商合理的方案,无歧义地详细说明方案,确认规格说明,管理要求,以至将这些需求转化为可行系统。

过程步骤:(1)初步沟通(2)导出需求(3)分析和精化(4)可行性研究(5)协商与沟通(6)规格说明4. 什么是黑盒测试技术?并简述有哪些常用黑盒测试方法。

答:黑盒测试技术是根据程序组件的规格说明测试软件功能的方法。

常用的黑盒测试方法:等价类划分法,边界值分析法和错误推测法,因果图法等。

5.什么是软件配置管理?配置管理主要有哪些活动?答:软件配置管理是对软件变通(或称为进化)过程的管理。

主要活动:(1)配置管理规划(2)变更管理(3)版本和发布管理6. 原型按其使用方式的不同分为哪几种类型?答:根据原型的不同作用,有三类原型模型:1、探索型原型这种类型的原型是把原型用于开发的需求分析阶段,目的是要澄清用户的需求,确定所期望的特性,并探索各种方案的可行性。

它主要针对开发目标模糊,用户与开发都对项目都缺乏经验的情况,通过对原型的开发来探明用户的需求。

2、实验型原型这种原型主要用于设计阶段,考核实现方案是否合适,能否实施。

对于一个大型系统,若对设计方案没有把握时,可通过这种原型来证实设计方案的正确性。

3、演化型原型这种原型主要用于及早向用户提交一个原型系统,该原型系统或者包含系统的框架,或者包含系统的主要功能,在得到用户的认可后,将原型系统不断扩充演变为最终的软件系统。

它将原型的思想扩展到软件开发的全过程。

7.什么是软件危机?软件危机的表现是什么?其产生的原因是什么?答:软件危机是指计算机运行速度,容量,可靠性有显著地提高,生产成本显著下降,这为计算机的广泛应用创造了条件。

一些复杂的,大型的软件开发项目提出来了。

但是软件开发技术的进步一致未能满足发展的需要。

在软件开发中遇到的问题找不到解决办法,使问题积累起来,形成尖锐的矛盾,因而导致了软件危机。

软件危机表现在以下四个方面: 1、经费预算经常突破;2、开发的软件不能满足用户要求;3、开发的软件可维护性差;4、开发的软件可靠性差。

造成软件危机的原因是: 1、软件的规模越来越大,结构越来越复杂;2、软件开发管理困难而复杂;3、软件开发费用不断增加;4、软件开发技术落后;5、生产方式落后;6、开发工具落后,生产率提高缓慢。

8. 可行性研究报告的主要内容有哪些?答:可行性研究报告主要内容是回答以下三个问题(1)系统是否符合软件使用单位的总体要求(2)系统是否可以在现在的技术条件,预算和时间限制内完成(3)系统能否把已有的其他系统集成9. 简述软件概要设计的任务。

答:软件概要设计的主要任务是:将系统划分成模块,决定每个模块的功能,决定模块的调用系统,即模块间传递的数据,决定模块的界面。

10. 什么是白盒测试技术?并简述有哪些常用白盒测试方法。

答:白盒测试技术是有选择地执行(或覆盖)程序中某些最有代表性路径的测试方法。

常用的白盒测试方法:语句覆盖,判定覆盖,条件覆盖,判定条件覆盖,条件组合覆盖。

11. 什么是软件配置项?答:计算机程序(源程序和执行代码),软件(产品)文档(技术文档和用户文档)以及数据(程序内部和程序外部的数据),这些输出信息包含了所有在软件过程中产生的信息,称为软件配置项。

12.原型按其开发方式的不同分为哪几种类型?答:由于运用原型的目的和方式不同,在使用原型时也采取不同的策略,有抛弃策略和附加策略。

(1)抛弃策略抛弃策略是将原型用于开发过程的某个阶段,促使该阶段的开发结果更加完整、准确、一致、可靠,该阶段结束后,原型随之作废。

探索型和实验型就是采用此策略的。

(2)附加策略附加策略是将原型用于开发的全过程,原型由最基本的核心开始,逐步增加新的功能和新的需求,反复修改反复扩充,最后发展为用户满意的最终系统,演化型快速原型就是采用此策略。

采用何种形式、何种策略运用快速原型主要取决于软件项目的特点、人员素质、可供支持的原型开发工具和技术等,这要根据实际情况的特点来决定。

三、用例建模分析题1.分析图书管理系统要求,画出该系统的用例图。

管理员:管理员能按系统授权维护和使用系统不同功能,可以创建、修改、删除读者信息和图书信息即读者管理和图书管理,借阅、归还图书以及罚款即借阅管理。

读者:读者能通过互联网或图书馆查询终端,查询图书信息和个人借阅信息,还可以在符合续借的条件下自己办理续借图书。

解答:由此可见该系统的用例图:2.分析旅店预定系统要求,画出该系统的用例图。

某公司要开发一个旅店预定系统,该旅店可对外开放豪华双人间、双人间、三人间和单人间,房间费用视情况按季节调整,但周一到周五半价(周末全价)折扣不变。

对于外界请求,该系统应能根据请求入住时间预定指定档次的房间,记录旅客姓名、地址、联系电话、有效证件号、房间类型和预定天数,并计算出总费用。

预定的同时旅客按规定须提交10%定金。

六个小时之内旅店允许旅客取消预定,并退回所有定金,超过六个小时定金不退还。

每周一系统自动打印一周预定情况清单。

采用哪种费用支付方式和何种类型操作界面尚不确定。

解答:四、 综合分析与设计题1.某登录用例描述如下:1.界面对象接受输入的用户名和密码2.用例控制对象根据用户名和密码进行权限验证3.用户对象确认用户是合法用户4.通过用户的用户组对象获得有关权限5.界面对象显示登录成功(1)画出该用例分析阶段的顺序图解答:(2)给出三层经典架构及其对应的软件设计类的类型解答:层经典架构:展现层、业务逻辑层、数据层。

对应的软件设计类:边界类、控制类、实体类。

(3)画出该用例软件设计阶段的顺序图解答:2. 某登录用例描述如下:1.界面对象接受输入的用户名和密码2.用例控制对象根据用户名和密码进行权限验证3.用户对象确认用户是合法用户4.通过用户的用户组对象获得有关权限5.界面对象显示登录成功1. 识别分析出该用例的类图。

2. 请分析上述用例描述,画出分析阶段的顺序图。

解答:五、测试用例设计题1.下面是一段伪码程序(代码前的数字只作标号用,不参与程序执行):START1:INPUT(A,B,C,D)2:IF(A>0)AND(B>0)THEN3:X=A+BELSE4:X=A-B5:END6:IF(C>A)OR(D<B)THEN7:Y=C-DELSE8:Y=C+D9:END10:PRINT(X,Y)STOP根据以上的描述:(1)画出对应的流程图和程序图。

(2)计算程序图的环形复杂度。

(3)确定该程序的基本路径。

(4)采用基本路径测试方法设计一组测试用例。

解答:(1)(2)根据程序图,由V(G)=E-N+2可知:12-9+2=5 (3)共5条基本路径:1-4-5-8-9;1-4-5-6-8-9;1-4-5-6-7-9;1-2-4- …;1-2-3-5-(4)。

相关文档
最新文档