04计算机《软件工程》B答案

合集下载

《软件工程》各章课后习题答案

《软件工程》各章课后习题答案

《软件工程》各章课后习题答案软件工程是计算机科学与技术的一门重要学科,旨在研究和应用工程原则和方法来开发高质量的软件系统。

课程中的习题对于加深学生对软件工程理论和实践的理解至关重要。

下面是对《软件工程》各章课后习题的答案,希望能够帮助你更好地掌握软件工程的知识。

第一章:软件工程导论1. 软件工程的定义:答:软件工程是通过应用系统化、规范化和可量化的方法进行软件开发、运行和维护的学科。

2. 软件工程的目标:答:软件工程的目标是提高软件开发的质量、效率和可靠性,使得软件能够满足用户的需求和期望。

3. 软件生命周期模型:答:常见的软件生命周期模型包括瀑布模型、迭代模型、敏捷模型等。

每个模型都有其独特的特点和适用场景。

4. 软件过程模型:答:软件过程模型描述了软件开发过程中的一系列活动和阶段,常见的软件过程模型包括瀑布模型、迭代模型、敏捷模型等。

5. 软件工程的基本原则:答:常见的软件工程基本原则包括分阶段、逐步求精、持续集成、迭代开发、需求优先等。

第二章:软件项目管理1. 软件项目管理的定义:答:软件项目管理是指对软件开发过程中的资源、进度、质量等进行有效管理,以确保软件项目能够按时、按质地完成。

2. 软件项目管理的内容:答:软件项目管理包括项目计划、需求管理、项目进度管理、资源管理、风险管理等方面。

3. 软件项目管理的方法:答:常见的软件项目管理方法包括敏捷项目管理、水平项目管理、里程碑项目管理等。

4. 软件项目管理的工具:答:常用的软件项目管理工具包括甘特图、PERT/CPM网络图、项目管理软件等。

第三章:软件需求分析与规格说明1. 软件需求的定义:答:软件需求是指用户对软件系统的要求和期望,包括功能需求、性能需求、接口需求等方面。

2. 软件需求分析的方法:答:常用的软件需求分析方法包括面向对象分析法、数据流图法、用例分析法等。

3. 软件需求规格说明的格式:答:常见的软件需求规格说明的格式包括自然语言描述、结构化描述、图形描述等。

大连理工大学智慧树知到“计算机科学与技术”《软件工程》网课测试题答案1

大连理工大学智慧树知到“计算机科学与技术”《软件工程》网课测试题答案1

大连理工大学智慧树知到“计算机科学与技术”《软件工程》网课测试题答案(图片大小可自由调整)第1卷一.综合考核(共15题)1.与传统方法相反,面向对象方法是一种以数据或信息为主线,把数据和处理相结合的方法,把对象作为由数据及可以施加在这些数据上的操作所构成的统一体。

()A.正确B.错误2.测试是为了表明程序是正确的。

()A.正确B.错误3.软件工程的主要目的就是要提高软件的可维护性,减少软件维护所需要的工作量,降低软件系统的总成本。

()T.对F.错4.由于测试的目标是暴露程序中的错误,从心理学角度看,应该完全由程序的编写者自己进行测试。

()A.正确B.错误5.面向对象方法所具有的要点之一是把所有对象都划分成各种派生类,每个派生类都定义了一组数据和一组方法。

()T.对F.错6.一个只有顺序结构的程序(含有4条边,5个顶点),其环形复杂度是()。

A.0B.1C.3D.4 7.软件工具的唯一作用是为了延长软件产品的寿命。

()T.对F.错8.在用户界面层次上(不考虑程序的内部结构和处理过程)对软件进行测试属于哪种测试方法()。

A.黑盒测试B.白盒测试C.逻辑覆盖测试D.控制结构测试9.结构化方法是一种()的软件开发方法。

A.面向用户B.面向数据结构C.面向对象D.面向数据流10.在面向对象方法中,对象是最基本的模块,因此,耦合主要指不同对象之间相互关联的紧密程度。

()A.正确B.错误11.软件工程方法学的要素之一过程是指软件开发应该以软件维护为中心,关键是编写程序。

()T.对F.错12.软件危机的主要表现是()。

A.对软件开发成本和进度的估计往往不够准确B.有的软件产品存在质量问题C.有的软件没有适当的文档资料D.以上都对13.数据流图建立系统的功能模型,它仅仅由数据流和数据存储组成。

()A.正确B.错误14.以下不属于静态单变量模型的是()。

A.COCOMO2模型B.Walston_Felix模型C.Bailey_Basili模型D.Doty模型15.面向对象开发方法中,()是基于面向对象技术的标准建模语言。

软件工程师(ACCP)理论知识试卷答案 B卷

软件工程师(ACCP)理论知识试卷答案 B卷

软件工程师(ACCP)理论知识试卷答案 B卷一单项选择1、软件生命周期一般包括:软件开发期和软件运行期,下述(D )不是软件开发期所应包含的内容。

A、需求分析B、结构设计C、程序编制D、软件维护2、软件是一种逻辑产品,它的开发主要是(A )。

A、研制B、拷贝C、再生产D、复制3、以文档作为驱动,适合于软件需求很明确的软件项目的生存周期模型是( C )。

A、喷泉模型 B 、增量模型 C、瀑布模型 D、螺旋模型4、在软件生存周期中,(B )阶段必须要回答的问题是“要解决的问题是做什么?”。

A、详细设计B、可行性分析和项目开发计划C、概要设计D、软件测试5、软件产品与物质产品有很大区别,软件产品是一种(C )产品A、有形 B 、消耗 C、逻辑 D、文档6、(C )把瀑布模型和专家系统结合在一起,在开发的各个阶段上都利用相应的专家系统来帮助软件人员完成开发工作。

