软件工程作业及参考答案(最新版)

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

软件工程

一、软件危机与软件工程

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.质量保证

②A.需求分析B.可行性研究C总体设计D模块化设计

③A.文档编制B.运行维护C.测试D.验收

8.软件开发中常采用的生命周期方法,由于其特征而一般称其为()。

A.层次模型B.瀑布模型C.螺旋模型D.对象模型

9.描述软件生存周期的瀑布模型包括计划、(A)、设计、编码、测试、维护等阶段。其中,设计阶段又可以分成(B)和(C)两个步骤。

A:①需求分析②可行性研究③需求调查④问题定义

B,C:①方案设计②代码设计③概要(总体)设计④数据设计⑤详细设计

10.什么是软件危机?软件危机产生的原因?

11.生命周期阶段的划分?每个阶段的任务?

二、可行性研究

1.可行性研究的任务?步骤?对于各种可能的方案,从哪几个方面进行可行性研究?

参考答案:任务:在尽可能短的时间内确定该软件项目是否能够开发,是否值得开发。步骤:1.复查系统规模和目标;2.研究当前系统;3.建立新系统的高层逻辑模型;4.导出和评价各种方案;5.推荐可行方案;

6.编写可行性研究报告。对于各种可能的方案,主要从以下几个方面进行可行性研究:1.经济可行性;2.技

术可行性;3.法律可行性;4.运行可行性;5.开发方案可行性等。

三、需求分析

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.DFD图B.PAD图C.IPO图D.数据字典

9.进行需求分析可使用多种工具,但()是不适用的。

A.数据流图B.判定表C.PAD图D.数据字典

四、软件设计----包括概要设计(总体设计)和详细设计

1.软件设计一般分为概要设计和详细设计,它们之间的关系是()。

A.全局和局部B.抽象和具体C.总体和层次D.功能和结构

2.SD方法中,一般分为总体设计和详细设计两个阶段,其中总体设计主要是建立()。

A.软件结构B.软件流程C.软件模型D.软件模块

3.模块独立性是软件模块化所提出的要求,衡量模块独立性的度量标准是模块的()。

A.抽象和信息隐蔽B.局部化和封装化

C.内聚性和耦合性D.激活机制和控制方法

4.软件结构设计中,好的软件结构设计应该力求做到()。

A.顶层扇出较少,中层扇出较高,低层模块低扇入

B.顶层扇出较高,中层扇出较少,低层模块高扇入

C.顶层扇出较少,中层扇出较高,低层模块高扇入

D.顶层扇出较高,中层扇出较少,低层模块低扇入

5.软件开发的结构化设计方法,全面指导模块划分的最重要原则应该是()。

A.模块高内聚B.模块低耦合C.程序模块化D.模块独立性

6.HIPO图应用于软件开发的()阶段。

A.需求分析B.详细设计C.总体设计D.实现

7.详细设计工具可分为三类,即图形、表格和语言工具。图形工具中,(A②)简单而应用广泛。(B ①)表示法中,每个处理过程用一个盒子表示,盒子可以嵌套。(C ④)可以纵横延伸,图形的空间效果好。(D)是一种设计和描述程序的语言。

A-C:①N-S图②程序流程图③HIPO图④PAD图

D:①C ②PDL③PROLOG ④PASCAL

8.软件需求分析方法中,结构化分析是一种常用的方法。结构化分析产生的系统说明书是由一套分层的①、一本②、一组③及补充材料组成的。在结构化设计阶段产生的文档是④。

①A.流程B.数据流图C.软件结构D.事务转换

②A.结构说明B.用户需求C.数据字典D.数据流程

③A.小说明B索引 C 模块接口 D 层次结构

④ A 系统模型说明书 B 程序流程图

C 系统功能说明书

D 模块结构图和模块说明书

9.面向数据流的软件设计方法,一般是把数据流分为()两种流,再将数据流图映射为软件结构。A.数据流与事务流B.变换流与事务流C.信息流与变换流D.交换流域数据流

10.程序流程图是一种传统的程序设计表示工具,有其优点和缺点,使用该工具时应注意()。

A.支持逐步求精B.考虑控制流程

C.遵守结构化设计原则D.数据结构表示

五、编码

1.程序设计语言的选择是顺利实施编程的重要基础,评价可用语言的因素甚多,而其重要的选择依据是()。

A.对语言的熟悉程序B.语言的应用领域C.数据结构的复杂度D.算法的复杂度

2.下列叙述中选出五条关于好的程序设计风格的正确叙述(C G H I J )

A.尽量多用临时变量

B.把常见的局部优化工作留给编译程序去做

C.程序中嵌套的层数应加以限制

D.程序的书写格式最好所有语句都左对齐,这样也可以节省纸张

E.在主存储器能容纳得下的前提下,应使模块尽可能大,以便减少模块的个数

F.模块越小,优点越明显。一般说来,模块的大小都在10行以下

G.只要模块之间的接口关系不变,各模块内部实现细节的修改不会影响别的模块

H.在编写程序时尽可能对程序代码进行优化

相关文档
最新文档