软件工程导论试题及答案
- 格式:doc
- 大小:702.50 KB
- 文档页数:12
软件工程导论(第六版)部分课后习题-答案软件工程导论(第六版)部分课后习题-答案一、选择题1. 答案:B解析:选择题解析2. 答案:A解析:选择题解析二、判断题1. 答案:对解析:判断题解析2. 答案:错解析:判断题解析三、填空题1. 答案:软件工程解析:填空题解析2. 答案:开发、维护解析:填空题解析四、简答题1. 答案:软件需求分析是软件工程的第一步,它主要是通过对用户需求的调查和分析,确定软件系统需要具备的功能和性能以及相关约束条件。
解析:简答题解析2. 答案:软件开发过程中的质量保证主要包括软件测试和代码评审两个方面。
软件测试是通过运行和验证软件系统的过程,以确定其是否满足预期的需求和标准。
代码评审则是对软件代码进行审查和评估,在开发过程中发现和修复潜在的问题和错误。
解析:简答题解析五、计算题1. 答案:20解析:计算题解析2. 答案:1000解析:计算题解析六、案例分析题1. 答案:软件项目管理是指对软件项目进行规划、组织、分配和控制的过程。
它包括项目范围管理、时间管理、成本管理、质量管理、风险管理等方面。
在一个项目中,软件项目经理负责整体的项目管理工作,包括资源的分配、进度的控制、风险的管理等。
解析:案例分析题解析2. 答案:敏捷开发是一种迭代、逐步增量的软件开发方法。
它强调快速、灵活地响应用户需求的变化,通过频繁的迭代和持续的反馈来逐步完善软件系统。
敏捷开发方法注重团队合作、交流和高效的沟通,通过直接面对面的沟通取代冗长的文档和繁琐的流程,提高软件开发的效率和质量。
解析:案例分析题解析总结:本文主要针对《软件工程导论(第六版)》部分课后习题提供了答案和解析。
其中包括选择题、判断题、填空题、简答题、计算题和案例分析题等多个题型。
通过解答这些习题,读者可以进一步加深对软件工程的理解和掌握。
希望本文对读者有所帮助,谢谢阅读。
软件工程导论第六版课后习题答案完整版首先,感谢您对软件工程导论课后习题答案的需求。
以下是软件工程导论第六版课后习题的完整答案。
第一章:软件工程概述1.1 问题1. 什么是软件工程?答:软件工程是一种应用工程原理、方法和工具来开发和维护高质量软件的学科。
1.2 问题1. 什么是软件?答:软件是一系列按照特定顺序组织的计算机数据和指令。
第二章:软件过程模型2.1 问题1. 软件过程模型有哪些类型?答:常见的软件过程模型包括瀑布模型、迭代模型、螺旋模型和敏捷开发模型等。
2.2 问题1. 瀑布模型的特点是什么?答:瀑布模型是一种线性顺序模型,以阶段划分为基础,每个阶段的任务在进入下一个阶段前必须完成。
第三章:需求分析与规格说明3.1 问题1. 软件需求描述包括哪些方面的内容?答:软件需求描述需要包括功能性需求、非功能性需求、用户需求和系统需求等。
3.2 问题1. 什么是需求跟踪?答:需求跟踪是指在软件开发过程中,通过建立需求和软件项目中其他相关工件之间的关联,确保需求的准确实现和变更的有效管理。
第四章:软件设计4.1 问题1. 软件设计的目标是什么?答:软件设计的目标是通过确定软件的整体结构和组成部分,确保软件满足需求并具有良好的可维护性和可重用性。
第五章:软件测试与维护5.1 问题1. 什么是软件测试?答:软件测试是一种评估和改进软件质量的过程,目的是发现错误并提高软件的可靠性和可用性。
5.2 问题1. 什么是软件维护?答:软件维护是指在软件交付后的整个生命周期中对软件进行修改和改进,以满足用户需求和修复错误。
第六章:软件配置管理6.1 问题1. 软件配置管理的目标是什么?答:软件配置管理的目标是确保软件在开发和维护过程中的可控性和可追踪性,以及保持软件配置的稳定性和一致性。
6.2 问题1. 软件版本控制是什么?答:软件版本控制是指对软件的不同版本进行管理,包括版本的创建、检出、合并和更新等操作。
至此,我们完成了软件工程导论第六版课后习题的完整答案。
第一章1-1什么是软件危机?是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
1-3什么是软件工程?是指导计算机软件开发和维护的一门工程学科。
1-4简述结构化范型和面向对象范型的要点,并分析它们的优缺点。
目前使用得最广泛的软件工程方法学(2种):1.传统方法学:也称为生命周期方法学或结构化范型。
优点:把软件生命周期划分成基干个阶段,每个阶段的任务相对独立,而且比较简单,便于不同人员分工协作,从而降低了整个软件开发过程的困难程度。
缺点:当软件规模庞大时,或者对软件的需求是模糊的或会承受时间而变化的时候,开发出的软件往往不成功;而且维护起来仍然很困难。
2.面向对象方法学:优点:降低了软件产品的复杂性;提高了软件的可理解性;简化了软件的开发和维护工作;促进了软件重用。
1-6什么是软件过程?它与软件工程方法学有何关系?z软件过程:是为了获得高质量软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤z软件工程方法学:通常把在软件生命周期全过程中使用的一整套技术方法的集合称为方法学,也称范型1-7什么是软件生命周期模型,试比较瀑布模型,快速原型模型,增量模型,和螺旋模型的优缺点,说明每种模型的适用范围。
软件生命周期由软件定义、软件开发和运行维护3个时期组成,每个时期又进一步划分成若干个阶段。
生命周期模型规定了把生命周期划分成哪些阶段及各个阶段的执行顺序,因此,也称为过程模型。
瀑布模型的优点:1.可强迫开发人员采用规范的方法;2.严格规定了每个阶段必须提交的文档;3.要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证。
瀑布模型的缺点:1.在软件开发初期,指明用户全部需求是困难的;2.需求确定后,经过一段时间才得到软件最初版本;3.完全依赖规格说明,导致不能满足用户需求。
适用中小型项目。
快速原型模型的优点:1满足用户需求程度高;2用户的参与面广;3返工现象少快速原型模型的优点:不适用大型软件的开发适用于小型项目。
单项选择题(每小题1分,共10分)1、在结构性的瀑布模型中,哪一个阶段定义的标准将成为软件测试中的系统测试阶段的目标( A )(A)需求分析阶段(B)详细设计阶段(C)概要设计阶段(D)可行性2、研究阶段软件工程方法中普遍定义的方法之一是结构化生命周期方法(SLC方法),下述哪一个论述不具有SLC方法的主要特征( C )A 严格定义需求B 划分开发阶段C 规范文档格式D 分析控制流程3、软件结构中两个模块之间有调用关系,传递简单数据值,相当于高级语言中的值传递,这两个模块之间的耦合是( D )(A)公共耦合(B)控制耦合(C)标记耦合(D)数据耦合4、软件维护的四类维护活动是( A )(A)改正性维护,适应性维护,完善性维护和预防性维护。
(B)适应性维护,完善性维护,抢救性维护和辅助性维护。
(C)改正性维护,适应性维护,完善性维护和辅助性维护。
(D)适应性维护,完善性维护,抢救性维护和预防性维护。
5、主要从( A )几个方面进行系统可行性研究。
(A)技术可行性,经济可行性,操作可行性。
(B)技术可行性,经济可行性,系统可行性。
(C)经济可行性,系统可行性,操作可行性。
(D)经济可行性,系统可行性,时间可行性。
6、进行需求分析可使用多种工具,但( C )是不适用的。
(A)数据流图(B)判定表(C)PAD图(D)数据字典7、软件需求分析阶段的工作,可以分为四个方面:对问题的识别、分析与综合、编写需求分析文档以及( B )(A)软件的总结(B)需求分析评审(C)阶段性报告(D)以上答案都不对8、OMT(Object Modelling Technique)方法的第一步是从问题的陈述入手,构造系统模型。
系统模型由对象模型、( C )组成。
A静态模型和功能模型 B动态模型和过程模型C动态模型和功能模型 D静态模型和操作模型9、为了表示项目管理功能工作中各项任务之间的进度衔接关系,常用的计划管理工具是( D )(A)程序结构图(B)数据流图(C) E-R图(D)甘特(Gantt)图①软件生命周期中所花费用最多的阶段是(D)A.详细设计B.软件编码C.软件测试D.软件维护②可行性分析是在系统开发的早期所做的一项重要的论证工作,它是决定该系统是否开发的决策依据,因必须给出(B)的回答。
第一章4.什么是软件工程?它与软件工程方法学有何关系?软件过程是为了开发高质量的软件产品所需完成的一系列任务的框架,它规定了完成各项任务的工作步骤。
软件过程定义了运用技术方法的顺序,应该交付的文档资料,为保证软件质量和协调软件变化必须采取的管理措施,以及标志完成了相应开发活动的里程碑。
软件过程是软件工程方法学的3个重要组成部分之一。
2、假设要求你开发一个软件,该软件的功能是把读入的浮点数开平方,所得到的结果要求精确到小数点后4位。
一旦实现并测试完成后,该产品将被抛弃。
你打算选用哪种软件生命周期模型?说明你做出选择的理由。
该软件的要求很明确,实现开平方算法的功能也很成熟,因此既无需通过原型来分析需求也无需用原型来验证设计方法。
此外,一旦实现并测试完成后,该产品将被抛弃,因此无需使用有助于提高软件可维护性的增量模型或螺旋模型来开发该软件。
综上所述,为了开发这个软件,使用瀑布模型就可以了。
8.假设你被任命为一家软件公司的项目负责人,你的工作是管理该公司已被广泛应用的字处理软件的新版本的开发。
由于市场竞争激烈,公司规定了严格的完成期限并且已对外公布。
你打算采用哪种软件生命周期模型?为什么?答:对这个项目的一个重要要求是,严格按照已对外公布的日期完成产品开发工作,因此,选择生命周期模型时应该着重考虑哪种模型有助于加快产品开发的进度。
使用增量模型开发软件时可以并行完成开发工作,因此能够加快开发进度。
这个项目是开发该公司已被广泛应用的字处理软件的新版本,从上述事实至少可以得出三点结论:第一,旧版本想当于一个原型,通过收集用户对旧版本的反应,较容易确定对新版本的需求,没有必要再专门建立一个原型系统来分析用户的需求;第二,该公司的软件工程师对子处理软件很熟悉,有开发字处理软件的丰富经验,具有采用增量模型开发新版本字处理软件所需要的技术水平;第三,该软件收到广大用户的喜爱,今后很可能还要开发更新版本,因此,应该把该软件的体系结构设计成开放式,以利于今后的改进和扩充。
1.软件生存周期一般可分为__问题定义__、可行性研究、_需求分析_____、设计编码、__测试________、运行与维护阶段。
2.按软件的功能进行划分,软件可以划分为系统软件、支撑软件和应用软件。
3.可行性研究主要集中在以下四个方面经济可行性、技术可行性、法律可行性和抉择。
4.用户界面的可使用性是用户界面设计最重要的也是最基本的目标。
5.常见的软件概要设计方法有3大类:以数据流图为基础构造模块结构的___结构化设计方法_________,以数据结构为基础构造模块的__jackson方法__________,以对象、类、继承和通信为基础的__面向对象设计方法__________。
6.__数据流图________和__数据字典___共同构成系统的逻辑模型。
7.软件测试的方法有__分析方法________和___非分析方法_______(即黑盒法)。
8.单元测试一般以___白盒_____________测试为主,___黑盒______测试为辅。
9.成本估计方法主要有__自底向上估计________、_自顶向下估计_________和算法模型估计三种类型。
1.下列哪个阶段不属于软件生存周期的三大阶段( C )。
A、计划阶段B、开发阶段C、编码阶段D、维护阶段2.需求分析是(A )。
A、软件开发工作的基础B、软件生存周期的开始C、由系统分析员单独完成的D、由用户自己单独完成的3.原型化方法是软件开发中一类常用的方法,它与结构化方法相比较,更需要( B )。
A、明确的需求定义B、完整的生命周期C、较长的开发时间D、熟练的开发人员4.软件维护时,对测试阶段未发现的错误进行测试、诊断、定位、纠错,直至修改的回归测试过程称为( A )。
A、改正性维护 B、适应性维护C、完善性维护D、预防性维护5.一般说来,投入运行的软件系统中有错误(A )。
A、不是不可以理解的B、是不能容忍的C、是要求退货的理由D、是必然的1.在进行总体设计时应加强模块间的联系。
软件工程导论第六版课后习题答案第一章课后习题答案习题1.1答案:软件工程是使用工程化思维和方法来开发、维护和管理软件的一门学科。
它涵盖了软件开发的全过程,包括需求分析、设计、编码、测试、维护等各个阶段,以及与软件开发相关的项目管理、质量保证等方面。
习题1.2答案:软件是由计算机程序和相关文档组成的,而计算机程序是一组指令的集合,用来描述计算机在某种语言中执行的操作。
因此,软件和计算机程序是密切相关的,但并不完全等同。
软件是包含程序和相关文档的更广泛的概念,它包括了程序的编写、测试、维护等全过程。
习题1.3答案:软件工程的目标是提高软件的质量、可靠性、可维护性和可重用性。
通过使用工程化的方法和技术,软件工程可以使软件开发过程更加系统化、规范化,从而提高软件开发的效率和质量。
软件工程还关注与软件开发相关的项目管理和质量保证等方面,以确保软件能够按时、按预算、按要求的开发和交付。
习题1.4答案:软件工程的主要内容包括需求分析、软件设计、软件编码、软件测试和软件维护等方面。
需求分析是确定软件的功能和性能需求,为后续的设计和编码工作提供基础。
软件设计是根据需求分析的结果,制定软件系统的结构和组织方式,以便于后续的编码和测试。
软件编码是实现软件设计的过程,将设计的概念转化为具体的程序代码。
软件测试是验证软件的正确性和完整性的过程,通过各种测试方法和工具,发现并纠正软件中的错误。
软件维护是对软件进行更新、修复、优化等操作,以确保软件能够长期稳定地运行。
习题1.5答案:软件工程的活动包括项目管理、需求管理、设计管理、配置管理、质量管理等方面。
项目管理是对软件开发项目进行计划、组织和控制的活动,包括项目目标的设定、进度的控制、资源的分配等。
需求管理是对软件需求进行跟踪、分析和管理的活动,包括需求变更的管理、需求优先级的确定等。
设计管理是对软件设计进行管理和控制的活动,包括设计文档的编写、设计评审的组织等。
配置管理是对软件配置进行管理的活动,包括配置项的标识、配置变更的控制等。
软件工程导论(第六版)课后习题答案软件工程导论(第六版)课后习题答案1. 简答题1.1 软件是如何演变而来的?软件起源于计算机的发展。
最初,计算机只能执行硬件内置的指令,而随着计算机的发展,人们开始意识到可以编写程序来控制计算机的行为。
因此,软件就诞生了。
从最初的汇编语言、机器语言编写程序,到高级编程语言的出现,软件也逐渐从简单的指令集合演变为复杂的程序系统。
同时,计算机应用领域的拓展也催生了更多类型的软件,如操作系统、数据库管理系统、图形界面等。
软件工程导论旨在帮助人们理解和应对软件开发过程中的种种问题和挑战。
1.2 简述软件危机的原因以及软件工程的解决途径。
软件危机指的是在软件开发过程中出现的一系列问题和挑战。
其原因主要包括:(1)软件开发过程中需求不明确或者需求频繁变更;(2)软件项目规模庞大,组织和管理困难;(3)软件开发中缺乏标准化的工程方法和规范;(4)软件开发中技术不成熟、人员培训和素质不足等。
为了应对软件危机,软件工程提出了一系列解决途径:(1)引入系统化的软件开发过程,如瀑布模型、迭代模型、敏捷开发等;(2)规范化软件开发活动,如需求分析、软件设计、编码、测试、维护等;(3)建立软件开发的标准和规范,如ISO 9000、CMMI等;(4)提高软件开发人员的专业水平,加强软件工程教育和培训。
1.3 软件工程活动的核心内容是什么?软件工程活动的核心内容包括需求分析、软件设计、编码、测试和维护等。
(1)需求分析:确定用户需求,定义软件的功能和性能要求。
(2)软件设计:制定软件的体系结构,并将需求转化为具体的设计方案。
(3)编码:根据设计方案,使用编程语言实现软件的功能。
(4)测试:验证软件是否符合需求和设计的要求,发现并修复潜在的问题。
(5)维护:对软件进行改进、优化和修复,确保软件长期稳定运行。
2. 应用题2.1 简述软件生命周期模型,并列举至少两种常见的软件生命周期模型。
软件生命周期模型指的是软件开发过程中各个阶段的组织和安排方式,常见的软件生命周期模型包括:(1)瀑布模型:按照固定的顺序依次进行需求分析、设计、编码、测试和维护等活动。
1.软件生存周期一般可分为__问题定义__、可行性研究、_需求分析_____、设计编码、__测试________、运行与维护阶段。
2.按软件的功能进行划分,软件可以划分为系统软件、支撑软件和应用软件。
3.可行性研究主要集中在以下四个方面经济可行性、技术可行性、法律可行性和抉择。
4.用户界面的可使用性是用户界面设计最重要的也是最基本的目标。
5.常见的软件概要设计方法有3大类:以数据流图为基础构造模块结构的___结构化设计方法_________,以数据结构为基础构造模块的__jackson方法__________,以对象、类、继承和通信为基础的__面向对象设计方法__________。
6.__数据流图________和__数据字典___共同构成系统的逻辑模型。
7.软件测试的方法有__分析方法________和___非分析方法_______(即黑盒法)。
8.单元测试一般以___白盒_____________测试为主,___黑盒______测试为辅。
9.成本估计方法主要有__自底向上估计________、_自顶向下估计_________和算法模型估计三种类型。
1.下列哪个阶段不属于软件生存周期的三大阶段( C )。
A、计划阶段B、开发阶段C、编码阶段D、维护阶段2.需求分析是(A )。
A、软件开发工作的基础B、软件生存周期的开始C、由系统分析员单独完成的D、由用户自己单独完成的3.原型化方法是软件开发中一类常用的方法,它与结构化方法相比较,更需要(B )。
A、明确的需求定义B、完整的生命周期C、较长的开发时间D、熟练的开发人员4.软件维护时,对测试阶段未发现的错误进行测试、诊断、定位、纠错,直至修改的回归测试过程称为( A )。
A、改正性维护B、适应性维护C、完善性维护D、预防性维护)。
A 一般说来,投入运行的软件系统中有错误(5.A、不是不可以理解的B、是不能容忍的C、是要求退货的理由D、是必然的1.在进行总体设计时应加强模块间的联系。
《软件工程导论》期末考试-试题与答案此导出测试用例。
单选题在软件危机中表现出来的软件质量差的问题,其原因是 。
A 软件研发人员素质太差研发工作C.没有软件质量标准软件工程方法是在实践中不断发展着的方法,而早期的软件工程方法主要是指。
A 原型化方法B .结构化方法C.功能化方法D.面向对象方法是把对象的属性和操作结合在一起,构成一个独立的对象,其内部信息对外界是隐蔽的,外界只能通过有限的接口与对象发生联系。
1. 2. 填空题软件工程中的结构化分析 SA 是一种面向 软件模块独立性的两个定性度量标准是的分析方法。
3. 的过程。
4. 5. 软件开发是一个自顶向下逐步细化和求精的过程,而软件测试是一个_________ 和数据字典共同构成了系统的逻辑模型 _____________ 是一种黑盒测试技术,这种技术把程序的输入域划分为若干个数据类,据1. B .用户经常干预软件系统的 D.软件开发人员不遵守软件质量标准2.在软件质量因素中,软件在异常条件下仍能运行的能力成为软件的。
A.安全性B.健壮性C.可用性D. 可靠性3. 不属于黑盒测试技术。
在下列测试技术中,A.等价划分B.边界值分析C.错误推测D. 逻辑覆盖4. 5. A. 多态B. 继承C.封装D.消息6. Jackson Jackson 方法时可以实现方法是在软件开发过程中常用的方法,使用从数据结构导出程序结构B.从数据流图导出初始结构图C.从模块结构导出数据结构D.从模块结构导出程序结构试验收软件文档是软件工程实施中的重要部分,它不仅是软件开发各阶段的重要依据,而且影响软件的软件开发的瀑布模型,一般都将开发过程划分为:分析、设计、编码、测试和维护等阶段,一般认为可能占用人员最多的阶段是 ________________分析阶段B .设计阶段C.维护阶段D.测试阶段模型14.面向对象的分析阶段建立的系统模型不包括 A.对象模型B .动态模型C.功能模型D.13. 常用的面向对象的软件过程模型是A. 瀑布模型B .喷泉模型C.原型模型D.增量7. 程。
软件工程导论课后习题解答第一章1-1什么是软件危机?答:是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
1-3什么是软件工程?答:这是一门指导计算机软件开发和维护的工程学科。
1-4简述结构化范型和面向对象范型的要点,并分析它们的优缺点。
答:目前使用得最广泛的软件工程方法学有2种:传统方法学:也称为生命周期方法学或结构化范型。
优点:软件生命周期分为几个阶段。
各阶段任务相对独立、简单,便于不同人员分工协作,降低了整个软件开发过程的难度。
缺点:当软件规模庞大时,或者对软件的需求是模糊的或会随着时间而变化的时候,开发出的软件往往不成功;而且维护起来仍然很困难。
面向对象方法:优点:降低了软件产品的复杂性;提高了软件的可理解性;简化了软件的开发和维护工作;促进了软件重用。
1-5. 根据历史数据,可以做出以下假设:对计算机存储容量的需求大致按下面公式描述的趋势逐年增加:m=4080e0.28(y-1960)内存价格根据以下公式逐年下降:P1=0.3×0.72y-1974(美分/位)如果计算机字长为16位,则存储器价格下降的趋势为:p2=0.048×0.72y-1974(美元/字)在上面的公式中,Y代表年份,M代表存储容量(字数),P1和P2代表价格。
基于上述假设,可以比较计算机硬件和软件成本的变化趋势。
所需计算:(1)在1985年对计算机存储容量的需求估计是多少?如果字长为16位,这个存储器的价格是多少?(2)假设在1985年,一个程序员每天可以开发10条指令,而一个程序员的平均工资是每月4000美元。
如果一条指令只有一个字长,则需要进行计算,以便用程序填充内存的成本。
(3)假设1995年内存字长为32位,程序员每天可以开发30条指令。
程序员的平均月薪是6000美元。
重复问题(1)和(2)。
(1)在1985年对计算机存储容量的需求,估计是m=4080e0.28(1985-1960)=4080e7=4474263(字)如果字长为16位,则这个存储器的价格是p=0.048×0.721995-1974×73577679=5789(美元)(2)如果一条指令的长度为一个字,则使存储器装满程序共需4474263条指令。
软件工程A卷一、判断题:每小题1分,共15分,在正确的打上√,错误的打上×1.软件工程学只有理论意义,没有实际用途。
()2.软件工程的方法只适用于大型软件的开发,对小型软件的开发没有帮助。
()3.可行性研究进一步研究问题分析阶段所确定的问题是否有可行的解。
()4.代码审查方法没有计算机测试方法好。
()5.验证软件需求的方法主要靠人工审查的方法。
()6.并发系统中遇到的一个主要问题是定时问题。
()7.编码风格由个人喜好决定,没有固定格式。
()8.面向对象建模得到的模型包含系统的3个要素,即静态结构、交互次序和数据变换。
()9.软件重用是提高软件开发生产率和目标系统质量的重要途径。
()10.判定覆盖不一定包含条件覆盖,条件覆盖也不一定包含判定覆盖。
()11.Power Designer是一个CASE工具。
()12.软件是指用程序设计语言(如Pascal,C,Visual Basic等)编写的程序,软件开发实际上就是编写程序代码。
()13.在进行需求分析时需同时考虑维护问题。
()14.UML是一种面向对象的分析设计方法,即OOA/OOD方法。
()15.在面向对象的软件开发方法中,每个类都存在其相应的对象,对象是类的实例,类是生成对象的模板。
()二、单选题:每题1分,共15分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、有完整的故障处理E、算法的合理性6、软件可行性研究一般不考虑()A、是否有足够的人员和相关的技术来支持系统开发B、是否有足够的工具和相关的技术来支持系统开发C、待开发软件是否有市场、经济上是否合算D、待开发的软件是否会有质量问题7、SA法中,有一个处理过程逻辑不易用语言表达清楚,最好是用()来描述A、流程图B、判定表C、NS图D、问题分析图PAD8、下列需求述中有效需求是()A、目标软件应有C++实现B、软件系统必须在5秒响应并处理外部事件C、目标软件必须有系统设置模块D、当软件和用户交互时,必须能使用满足MS风格的界面9、在面向对象软件开发方法中,类与类之间主要有以下结构关系()A、继承和聚集B、继承和一般C、聚集和消息传递D、继承和方法调用10、面向对象模型主要由以下哪些模型组成()A、对象模型、动态模型、功能模型B、对象模型、数据模型、功能模型C、数据模型、动态模型、功能模型D、对象模型、动态模型、数据模型11、OOA中应首先识别()A、对象B、类C、对象的属性D、对象所属的类12、概要设计的结果是提供一份()A、模块说明书B、框图C、程序D、系统结构图13、以下语言中属于4GL是()A、PBB、VBC、UMLD、SQL Server 2000中的SQL语言14、与设计测试数据无关的文档是()A、需求分析说明书B、概要设计说明书C、源程序D、项目开发计划15、软件测试中的测试实例主要由输入数据和()组成A、测试规则B、测试计划C、预期输出结果D、以往测试记录分析三、简答题(共20分)1.项目A是为银行开发ATM(自动取款机)软件,项目B是为网络公司开发网络数据流分析软件,请问按照面向数据流设计方法(SD法),两个项目应分别采用何种方法将需求分析的功能模型转换成软件结构,为什么?(6分)2.某保险公司对投保人的汽车保费计算方法如下:单身男,年龄30岁以下(含30岁),计保费标准A,30岁以上计保费标准B;已婚男30岁以下(含30岁),计保费标准C,30岁以上计保费标准D,单身女,年龄25岁以下(含25岁),计保费标准E,25岁以上计保费标准F;已婚女25岁以下(含25岁),计保费标准G,25岁以上计保费标准H,请画出对应的判定树。
A、PBB、VBC、UMLD、SQL Server 2000中的SQL语言14、与设计测试数据无关的文档是()A、需求分析说明书B、概要设计说明书C、源程序D、项目开发计划15、软件测试中的测试实例主要由输入数据和()组成A、测试规则B、测试计划C、预期输出结果D、以往测试记录分析三、简答题(共20分)1.项目A是为银行开发ATM(自动取款机)软件,项目B是为网络公司开发网络数据流分析软件,请问按照面向数据流设计方法(SD法),两个项目应分别采用何种方法将需求分析的功能模型转换成软件结构,为什么?(6分)2.某保险公司对投保人的汽车保费计算方法如下:单身男,年龄30岁以下(含30岁),计保费标准A,30岁以上计保费标准B;已婚男30岁以下(含30岁),计保费标准C,30岁以上计保费标准D,单身女,年龄25岁以下(含25岁),计保费标准E,25岁以上计保费标准F;已婚女25岁以下(含25岁),计保费标准G,25岁以上计保费标准H,请画出对应的判定树。
(8分)9、√ 10、√ 11、√ 12、× 13、× 14、× 15、√二、项选择题:每题1分,共15分1、C2、B3、B4、A5、B6、D7、B8、B9、A 10、A 11、A 12、A 13、D 14、D 15、C三、简答题(总共20分)1、总共6分,项目A 用事务流(2分),项目B 用变换流(2分),项目A 回答原因(1分),项目B 回答原因(1分)2、总共8分,画对每个条件1分3、每写出一种语言或工具1分,写出应用领域1分,如C#(C/B/S 结构软件),JA V A (B/S 结构软件),C++(系统软件),DEPHI (开发C/S 结构软件)、PB (开发C/S 结构下基于数据库的软件)。
四、综合题(总共25分)1、共10分每对一个对象类1分,写出一个对象类的关系0.5分2、测试题共15分五、分析设计题(总共25分)对象类图10分,每写对1个对象类1分,1个联系和多重性1分*功能模型:用例图7分,每写对1个用例1分,1个行为者1分动态模型:顺序图8分,每写对1个对象类和生命线0.5分,1个事件1分一、判断题:每小题1分,共15分,在正确的打上√,错误的打上X()2.数据字典是对数据流图中的数据流,处理过程、数据存储、数据的源和终点进行详细定义。
()3.统一的建模语言,是一种软件工程设计语言。
()4.模块化使程序设计比较方便,但比较难以维护。
()5.一个模块实际上就是一个进程。
()6.过程描述语言可以用于描述软件的系统结构。
()7.编程语言应该在软件概要设计时选择。
()8.如果通过软件测试没有发现错误,则说明软件是正确的。
()9.在进行概要设计时应加强模块间联系。
()10.一般人为,软件开发阶段是由设计、编码和测试三个基本活动组成。
()11.软件概要设计包括软件系统结构设计以及数据结构和数据库设计。
()12.为了提高程序的易读性,尽可能使用高级语言或4GL编写程序。
()13.为了加强软件维护作业的进度,应尽可能增加维护人员的数目。
()14.模块化,信息隐藏,抽象和逐步求精的软件设计原则有助于得到高内聚,低耦合度的软件产品。
()15.确认测试计划应该在可行性研究阶段制定。
()二、单选题:每题1分,共15分)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、CASED、开发方法7、SA法中,DFD图的某个处理过程分解后,一般不超过()处理过程A、10B、7C、5D、128、下列需求陈述中一致的是()A、所有命令响应时间应小于0.1s;BUILD命令的响应时间应小于5sB、所有命令响应时间应小于5s;BUILD命令的响应时间应小于1s语句覆盖:条件覆盖:条件组合覆盖:2. 请画出一个用户使用银行ATM 的状态转换图。
从用户将卡插入卡槽开始,到用户取卡结束(如果用户忘记,ATM 应报警),用户可以完成以下几个步骤:登录(卡片进入ATM 机后,如果不是可读卡,退卡;如是,等待用户输入密码,三次错,吞卡,正确后进入主菜单),取钱(进入取钱菜单,输入金额,如果帐户余额不足,提示余额,并要求用户重新输入,如果帐上钱够,吐钱币,并询问是否打印凭证,最后返回主菜单),主菜单提供退出取卡选择。
(10分)五、分析设计题(共25分)厂家持“定货单”及“厂家送货单”送货,库管科检查来货。
如果来货相符,库管科做收货确认,(包括:在“定货单”之“点核数量”栏手工填写收货数量;在电脑中提出“定货单”,在“点核数量”栏输入收货数量;在“收货日报表”上记录该收货;在“定货单”、“厂家送货单”上加盖库管科公章),然后库管科打印商品条码,收送货组与卖场办理移交手续,卖场收货人在“定货单”上签名盖章,日末,库管科将单据汇总,连同“收货日报表”分别送卖场、财会,并自留一份,第二天电脑科打印“验收进货单”,分送卖场、采购、财会。
如果来货不符,通知负责该次定货之采购主任,采购主任填写“定货修正单”,报采购部主管签名同意,“定货修正单”交库管科,库管科从电脑中提出原“定货单”,按“定货修正单”内容进行修改,将修改后之新“定货单”打印(一式三份),和原“定货单”连在一起,最后进行上述来货相符后的工作。
1.设计出该系统的业务处理流程图(9分)2.画出该系统的第一层的数据流程图(至少3个处理)(10分)3.画出该系统主要处理、数据存储或外部实体的数据字典(至少三个处理或数据存储或外部实体)(6分)a bc de20XX年-2008学年第1学期105030701~04班软件工程B卷参考答案及评分标准开卷,允许考生带教材和参考书籍各一本一、断题:每小题1分,共10分,在正确的打上√,错误的打上×1、√2、√3、×4、×5、×6、×7、×8、×9、×10、×11、×12、√13、×14、√15、×二、项选择题:每题1分,共15分1、C2、D3、C4、D5、D6、A7、B8、B9、D 10、C 11、D 12、C 13、D 14、D 15、D三、简答题(总共20分)1、总共6分,每写出一种CASE工具2分,写出一种工具类型1分,如:Power Designer(分析设计工具或软件建模工具),Rational Rose(分析设计工具或软件建模工具),Win Runner(测试工具),MS Project(项目管理工具),MS Visio(软件开发绘图工具)、VSS(软件配置工具)。
2、总共14分,每画对一个事件0.5分(开始事件不算分,共7个)和每画出一个作业顺序0.5分(标明作业和持续时间),计算对一个最早时间0.5分,一个最迟时间0.5分.四、综合题(总共25分)1.测试题15分语句覆盖:总共2分A=-1,B=5,X=2;sabcde条件覆盖:每对一个测试用例1-2分,总共5分A=-1,B=5,X=2;sabcdeA=0,B=4,X=1;saceA=3,B=4,X=-1;sacde条件组合覆盖:每对一个测试用例1分,总共8分A=-1,B=5,X=2;sabcdeA=-1,B=5,X=-1;sacdeA=3,B=4,X=2;sacdeA=3,B=5,X=1;sacdeA=3,B=4,X=-1;sacdeA=3,B=5,X=-1;sacdeA=-1,B=4,X=-1;sacdeA=-1,B=4,X=2;sabce2.每画对一个状态1分,写对状态顺序0.5分五、分析设计题目(总共25分)业务流程图共9分,其中业务流5分,判断2分,资源和表单2分,下面是使用Power Designer画的业务流程图数据流程图10分,其中处理4分,数据存储2分,外部实体2分,数据流2分数据字典总共6分,每写出一个2分,要求格式完整,内容基本正确如:处理逻辑编号:P1处理逻辑名称:审核来货简述:查询统计专利申请、受理、授权和转让情况输入的数据流:F3厂家送货单(来自E2供应商),F4定货单(来自E2供应商),F2定货单(来自S1定货单数据存储)输出的数据流:货品相符的F9审核信息(去自S1定货单数据存储),F5来货不相符信息(去自E3采购主任)处理描述:根据供应商“定货单”及“厂家送货单”送货情况,库管科检查来货。
如果来货相符,库管科做收货确认,如果来货不符,通知负责该次定货之采购主任。
处理频率:不限数据存储编号:S1数据存储名称:定货单简述:反映当前定货的情况数据存储组成:单号+定货日期+到货日期+供应商+货品序号+货品+单价+数量+计量单位+采购员关键字:单号,货品序号流入的数据流:F2定货单(从P4定货处理过程),F7修正后定货单(从P3修正定货)流出的数据流:F2定货单到P3修正定货和P4验收入库外部实体编号:E1外部实体名称:采购员简述:根据采购计划,制定采购合同,与供应商签订合同,根据合同,与向供应商定货,制定定货单输入的数据流:无输出的数据流:采购计划、采购合同。