A、原型模型B、螺旋模型C、基于知识的智能模型D、喷泉模型7、( B )阶段是为每个模块完成的功能进行具体的描述,要把功能描述转变为精确的、结构化的过程描述。

A、概要设计B、详细设计C、编码D、测试8、下列软件开发模型中,适合于那些不能预先确切定义需求的软件系统的开发的模型是( A )。

A、原型模型B、瀑布模型C、基于知识的智能模型D、变换模型9、下列软件开发模型中,以面向对象的软件开发方法为基础,以用户的需求为动力,以对象来驱动的模型是( C )。

A、原型模型B、瀑布模型C、喷泉模型D、螺旋模型10、下列软件开发模型中,支持需求不明确,特别是大型软件系统的开发,并支持多种软件开发方法的模型是( D )。

A、原型模型B、瀑布模型C、喷泉模型D、螺旋模型11、软件特性中,使软件在不同的系统约束条件下,使用户需求得到满足的难易程度称为( C )。

A、可修改性B、可靠性C、可适应性D、可重用性12、软件特性中,一个软件能再次用于其他相关应用的程度称为( B )。

软件工程AB卷答案

软件工程AB卷答案

《软件工程》试卷答案A卷答案:一.填空1、①与软件本身的特点有关;②如软件开发的方法与维护不正确有关。

2、数据流3、图形4、结构测试功能测试5、伪玛,软件设计语言。

6、为了解决这个问题,目标系统必须做什么?7、软件需求规格说明书8、PAD图、判定表、判定树和PDL语言任意写出三种即可。

9、数据结构10、功能二.判断1、×2、√3、√4、×5、×6、√7、√8、×9、√10、×三、选择题1、C2、A3、C4、B5、D6、D7、D8、B9、B 10、A四、1、简述原型法的基本思想:答:用交互的、快捷建立起来的原型取代规格说明,用户通过再计算机上运行、使用这个原型系统了解系统的概貌,想开发者提供反馈意见。

2、什么是软件危机?答:软件危机是计算机软件在它的开发和维护过程中所遇到的一系列严重问题。

概括地说,主要包含两方面的问题:如何开发软件,怎样满足对软件日益增长的需求;如何维护数量不断膨胀的已有软件。

3、简述软件测试的步骤,简要说明各测试步骤的目的。

答:软件系统的测试基本上由以下几个步骤组成:模块(单元)测试,目的是保证第个模块作为一个单元能正确执行。

子系统测试,目的是把经过单元测试的模块放在一起形成一个子系统,测试模块相互间的协调和通信。

系统测试,在这个过程中不仅应该发现设计和编码的错误,还应该验证系统确实能提供需求说明书中指定的功能,而且系统的动态特性也符合要求。

验收测试,目的是验证系统确实能够满足用户的要求。

4、需求分析的任务是什么?答:需求分析的主要任务第一、正确地确定对系统综合要求,充分理解和表达用户的需求。

也就是详细定义开发软件的功能、性能、外部接口、设计限制、数据库需求、确定硬件和软件支持环境、辅助软件以及将来可能提出的要求。

第二、通过结构分析的方法对系统进行分解,以确定软件系统的主要成分或软件系统的构成。

第三、是对以上已进行的两项工作进行描述,以形成需求文档,也就是编制“需求规格说明书”。

软件工程课后习题答案

软件工程课后习题答案

软件工程课后习题答案1. 什么是软件工程?软件工程是一种应用工程原理和方法的学科,目的是开发高质量的软件。

软件工程包括以下几个方面:•需求分析:确定用户的需求,并将其转化为可执行的软件功能。

•设计:设计软件的架构和模块,并确定各个模块的功能和关系。

•编码:实现软件的设计,将设计的模块通过编程语言编写成可执行的代码。

•测试:通过不同的测试方法和技术对软件进行验证,确保软件的质量和可靠性。

•维护:对软件进行改进和修复,以适应用户需求的变化和修复软件中的错误。

2. 软件工程的目标是什么?软件工程的目标是开发高质量的软件,以满足用户的需求。

具体目标包括:•可靠性:软件应该能够正常运行并处理各种输入情况,不会崩溃或导致系统故障。

•可维护性:软件应该易于理解和修改,以适应用户需求的变化和修复软件中的错误。

•可扩展性:软件应该能够在不改变其基本架构的情况下,方便地添加新的功能模块。

•可重用性:软件应该能够被多个项目和团队复用,以提高开发效率。

•可测试性:软件应该易于测试,以确保其功能和性能符合预期。

3. 软件开发生命周期有哪几个阶段?软件开发生命周期通常包括以下几个阶段:1.需求分析和定义阶段:在这个阶段,软件工程师与用户沟通,了解用户的需求和期望。

然后,设计师将这些需求转化为软件规格说明。

2.软件设计阶段:在这个阶段,设计师根据需求规格说明书设计软件的架构和模块,并确定模块之间的关系和功能。

3.编码阶段:在这个阶段,开发人员根据设计文档编写代码,实现软件的功能。

4.测试阶段:在这个阶段,测试人员使用不同的测试方法和技术对软件进行验证,以确保软件的质量和可靠性。

5.部署和维护阶段:在这个阶段,软件工程师将软件部署到实际的运行环境中,并根据用户的反馈进行改进和修复。

4. 什么是软件需求?软件需求是对系统或软件功能和性能的描述,它描述了用户的需求和期望。

软件需求通常包括以下几个方面:•功能需求:描述软件应该具有的功能,以及这些功能如何满足用户的需求。

软件工程习题附答案

软件工程习题附答案

软件工程习题附答案软件工程是一门研究和应用如何以系统性、规范化、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来的学科。

