哈尔滨工程大学软件工程复习资料带答案

本站小编 免费考研网/2019-03-21

第1章 绪论

一、填空题

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.维护


一、填空题答案
1.逻辑
2.建造一个软件系统
3.体系结构
4.瀑布模型
5.结构化方法

二、选择题答案
1.B
2.C
3.C
4.A
5.D







二、填空题
1.构成一个完整计算机系统的两部分是硬件与________。
2.程序设计时代的生产方式是________。
3.软件工程涉及到几个学科,它是一门_____学科。
4.软件开发划分的各阶段任务尽可能独立,同一阶段任务性质尽可能________。
5.将软件生存周期各个活动规定为依线性顺序联接的若干阶段的模型是________模型。
6.喷泉模型是一种以用户需求为动力,以_______为驱动的模型。
7.结构化方法是一种面向数据流的开发方法。由结构化分析、_______、结构化程序设计构成。
8.软件工程研究的主要内容是软件开发管理和_______两个方面。
9.软件工具是支持软件开发人员的开发和维护活动而使用的________。
10.一个软件项目的开发中,要采用一种生存周期模型,要按照某种________,使用相应的工具来进行。

三、选择题
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.1/2      B.1/3         C.1/4         D.2/3
7.软件开发中大约要付出(   )%的工作量进行测试和排错。
 A.20       B.30          C.40          D.50
8.准确地解决“软件系统必须做什么”是(    )阶段的任务。
 A.可行性研究 B.需求分析  C.详细设计    D.编码
9.软件生存周期中最长的是(    )阶段。
 A.需求分析 B.概要设计    C.测试        D.维护


参考答案

二填空题
1.软件       
2.个体手工劳动
3.综合性交叉 
4.相同
5.瀑布       
6.对象
7.结构化设计 
8.软件开发技术
9.软件      
10.开发方法

三、选择题
1.B   2.D   3.A   4.C
5.A   6.B   7.C   8.B   9.D




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、UML是软件开发中的一个重要工具,它主要应用于哪种软件开发方法(  )
 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、软件开发模型是指软件开发的全部过程、活动和任务的结构框架。主要的开发模型有瀑布模型、演化模型、螺旋模型、喷泉模型和智能模型。螺旋模型将瀑布模型和演化模型相结合,并增加了(1),它建立在(2)的基础上,沿着螺线自内向外每旋转一圈,就得到(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、 开发过程不分段

 
答案:
1.C  2.C  3.A  4.C  5.C  6.B 
7.C  8.B  9.B  10.A  11.A 
12.C  13.⑴B⑵D⑶A⑷D⑸A



第2章 软件可行性研究

一、填空题
1.可行性研究实质上是进行一次简化、压缩了的________。

2.可行性研究的三个方面是技术可行性、社会可行性和_________。

3.可行性研究的第一个具体步骤是__________。

4.若年利率为i,不计复利,P元在n年后的价值F是_________。

5.可行性研究中描述系统高层物理模型的工具是_______。


二、选择题
1.可行性研究的目的是决定(    )。
 A.开发项目  B.项目值得开发否  C.规划项目  D.维护项目

2.技术可行性要研究的问题之一是(   )。
A.存在侵权否 B.成本效益问题 C.运行方式可行否 D.技术风险问题

3.纯收入是累计效益现在值与投资之(   )。
A.和          B.差          C.积           D.商

4.项目开发计划这类文档是一种(   )。
A.技术性文档  B.管理性文档  C.需求分析文档 D.设计文档


答案
一、填空题
1.[答案]需求分析和设计
2.[答案]经济可行性
3.[答案]确定项目的规模和目标
4.[答案]p×(1+n×i)
5.[答案]系统流程图

二、选择题
1.B
2.D
3.B
4.B




二、填空(20分)
1.增量模型适合于________不明确、设计方案有一定风险的软件项目。
2.结构化分析方法的分析策略是__________。
3.可行性研究实质上是要在较高层次上以较抽象的方式进行___________的过程。
4.衡量模块独立性的两个定性标准是_________。
5.Jackson方法是一种面向______________的设计方法。
6.软件集成测试的方法主要有两种,它们是__________。
7.维护阶段是软件生存周期中花费精力和费用_____________的阶段。
8.继承性是子类自动共享其父类的______________机制。
9.在面向对象方法中,人们常用状态图描述类中对象的___________。
10.规定功能的软件,在一定程度上能从错误状态自动恢复到正常状态,则称该软件为_________软件。

三、选择(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.投入使用

二、填空
1.软件需求            2.自顶向下逐步求精          
3.需求分析和设计      4.耦合性与内聚性
5.数据结构            6.渐增式与非渐增式测试     
7.最多                8.数据结构和方法    
9.动态行为            10.容错

三、选择     
1.A             2.B   
3.B             4.D
5.A             6.C       
7.A             8.D
9.C            10.A   

 1、在软件的可行性研究中,可以从不同的角度对软件的可行性进行研究,其中是从软件的功能可行性角度考虑的是(  )
 A、 经济可行性               B、 技术可行性
 C、 操作可行性               D、 法律可行性
 
2、在软件工程项目中,不随参与人数的增加而使软件的生产率增加的主要问题是(  )
 A、 工作阶段间的等待时间     B、 生产原型的复杂性
 C、 参与人员所需的工作站数   D、 参与人员之间的通信困难
 
3、制定软件计划的目的在于尽早对欲开发的软件进行合理估价,软件计划的任务是(  )
 A、 组织与管理               B、 分析与估算
 C、 设计与测试               D、 规划与调度
 
 

答案
1.B  2.D  3.D



第3章 软件需求分析

二、填空(20分)
1.喷泉模型使软件开发过程具有迭代性和_______性。
2.可行性研究的目的是用最小的代价在尽可能短的时间内确定该软件项目_______。
3.需求分析阶段,分析人员要确定对问题的综合需求,其中最主要的是________。
4.软件设计是一个把软件需求转换为__________的过程。
5.详细设计的目标不仅使处理过程逻辑上正确,还应使处理过程_________。
6.增量模型适合于开发_______不明确、设计方案有一定风险的软件项目。
7.要覆盖含有循环结构的所有路径是不可能的,一般通过限制__________来测试。
8.软件生存周期中时间最长、花费的精力和费用最多的一个阶段是_______阶段。
9.对象之间进行通信的构造叫做_______。
10.计算机辅助软件工程这一术语的英文缩写为_________。

三、选择(20分)
1.需求规格说明书的作用不应该包括( )。
 A、软件设计的依据         B、用户与开发人员对软件要做什么的共同理解
 C、软件验收的依据         D、软件可行性研究的依据

2.结构化设计方法在软件开发中用于( )。
 A、概要设计       B、详细设计    C、程序设计     D、测试用例设计

3.软件结构使用的图形工具,一般采用( )图。
 A、DFD           B、PAD         C、SC          D、ER

4.JSP方法是一种面向( )的设计方法。
  A、对象          B、数据流      C、控制结构     D、数据结构

5.程序设计语言的技术特性不应包括( )。
 A、数据结构的描述性        B、抽象类型的描述性
 C、数据库的易操作性        D、软件的可移植性

6.软件测试中,白盒法是通过分析程序的( )来设计测试用例的。


相关话题/软件工程