软件工程《软件工程》习题集
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件工程习题集
第一章概述
一、选择题
1.“软件危机”产生的主要原因是( B )。
A.软件日益庞大
B.开发方法不当
C.开发人员编写程序能力差
D.没有维护好软件
2.软件工程中描述生存周期的瀑布模型一般包括计划、( 需求分析)、设计、编码、测试、维护等几个阶段,其中设计阶段在管理上又可以依次分成(概要设计)和(详细设计)两步。
①需求分析②需求调查③可行性分析④问题定义⑤方案设计
⑥代码设计⑦概要设计⑧数据设计⑨运行设计⑩
3.软件是计算机系统中与硬件相互依存的另一部分,它的组成部分是(程序、数据、文档)。A.程序、数据 B.程序、文档 C.程序 D. 程序、数据、文档
4.在软件工程时期,决定软件质量的主要因素是( )
A.管理水平 B.个人程序技术 C.小组技术水平 D.硬件的发展
5.下列哪个模型没有采用迭代的思想(A )
A.瀑布模型 B.渐增模型C.螺旋模型 D.RUP模型
6.下列关于瀑布模型的描述正确的是( D )
A.利用瀑布模型,如果发现问题修改的代价很低
B.瀑布模型的核心是按照软件开发的时间顺序将问题简化
C.瀑布模型具有良好的灵活性
D.瀑布模型采用结构化的分析与设计方法,将逻辑实现与物理实现分开
7.瀑布模型的关键不足在于(B )
(A)过于简单(B)不能适应需求的动态变更
(C)过于灵活(D)各个阶段需要进行评审
8.瀑布模型把软件生存周期划分为软件定义、软件开发与(D )三个阶段,而每一阶段又可分为若干更小的阶段。
A. 详细设计
B. 可行性分析
C. 运行及维护
D. 测试与排错
二、判断题
1.软件工程是指导计算机软件开发和维护的工程学科。( )
2.在软件工程时期,决定软件质量的主要因素是管理水平. ( )
3.软件生存期是从软件项目需求定义直至软件开始使用为止。()
4.常用的软件生存周期模型有瀑布模型和结构化模型。()
5.瀑布模型是一种线形的、顺序的软件开发模型( )
6.瀑布模型的关键不足在于不能适应需求的动态变更.( )
7.快速原型模型是为了克服瀑布模型的缺点而提出来的。()
8.快速原型模型可以有效地适应用户需求的动态变化。()
9.风险分析是螺旋模型的优点,因此螺旋模型适合任何大系统的开发。()
三、简答题
1、什么软件工程?什么是软件过程?
2、软件工程学的主要内容是什么?
3、什么是软件生命周期?软件生命周期为什么要划分阶段?划分阶段的原则是什么?第二章可行性研究与软件开发计划
一、选择题
1.经济可行性研究的范围包括( C )
A.资源有效性 B.管理制度 C.效益分析 D.开发风险
2.可行性分析是在系统开发的早期所做的一项重要的论证工作,它是决定该系统是否开发的决策依据,因必须给出( B )的回答。
A.确定 B.行或不行 C.正确 D.无二义
3.原型化方法是用户和软件开发人员之间进行的一种交互过程,适用于( A )系统。A.需求不确定的 B.需求确定的 C.管理信息 D.决策支持
4.一个项目是否开发,从经济上来说是否可行,归根结底是取决于对( A )
A.成本的估算B.项目计划C.工程管理D.工程网络图
5. 可行性研究的目标是( B )
A. 开发项目
B. 项目值得开发否
C. 规划项目
D. 维护项目
6.软件可行性研究一般不考虑(D )
(A)是否有足够的人员和相关的技术来支持系统开发
(B)是否有足够的工具和相关的技术来支持系统开发
(C)待开发软件是否有市场、经济上是否合算
(D)待开发的软件是否会有质量问题
二、判断题
1.可行性研究的目标是规划项目。()
2.需求规格说明书是软件可行性研究的依据。()
3.软件需求规格说明书的内容应当包括对算法的详细过程性描述。( )
4.分层DFD 图是一种比较严格又易于理解的描绘方式,它的顶层图的作用在于描绘了系统的实现细节.( )
5.对于软件项目,投资回收期越长,越快获得利润。( )
6.项目效益分析中投资回收率越低越好。()
7.甘特图表是一种比较常用的进度图表。()
8.数据流图应采用由外向里画的原则逐步细化。()
三、简答题
1、什么是可行性研究?可行性研究报告的内容是什么?可行性研究的结论有哪几种?第三章需求分析
一、选择题
1.软件需求分析的任务不应包括(结构化程序设计)。进行需求分析可使用多种工具,但(判定表)是不适用的。在需求分析中,分析员要从用户那里解决的最重要的问题是(要让软件做什么 )。需求规格说明书的内容不应当包括(对算法的详细过程性描述)。该文档在软件开发中具有重要的作用,但其作用不应当包括( )。
A.① 问题分析② 信息域分析③ 结构化程序设计④ 确定逻辑模型
B.① 数据流图② 判定表③ PAD图④ 数据词典
C.① 要让软件做什么② 要给该软件提供哪些信息
③要求软件工作效率如何④要让软件具有什么样的结构
D.①对重要功能的描述② 对算法的详细过程性描述
③软件确认准则④ 软件的性能
E.①软件设计的依据②用户和开发人员对软件要“做什么”的共同理解
③软件验收的依据④软件可行性分析的依据
2.在结构化分析方法中,用以表达系统内数据的运动情况的工具有(数据流图)。
①数据流图②数据词典③结构化英语④判定表与判定树3.在结构化分析方法中,用以表达系统内数据的运动情况的工具有(数据流图)。
A.数据流图
B.数据词典
C.结构化英语
D.判定表与判定树
4.在SD方法中全面指导模块划分的最重要的原则是( D )
A.程序模块化
B.模块高内聚
C.模块低耦合
D.模块独立性
5.需求分析是由分析员经过了解用户的要求,认真细致地调研、分析,最终应建立目标系统的逻辑模型,并写出(软件规格说明书)。
(A) 模块说明书(B) 软件规格说明书(C) 项目开发计划(D) 合同文档
6.分层DFD 图是一种比较严格又易于理解的描绘方式,它的顶层图的作用在于( ) 。
A. 描绘了系统的实现细节
B. 表明了被开发系统的范围以及它和周围环境的数据交换关系
C. 描绘了系统的抽象
D. 描绘了软件实现的作者和绘制的时间
二、判断题
1.数据流图可分为两种基本形式:事务型数据流图和变换型数据流图。()
2.软件概要设计包括软件系统结构设计以及数据结构和数据库设计。()
3.HIPO图由H图和IPO图组成,即一个H图对应一个或多个IPO图()。
4.软件模块之间的耦合性越弱越好。()
5.模块的内聚度越高,则说明模块的独立性越强。()
6.模块独立性有两个定性的度量标准是扇入与扇出。( )
7.模块化就是将系统划分为若干个模块,每个模块完成一个子功能。因此,模块分得越小越好。()
8.用例图的主要元素是用例和执行者及其它们之间的联系。()