以下是一些与软件工程相关的习题及答案,希望能帮助您更好地理解这门学科。

一、选择题1、软件生存周期中,解决软件“做什么”的阶段是()A 需求分析B 软件设计C 软件实现D 软件测试答案:A解析:需求分析阶段主要是确定软件系统需要完成的功能和性能,解决软件“做什么”的问题。

2、下面不属于软件设计原则的是()A 抽象B 模块化C 自底向上D 信息隐藏答案:C解析:软件设计的原则通常包括抽象、模块化、信息隐藏等,自底向上一般不是软件设计的原则,常见的是自顶向下的设计方法。

3、软件测试的目的是()A 证明软件没有错误B 发现软件中的错误C 改正软件中的错误D 优化软件的性能答案:B解析:软件测试的目的是为了发现软件中存在的错误,而不是证明软件没有错误或直接改正错误、优化性能。

4、下列模型中,不属于软件生命周期模型的是()A 瀑布模型B 快速原型模型C 增量模型D 螺旋模型E 喷泉模型答案:E解析:瀑布模型、快速原型模型、增量模型和螺旋模型都属于常见的软件生命周期模型,喷泉模型则主要强调软件对象之间的无缝迭代。

5、软件维护中,因修改软件而导致出现新错误的维护属于()A 改正性维护B 适应性维护C 完善性维护D 预防性维护答案:A解析:改正性维护是指改正在系统开发阶段已发生而系统测试阶段尚未发现的错误。

在这种维护中,可能会因为修改软件而引入新的错误。

二、填空题1、软件工程包括()、()和()三个要素。

答案:方法、工具、过程2、软件需求分析阶段的工作,可以分为四个方面:()、()、()和()。

答案:需求获取、需求分析、编写需求规格说明书、需求评审3、软件测试的步骤主要包括()、()、()和()。

答案:单元测试、集成测试、系统测试、验收测试4、面向对象的三大特性是()、()和()。

软件工程习题及参考答案

软件工程习题及参考答案

软件工程习题及参考答案软件工程习题及部分参考答案判断题软件也会磨损和老化。

(X)完善性维护是提高或完善软件的性能。

(√)数据字典是对数据流图中的数据流,加工、数据存储、数据的源和终点进行详细定义。

(X)软件是指用程序设计语言(如PASCAL ,C,VISUAL BASIC 等)编写的程序,软件开发实际上就是编写程序代码。

(X)软件模块之间的耦合性越弱越好。

(√)如果通过软件测试没有发现错误,则说明软件是正确的。

(X)快速原型模型可以有效地适应用户需求的动态变化。

(√)模块化,信息隐藏,抽象和逐步求精的软件设计原则有助于得到高内聚,低耦合度的软件产品。

(√)集成测试主要由用户来完成。

(X)确认测试计划应该在可行性研究阶段制定(X)白盒测试无需考虑模块内部的执行过程和程序结构,只要了解模块的功能即可。

(X)?软件概要设计包括软件系统结构设计以及数据结构和数据库设计。

(√)软件工程采用的生存周期方法就是从时间角度对软件的开发和维护这个复杂问题进行分解,将软件生存的时期分为若干阶段。

(√)系统流程图表达的是部件的信息流程,还表示对信息进行加工处理的控制过程。

(╳)?模块越多,开发成本越小。

(╳)软件测试的目的就是证明软件没有错。

(╳)PAD图在设置了五种基本的控制结构后,还允许递归使用。

(√)在进行了可行性分析后,需求分析就只需要解决目标系统的设计方案。

(×)SA法是面向数据流,建立在数据封闭原则上的需求分析方法。

(√)HIPO 法既是需求分析方法,又是软件设计方法。

(√)在面向对象的需求分析方法中,建立动态模型是最主要的任务。

(×)加工小说明是对系统流程图中的加工进行说明。

(×)判定表的优点是容易转换为计算机实现,缺点是不能够描述组合条件。

(×)需求分析的主要方法有SD 法、OOA 法及HIPO 法等。

(×)分层的DFD 图可以用于可行性分析阶段,描述系统的物理结构。

软件工程课后答案解析

软件工程课后答案解析

《软件工程》作业及答案1-1 什么是软件危机?它有哪些典型表现?为什么会出现软件危机?答: 软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。

概括地说,软件危机包含下述两方面的问题:如何开发软件,以满足对软件日益增长的需求;如何维护数量不断膨胀的已有软件。

软件危机典型表现:对软件开发成本和进度的估计常常很不准确。

用户对“已完成的”软件系统不满意的现象经常发生。

软件产品的质量往往靠不住。

软件常常是不可维护的。

软件通常没有适当的文档资料。

软件成本在计算机系统总成本中所占的比例逐年上升。

软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。

产生软件危机的原因:一方面与软件本身的特点有关,另一方面也和软件开发与维护的方法不正确有关。

软件不同于硬件,它是计算机系统中的逻辑部件而不是物理部件。

管理和控制软件开发过程相当困难。

软件是规模庞大,而且程序复杂性将随着程序规模的增加而呈指数上升。

目前相当多的软件专业人员对软件开发和维护还有不省糊涂观念,在实践过程中或多或少地采用了错误的方法和技术,这是使软件问题发展成软件危机的主要原因。

1-2 假设你是一家软件公司的总工程师,当你把图1.1给手下的软件工程师们观看,告诉他们及早发现并改正错误的重要性时,有人不同意你的观点,认为要求在错误进入软件之前就清除它们是不现实的,并举例说:“如果一个故障是编码错误造成的,那么,一个人怎么能在设计阶段清除它呢?”你怎么反驳他?1-3 什么是软件工程?它有哪些本质特性?怎样用软件工程消除软件危机?答: 软件工程是指导计算机软件开发和维护的一门工程学科。

采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它。

软件工程本质特性:1、软件工程关注于大型程序的构造;2、软件工程的中心课题是控制复杂性;3、软件经常变化;4、开发软件的效率非常重要;5、和谐地合作是开发软件的关键;6、软件必须有效地支持它的用户;7、在软件工程领域中是由具有一种文化背景的人替具有另一种文化背景的人创造产品。

软件工程课后题答案大全(详细)

软件工程课后题答案大全(详细)

软件工程课后题答案大全(详细)软件工程课后题答案大全(详细)现代社会中,软件工程越来越重要,因为它在各个行业中扮演着关键的角色。

而在学习软件工程课程时,完成课后题是提高理解和掌握程度的重要途径。

本文将为您提供一份全面且详细的软件工程课后题答案大全,希望能够帮助您更好地学习与应用软件工程知识。

1. 什么是软件工程?软件工程是指应用系统化的、规范化的、可量化的方法来开发和维护软件的学科。

它涵盖了各种软件开发阶段,包括需求分析、设计、编码、测试和维护,并借鉴了工程学的原则和方法。

2. 软件工程的原则有哪些?软件工程遵循一系列原则来保证软件开发和维护的质量和效率,如下:- 需求管理原则:明确需求,确保项目目标的准确性和一致性。

- 分阶段原则:将软件开发过程划分为不同的阶段,有序进行。

- 风险管理原则:评估和管理项目中的风险,降低项目失败的可能性。

- 适应性原则:根据不同的项目需求和情况,选择合适的软件开发方法和工具。

- 团队合作原则:加强团队协作,促进良好的沟通和信息共享。

3. 软件生命周期有哪些阶段?软件生命周期包括需求分析、设计、编码、测试和维护等多个阶段。

- 需求分析:明确软件系统的功能和性能要求,了解用户需求。

- 设计:定义软件系统的整体结构和组件之间的关系,确定使用的技术和工具等。

- 编码:根据设计方案,将代码实现为可以执行的程序。

- 测试:验证软件系统的功能和性能是否满足需求,并进行错误修复。

- 维护:对软件进行修复和改进,确保系统的长期可用性。

4. 软件需求分析的方法有哪些?软件需求分析是保证软件项目成功的关键步骤,以下是几种常用的分析方法:- 面谈法:直接与用户沟通,了解他们的需求和期望。

- 文档分析法:研究和分析相关文档,如需求规格说明书、用户手册等。

- 原型法:创建一个初步的系统原型,供用户参观和测试,获取反馈。

- 视频录制法:录制用户正在进行的工作流程,以便更好地了解他们的需求。

5. 软件项目管理中的风险管理包括哪些步骤?风险管理是确保软件项目成功的重要环节,步骤如下:- 风险识别:识别和描述可能影响项目目标实现的风险。

软件工程课后答案完整版

软件工程课后答案完整版

软件工程课后答案完整版软件工程是一门涉及软件开发与管理的学科,它关注着如何有效地组织、设计、开发和维护软件系统。

作为一门实践性强的学科,课后答案对于学习软件工程的学生来说非常重要。

本文将以软件工程课后答案为主题,为您提供一份完整版的答案,旨在帮助您更好地理解和掌握软件工程的知识。

一、需求分析与规格说明1. 问题描述对于任何一门软件工程课程,需求分析和规格说明都是至关重要的环节。

通过合理地分析需求,可以明确软件系统的功能需求、性能需求和用户需求,从而为后续的设计和开发工作奠定基础。

在这一部分中,我们将详细讨论问题描述、需求规格说明以及软件需求规格说明的编写步骤和技巧。

2. 答案示例问题描述:某个公司需要开发一个在线购物系统,能够满足用户浏览商品、下单购买、支付、评价等功能。

需求规格说明:该系统需要具备以下功能需求:- 用户注册登录:用户可以通过注册登录系统,建立个人账号,用于后续购物操作。

- 商品浏览:用户可以浏览系统中的商品,包括商品图片、详细介绍、价格等信息。

- 购物车管理:用户可以将感兴趣的商品加入购物车,并对购物车进行管理,如增加、删除、修改商品数量等操作。

- 订单管理:用户可以在购物车中选择商品提交订单,并进行支付操作。

- 支付功能:系统需要集成常用的支付渠道,如支付宝、微信支付等,以便用户支付订单。

- 评价功能:用户在收到商品后可以对商品进行评价,并可以查看其他用户对商品的评价。

三、软件系统设计与实现1. 系统架构设计系统架构设计是软件工程中的核心环节之一,它关注着如何将系统划分为各个模块,并确定模块之间的接口和依赖关系。

在这一部分中,我们将着重讨论系统架构设计的原则、方法以及常用的架构模式。

2. 答案示例系统架构设计的主要目标是实现系统的可扩展性、灵活性和可维护性。

在本次项目中,我们采用了经典的三层架构模式,即用户界面层、业务逻辑层和数据访问层。

- 用户界面层:负责与用户进行交互操作,接收用户输入的请求,并向用户展示系统的响应结果。

学历类《自考》自考专业(计算机应用)《软件工程》考试试题及答案解析

学历类《自考》自考专业(计算机应用)《软件工程》考试试题及答案解析

学历类《自考》自考专业(计算机应用)《软件工程》考试试题及答案解析姓名:_____________ 年级:____________ 学号:______________1、CMMl能力等级中的4级是()A、已执行级B、已管理级C、已定量管理级D、已定义级正确答案:C答案解析:暂无解析2、在常见的软件开发模型中,能体现软件创建所固有的迭代和无间隙特征的是()A、丸喷泉模型B、螺旋模型C、增量模型D、瀑布模型正确答案:A答案解析:暂无解析3、软件基本过程是指那些与软件生产直接相关的活动集,可分为获取过程、供应过程、运行过程、维护过程和()A、需求定义过程B、需求发现过程C、设计过程D、开发过程正确答案:D答案解析:暂无解析4、A答案解析:暂无解析5、B答案解析:暂无解析6、下列软件测试技术中,依据软件行为描述的是()A、结构测试技术B、路径测试技术C、黑盒测试技术D、自盒测试技术正确答案:C答案解析:暂无解析7、根据RUP实现活动,输入为设计类和接口,活动为实现类,则输出为()A、构件B、用况C、接口D、子系统正确答案:A答案解析:暂无解析8、UML的图形化工具分为两类:行为图和()A、结构图B、状态图C、部署图D、用况图正确答案:A答案解析:暂无解析9、下列术语可用于表达客观世界中各种各样事物之间的关系的是()A、类B、对象C、接口D、依赖正确答案:D答案解析:暂无解析10、模块本身以及所有直接或间接从属于它的模块的集合,称为该模块的()A、作用域B、控制域C、定义域D、限制域正确答案:B答案解析:暂无解析11、一组模块共同引用一个全局数据项,则该组模块间的耦合类型是()A、数据耦合B、标记耦合C、控制耦合D、公共耦合正确答案:D答案解析:暂无解析12、在结构化分析方法的基本术语中,数据流的起点称为()A、数据潭B、数据存储C、加工D、数据源正确答案:D答案解析:暂无解析13、通过复审有关需要的陈述,或功能和性能目标的陈述等技术文档,而获取相关需求的初始发现需求技术是()A、细化B、提炼C、求精D、抽象正确答案:B答案解析:暂无解析14、在销售管理系统需求文档中出现下列描述,属于功能需求范畴的是()A、系统应能产生月销售报表B、系统应在5分钟内计算出给定季度的总销售税C、对要构建的账户接收系统,必须为月财务状况系统提供更新信息D、任取1秒钟,一个特定应用所消耗的可用计算能力平均不超过50%正确答案:A答案解析:暂无解析15、在软件开发中,软件系统模型大体上可分为两类:概念模型和()A、抽象模型B、逻辑模型C、软件模型D、实现模型正确答案:C答案解析:暂无解析16、针对开发的CMMl是一个有关产品和服务的过程改善的成熟度模型,集成了3个源模型:____________、系统工程CMM和___________。

软件工程课后习题参考答案

软件工程课后习题参考答案

软件工程课后习题参考答案1.简述软件开发的本质答: 软件开发的本质就是实现问题空间的概念和处理逻辑到解空间的概念和处理逻辑之间的映射。

P192.简述实施软件开发的基本途径。

答: 实施软件开发的基本途径是系统建模。

所谓系统建模,是指运用所掌握的知识,通过抽象,给出该系统的一个结构——系统模型。

P193.简述何谓模型以及软件开发中所涉及的模型。

答: 模型是一个抽象。

该抽象是在意图所确定的角度和抽象层次对物理系统的一个描述,描述其中的成分和成分之间所具有的特定语义的关系,还包括对该系统边界的描述。

软件开发中所涉及的模型可分为两大类,一类称为概念模型,描述了系统是什么;另一类统称为软件模型,描述了实现概念模型的软件解决方案。

4.简述软件开发所涉及的两大类技术。

答: 软件开发所涉及的两大类技术为: 一是求解软件的开发逻辑,二是求解软件的开发手段。

5、简述需求与需求规约的基本性质。

答:需求的基本性质:1) 必要的,该需求是用户所要求的。

2) 无歧义的,该需求只能用一种方式解释。

3) 可测的,该需求是可进行测试的。

4) 可跟踪的,该需求可从一个开发阶段跟踪到另一个阶段。

5) 可测量的,该需求是可测量的。

需求规约的基本性质:1) 重要性和稳定性程度: 按需求的重要性和稳定性,对需求进行分级。

2) 可修改的: 在不过多地影响其他需求的前提下,可以容易地修改一个单一需求。

3)完整的:没有被遗漏的需求。

4)一致的:不存在互斥的需求。

6、简述软件需求的分类答:软件需求可以分为两大类:一类是功能需求,一类是非公能需求,而非公能需求可分为性能需求,外部接口需求、功能需求7、举例说明功能需求和非功能需求之间的基本关系。

答:非功能需求可作用于一个或多个功能需求,例如非功能需求可作用于一个或多个功能需求其中,非功能需求1作用于功能需求1和功能需求3等;非功能需求2作用于功能需求2等。

P248、有哪几种常用的初始需求发现技术?答:有5种常用的需求发现技术:自悟、交谈、观察、小组会和提炼。

《软件工程》试题及参考答案(第3套)

《软件工程》试题及参考答案(第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.研究开发所需要的成本和资源是属于可行性研究中的( )研究的一方面。

软件工程习题含答案

软件工程习题含答案

软件工程习题含答案一、单选题(共56题,每题1分,共56分)1.会话侦听与劫持技术属于()技术A、密码分析还原B、协议漏洞渗透C、应用漏洞分析与渗透D、DOS攻击正确答案:B2.若一棵二叉树具有8个度为2的结点,5个度为1的结点,则度为0的结点个数是?A、不确定B、6C、11D、9正确答案:D3.A、B、C、D、E、F依次入栈,其出栈顺序为B、D、C、F、E、A,则该栈最小容量为A、6B、5C、4D、3正确答案:D4.进程由执行状态到阻塞状态的原因可能是()。

A、请求某种资源B、处于执行状态的进程的时间片结束C、释放某种资源正确答案:A5.下列哪一项不是激活函数A、batch normalizationB、reluC、tanhD、sigmoid正确答案:A6.网络安全法规定,网络运营者应当制定(),及时处置系统漏洞、计算机病毒、网络攻击、网络侵入等安全风险。

A、网络安全事件应急演练方案B、网络安全事件应急预案C、网络安全事件补救措施D、网络安全规章制度正确答案:B7.下列哪种算法更适合做时间序列建模A、CNNB、决策树C、LSTMD、贝叶斯算法正确答案:C8.下面()不是数据字典的内容。

A、外部实体B、程序C、数据结构D、处理逻辑正确答案:B9.通过网页上的钓鱼攻击来获取密码的方式,实质上是一种()。

A、旁路攻击B、社会工程学攻击C、暴力破解攻击D、密码分析学正确答案:B10.已知 10*12的二维数组 A ,以行序为主序进行存储,每个元素占1个存储单元,已知A[1][1]的存储地址为 420 ,则 A[5][5] 的存储地址为A、470B、471C、472D、473正确答案:C11.不属于进程关键要素的是________。

A、进程控制块B、数据和栈C、原语D、程序正确答案:C12.下列哪一项不是卷积神经网络的典型代表A、ALEXNETB、LSTMC、VGGD、RCNN正确答案:B13.关闭系统多余的服务有什么安全方面的好处?A、使黑客选择攻击的余地更小B、没有任何好处C、使系统进程信息简单,易于管理D、关闭多余的服务以节省系统资源正确答案:A14.为了简化管理,通常对访问者(),以避免访问控制表过于庞大。

软件工程试题含答案

软件工程试题含答案

软件工程期末试题(1)一, 判断题(正确的在括号内打上"√",错误的打上"×".每题1.5分,共15分)Warnier方法也是一种面向数据结构的设计方法,其逻辑更严格.(×) PAD图在设置了五种基本控制结构后,还允许递归调用. (×) 你为了加快软件维护作业的进度,应尽可能增加维护人员的数目.(×) 当验收测试通过,软件开发就完成了.(×)完成测试作业后,为了缩短源程序的长度应删除程序中的注解.(×) 系统结构图是精确表达程序结构的图形表示法.因此,有时也可以将系统结构图当作系统流程图使用.(×)在程序调试时,找出错误的位置和性质比改正该错误更难.(√) 以对象,类,继承和通信为基础的面向对象设计方法(OOD)也是常见的软件概要设计方法之一.(√)二,单项选择题(每小题2分,共10分)试判断下列叙述中,哪个(些)是正确的(D)a,软件系统中所有的信息流都可以认为是事务流b,软件系统中所有的信息流都可以认为是变换流c,事务分析和变换分析的设计步骤是基本相似的A,a B,b C,c D,b和c进行需求分析可使用多种工具,但(B)是不适用的.A,数据流图B,PAD图C,判定表D,数据词典在详细设计阶段,经常采用的工具有(A).A,PAD B,SA C,SC D,DFD详细设计的结果基本决定了最终程序的(C)A,代码的规模B,运行速度C,质量D,可维护性使用白盒测试方法时,确定测试数据应根据(A)和指定的覆盖标准. A,程序的内部逻辑B,程序的复杂程度C,该软件的编辑人员D,程序的功能三,多项选择题(每题2分,共10分.注:正确得2分,漏选得1分,多选,错选不得分.)(ABCD)可以作为模块.A,子程序B,函数C,过程D,编译文件下面哪些测试属于黑盒测试(BCD).A,路径测试B,等价类划分C,边界值分析D,错误推测E,循环测试下列属于度量效益方法的是(ABCD).A,货币的时间价值B,投资回收期C,收入D,投资回报率软件维护的策略包括(BCD).A,定期检测维护B,改正性维护C,适应性维护D,完善性维护下列属于软件测试过程的是(ABE).A,单元测试B,组装测试C,内核测试D,法律验证E,确认测试四,简答题(每题6分,共24分)1、耦合性和内聚性有几种类型其耦合度,内聚强度的顺序如何答案:低:非直接耦合,数据耦合,标记耦合,控制耦合,外部耦合,公共耦合,内容耦合:高强:功能内聚,信息内聚,通信内聚,过程内聚,时间内聚,逻辑内聚,偶然内聚:弱2、请举例说明什么是多态,什么是重载答案:多态性是指子类对象可以像父类对象那样使用,同样的消息既可以发送给父类对象也可以发送给子类对象.也就是说,在类等级的不同层次中可以共享(公用)一个行为(方法)的名字,然而不同层次中的每个类却各自按自己的需要来实现这个行为.当对象接收到发送给它的消息时,根据该对象所属于的类动态选用在该类中定义的实现算法.3、重载是指一个类中有多个同名的方法,但在操作数个数或类型上有区别.例: public class A{int age;String name;public void setValue(int i) {age=i; }public void setValue(String s) {name=s; }4、什么是数据字典简述数据字典与数据流图的关系.答案:数据字典是关于数据的信息的集合,对数据流程图中的各个元素做完整的定义与说明,是数据流程图的补充工具.(2分)数据流图和数据字典共同构成系统的逻辑模型,没有数据字典数据流图就不严格, 然而没有数据流图数据字典也难于发挥作用. 数据流图和对数据流图中每个元素的精确定义放在一起,才能共同构成系统的规格说明.(3分)5、简述编码风格的重要性.答案:阅读程序是软件开发和维护过程中的一个重要组成部分,程序实际上也是一种供人阅读的文章.应当在编写程序时讲求程序的风格,这将大量地减少人们读程序的时间.良好的编码风格有助于编写出可靠而又容易维护的程序,编码的风格在很大程度上决定着程序的质量.面向对象的测试和传统开发方法的测试有什么不同答案:(1)二者都可以分成四个阶段进行.但传统测试最小单元是模块,而在面向对象环境下,最小的可测试的单元是封装了的类或对象,而不是程序模块.(2)因为面向对象软件没有一个层次的控制结构,所以传统的自顶向下和自底向上的组装策略意义不大. 每次将一个操作组装到类中(像传统的增殖式组装那样)常常行不通,因为在构成类的各个部件之间存在各种直接的和非直接的交互.对于面向对象系统的组装测试,存在两种不同的测试策略.软件工程期末试卷(2)(开放教育本科)计算机科学与技术专业《软件工程》试题B一、填空题(每空1分,共20分)1.软件生存周期一般可分为__问题定义__、可行性研究、__需求分析_、设计编码、_测试_、运行与维护阶段。

软件工程课后习题答案

软件工程课后习题答案

第一章一、什么是软件危机?它有哪些典型表现?为什么会出现软件危机?软件危机是指在计算机软件开发、使用与维护过程中遇到的一系列严重问题和难题。

它包括两方面:如何开发软件,已满足对软件日益增长的需求;如何维护数量不断增长的已有软件。

软件危机的典型表现:(1) 对软件开发成本和进度的估计常常很不准确。

常常出现实际成本比估算成本高出一个数量级、实际进度比计划进度拖延几个月甚至几年的现象。

而为了赶进度和节约成本所采取的一些权宜之计又往往损害了软件产品的质量。

这些都降低了开发商的信誉,引起用户不满。

(2) 用户对已完成的软件不满意的现象时有发生。

(3) 软件产品的质量往往是靠不住的。

(4) 软件常常是不可维护的。

(5) 软件通常没有适当的文档资料。

文档资料不全或不合格,必将给软件开发和维护工作带来许多难以想象的困难和难以解决的问题。

(6) 软件成本、软件维护费在计算机系统总成本中所占比例逐年上升。

(7) 开发生产率提高的速度远跟不上计算机应用普及的需求。

软件危机出现的原因:(1) 来自软件自身的特点:是逻辑部件,缺乏可见性;规模庞大、复杂,修改、维护困难。

(2) 软件开发与维护的方法不当:忽视需求分析;认为软件开发等于程序编写;轻视软件维护。

(3) 供求矛盾将是一个永恒的主题:面对日益增长的软件需求,人们显得力不从心。

二、假设自己是一家软件公司的总工程师,当把图1.1给手下的软件工程师们观看,告诉他们及时发现并改正错误的重要性时,有人不同意这个观点,认为要求在错误进入软件之前就清楚它们是不现实的,并举例说:“如果一个故障是编码错误造成的,那么,一个人怎么能在设计阶段清除它呢?”应该怎么反驳他?答:在软件开发的不同阶段进行修改付出的代价是很不相同的,在早期引入变动,涉及的面较少,因而代价也比较低;在开发的中期,软件配置的许多成分已经完成,引入一个变动要对所有已完成的配置成分都做相应的修改,不仅工作量大,而且逻辑上也更复杂,因此付出的代价剧增;在软件“已经完成”是在引入变动,当然付出的代价更高。

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

泉州师院2006~2007学年度第二学期本科
计算机科学与技术专业2004级《软件工程》期末试卷答案(B)
一、选择题(20 %,每题1分)
1.瀑布模型的关键不足在于( B )。

A、过于简单B、不能适应需求的动态变更
C、过于灵活D、各个阶段需要进行评审
2. DFD中的每个加工至少有( B )。

A、一个输入流或一个输出流
B、一个输入流和一个输出流
C、一个输入流
D、一个输出流
3.对象实现了数据和操作的结合,使数据和操作( C )于对象
的统一体中。

A、结合
B、隐藏
C、封装
D、抽象
4.若有一个计算类型的程序,它的输入量只有一个X,其范围是
[-1.0,1.0],现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001。

设计这组测试用例的方法是( C )。

A.条件覆盖法
B.等价分类法
C.边界值分析法
D.错误推测法
5.类库这种机制是( D )级别的信息共享。

A. 同一类
B. 不同类
C. 同一应用
D. 不同应用
6.数据字典包括( C )个条目。

A、2
B、3
C、4
D、5 7.研究开发所需要的成本和资源是属于可行性研究中的( B )
研究的一方面。

A、技术可行性
B、经济可行性
C、社会可行性
D、法律可行性
8.在SD方法中全面指导模块划分的最重要的原则是( D ).
A、程序模块化
B、模块高内聚
C、模块低耦合
D、模块独立性
9.软件详细设计的主要任务是确定每个模块的( A )。

A、算法和使用的数据结构
B、外部接口
C、功能
D、编程
10.在对数据流的分析中,主要是找到中心变换,这是从( C )
导出结构图的关键。

A、数据结构
B、实体关系
C、数据流图
D、 E—R图
11.单元测试是发现编码错误,集成测试是发现模块的接口错误,
确认测试是为了发现功能错误,那么系统测试是为了发现( C )的错误。

A、接口错误
B、编码错误
C、性能、质量不合要求
D、功能错误
12.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这
种现象称做( C )。

A、软件工程
B、软件周期
C、软件危机
D、软件产生
13.在结构图中,不是其主要成分的是( C )。

A、模块
B、模块间传递的数据
C、模块内部数据
D、模块的控制关系
14.指出PDL是下列哪种语言( A )。

A.伪码 B、高级程序设计语言
C.中级程序设计语言 D、低级程序设计语言
15.以下哪种测试方法不属于白盒测试技术( B )。

A、基本路径测试 B. 边界值分析测试
C. 循环覆盖测试 D、语句覆盖测试
16.需求分析最终结果是产生( A )。

A、需求规格说明书
B、项目开发计划
C、设计说明书
D、可行性分析报告
17.一个只有顺序结构的程序,其环形复杂度是( B )。

A、0
B、1
C、3
D、不确定的
18.软件工程管理对软件项目的开发管理,即对整个软件(B )
的一切活动的管理。

A、软件项目
B、生存期
C、软件开发计划
D、软件开发
19. PAD图为( D )提供了有力的工具。

A、系统分析
B、测试软件
C、自动分析数据
D、软件的自动化生成
20.模块设计中,最不希望的内聚是( D )。

A、功能内聚
B、通信内聚
C、过程内聚
D、偶然内聚
二、填空题(20 %,每题2分)
1.软件工程中的结构化分析SA是一种面向__数据流自顶向下逐
步求精__的分析方法。

2.可行性研究的第一个具体步骤是__确定项目的规模和目标__。

3.需求分析阶段研究的对象是软件项目的用户要求。

4.表示对象的相互行为的模型是___动态___模型。

5.软件结构图的宽度指结构图的_同一个层次上的模块总数的最
大值_______。

6.相同的操作或函数、过程可作用于多种类型的对象上并获得不
同结果。

不同的对象,收到同一消息可以产生不同的结果,这
种现象称为____多态性_____。

7.Jackson方法是一种面向_数据结构___的设计方法。

8.软件生存周期中时间最长的是软件维护阶段。

9.在面向对象方法中,人们常用状态图描述类中对象的_行为。

10.要成功地完成软件开发工作的一个主要决定性因素是____软
件项目管理______。

三、简答题(20 %,每题4分)
1.简述结构化程序设计方法的基本要点。

(1)采用自顶向下,逐步求精的程序设计方法。

(2)使用三种基本控制结构构造程序,分别是顺序,选择和循环
(3)采用主程序员组的组织形式。

(4)采用单入口单出口的模块形式。

2.简述文档在软件件开发过程中的重要性。

在软件的生产过程中,总是伴随着大量的信息要记录、要使用。

因此,软件文档在软件产品的开发过程中起着举足轻重的作用。

(1) 提高软件开发过程的能见度
(2) 提高开发效率
(3) 作为开发人员阶段工作成果和结束标志
(4) 记录开发过程的有关信息便于使用与维护;
(5) 提供软件运行、维护和培训有关资料;
(6) 便于用户了解软件功能、性能。

3.简述概要设计过程中模块设计的优化准则。

(1)改进软件结构提高模块独立性;
(2)模块规模应该适中;
(3)深度、宽度、扇出和扇入都要适当;
(4)模块的作用域应该控制在控制域内;
(5)力争降低模块接口的复杂程度;
(6)设计单入口单出口的模块;
(7)模块功能应该可以预测;
4.简述软件测试的任务、目的与类型。

(1)软件测试是一个为了寻找软件错误而运行程序的过程。

(2)目的就是为了发现软件中的错误。

一个好的测试用例是指很可能找到迄今为止尚未发现的错误的用例。

一个成功的测试是指揭示了迄今为止尚未发现的错误的测试。

(3)软件测试主要分为白盒测试和黑盒测试两大类。

5、简述软件维护的任务及活动类型。

维护阶段的关键任务是通过各种必要的维护活动使系统持久地满足用户的需要。

通常有4类维护活动:
✧改正性维护:诊断和改正在使用过程中发现的软件错误;
✧适应性维护:修改软件以适应环境的变化;
✧完善性维护:根据用户的要求改进或扩充软件使它更完善;
✧预防性维护:即修改软件为将来的维护活动预先做准备。

四、判断题(30 %,每题2分,对的打√,错的打Χ)
1.数据字典是对数据流图中的数据流,加工、数据存储、数据的
源和终点进行详细定义。

(×)
2.如果通过软件测试没有发现错误,则说明软件是正确的。

(×)
3.耦合是指一个软件结构内不同模块之间互边程序的度量。

(√)
4.在软件设计中,设计复审是和软件设计本身一样重要的环节,
其主要目的和作用是为了能够减少测试工作量。

(×)
5.模块越多,开发成本越小。

(×)
6.在面向对象方法中,信息隐蔽是通过对象的封装性来实现的。

(√)
7.结构化程序设计主要强调的是程序易读性。

(√)
8.软件的可移植性是程序设计语言的技术特性之一。

(×)
9.在软件生存周期的模型中,螺旋模型吸收了软件工程“演化”
的概念,适合于大型软件的开发。

(√)
10.判定覆盖不一定包含条件覆盖,条件覆盖也不一定包含
判定覆盖,判定/条件覆盖是同时满足这两种覆盖标准的
逻辑覆盖。

(√)
11.在表示关联的直线两端可以写上重数,它表示该类有多少
个对象与对方的一个对象连接。

(√)
12.Gantt图能显式地描绘各项作业彼此间的依赖关系。

(×)
13.一幅用例图包含的模型元素有系统、行为者及用例之间的关
系。

(×)
14.协作图与时序图传达的信息是相同的,它们之间的主要区别是
时序图集中在活动着的对象上,它表现的是相互协作的对象之间的消息传递,而协作图则侧重在某种特定的情形下对象之间传递消息的时序性。

(×)
15.在面向对象分析时,建立动态模型时首先编写典型交互行为的
脚本。

(√)
五、设计题(10 %,每题10分)
1.高校录取统分子系统有如下功能:
(1)计算标准分:根据考生原始分计算,得到标准分,存入考生分数文件。

(2)计算录取线分:根据标准分、招生计划文件中的招生人数,计算录取线,存人录取线文件。

试根据要求画出该系统的数据流程图,并将其转换为软件结构图。

相关文档
最新文档