1 软件工程学概述
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.软件是计算机系统中的( )、数据及( )的总称。
结构化的分析(2 可行性研究、3. 需求分析)
1. 需求分析( )
A.要回答“软件必须做什么?”
B.可概括为:“理解、分解、表达”6个字
C.要求编写需求规格说明书
D.以上都对
2. 结构化分析方法使用的描述工具( )定义了数据流图中每一个图形元素
A.数据流图 B.数据字典 C.判定表 D.判定树
3. 软件需求规格说明书的内容不应该包括对( )的描述。
A.主要功能 B.算法的详细过程 C.用户界面及运行环境 D.软件的性能
4. 数据存储和数据流都是( ),仅仅所处的状态不同。
A.分析结构 B.事件 C.动作 D.数据
5. 需求分析最终结果是产生( )
A.项目开发计划 B.可行性分析报告 C.需求规格说明书 D.设计说明书
6. 在结构化分析方法(SA)中,与数据流图配合使用的是( )
A.网络图 B.数据字典 C.实体联系图 D.程序流程图
7. SA方法的分析步骤是首先调查了解当前系统的工作流程,然后( )
A. 获得当前系统的物理模型,抽象出当前系统的逻辑模型,建立目标系统的逻辑模型
B. 获得当前系统的物理模型,抽象出目标系统的逻辑模型,建立目标系统的物理模型
C. 获得当前系统的逻辑模型,建立当前系统的物理模型,抽象出目标系统的逻辑模型
D. 获得当前系统的逻辑模型,建立当前系统的物理模型,建立目标系统的物理模型
8. SA方法的基本思想是( )
A.自顶向上逐步抽象 B. 自顶向上逐步分解
C.自顶向下逐步分解 D.自顶向下逐步抽象
9.下列哪项不是在需求分析阶段要进行工作( )
A.问题识别 B.分析与综合
C.导出软件的逻辑模型 D.编码
10. 可行性分析研究的目的是( )
A争取项目 B项目是否值得开发 C开发项目 D规划项目
11.可行性分析要进行需求分析和设计应是( )
A.详细的 B.全面的 C.简化、压缩的 D.彻底的
12. DFD是常用的进行软件需求分析的图形工具,其基本符号是( )
A.输入、输出、外部实体和加工 B.变换、加工、数据流和存储
C.加工、数据流、数据存储和外部实体
D.变换、数据存储、加工和数据流
13.可行性分析需要从( )可行性、( )可行性、( )可行性3个方面分析研究每种解决方法的可行性。
14. 数据字典中有4类条目,分别是( )
15. 需求分析阶段产生的最重要的文档是( )
5. 总体设计
1. 软件设计一般分为总体设计和详细设计,它们之间的关系式(A.全局和局部 B.抽象和具体 C.总体和层次 D.功能和结构
2. 软件结构使用的图形工具,一般采用( )图
A.DFD图 B. PAD 图 C. SC 图 D. E-R图
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.耦合性越强 B.扇入数越高 C.耦合越弱 D.扇入数越低
9. 模块的独立性是由内聚性和耦合性来度量的,其中内聚性是( )
A.模块间的联系程度 B.模块的功能强度
C.信息隐蔽程度 D.接口的复杂程度
10. 软件设计中一般将用到图形工具,下列( )可用作设计的图形工具。
①结构图 ②实体联系图 ③IPO图 ④层次图
A. ①和② B. ③和④ C. ①③和④ D.全部
11. In the design phase of software engineering, decomposition of the program into modules should follow the principles of ( ).
A. low cohesion with low coupling B. low cohesion with high coupling
C. high cohesion with low coupling D. high cohesion with high coupling
12. 面向数据流的设计方法把( )映射成软件结构
A.数据流 B.系统结构 C.控制结构 D.信息流
13. 内容耦合是指( )
A.两个模块之间传递的是数据结构
B.一个模块调用另一个模块时,传递的是控制变量
C.通过一个公共数据环境相互作用的那些模块的耦合
D.一个模块直接使用另一个模块的内部数据,或通过非正常入口而转入另一个模块内部
14.( )着重反应的是模块间的隶属关系,即模块间的调用关系和层次关系.
A.程序流程图 B. 数据流图 C. E-R图 D. 结构图
15.下列说法完全正确的是( )
A.HIPO图可以描述软件总的模块层次结构—IPO图
B. HIPO图可以描述每个模块输入输出数据、处理功能及模块调用详细情况—H图
C. HIPO图是以模块分解的层次性和模块内部输入、处理、输出三大基本部分为基础建立的.
D. H图说明是了模块间信息传递及模块内部的处理
16. 通信内聚是指( )
A.把需要同时执行的动作组合在一起形成的模块
B.各处理使用相同的输入数据或者产生相同的输出数据
C.一个模块中各个处理元素都密切相关于同一功能且必须顺序执行
D.模块内部所有元素共同完成一个功能,缺一不可.
6. 详细设计
1.以下说法正确的是( )
A. 所有改变循环条件的成分都在循环体外。
B. 在直到循环中,循环体至少要执行一次。
C. 在当循环中,循环体至少要执行一次。
D. 基本程序结构不允许嵌套
2.Jackson 图上下层之间的关系式( )
A.调用关系 B. 组成关系 C. 程序结构 D. 顺序结构
3.程序的三种基本控制结构是( )
A.过程、子程序和分程序 B. 顺序、选择和重复
C. 递归、堆栈和队列 D.调用、返回和转移
4.Jackson方法是一种面向( )方法。
A. 对象 B.数据结构 C.数据流 D. 控制流
5.程序的三种基本控制结构的共同特点是( )
A.不能嵌套使用 B.只能用来写简单程序
C.已经用硬件实现 D.只有一个入口和一个出口
6.程序控制一般分为( )、分支、循环三种基本结构。
A.分块 B.顺序 C.循环 D. 分支
7.PDL是软件开发过程中用于( )阶段的描述工具。
A.需求分析 B.概要设计 C.详细设计 D.编码
8.详细设计与概要设计衔接的图形工具是( )
A.DFD图 B. SC图 C. PAD图 D.程序流程图
9. Jackson方法根据( )导出程序结构
A.数据结构 B.数据间的控制结构 C.数据流图 D. IPO图
10.结构化程序设计主要强调的是( )
A.程序的效率 B.程序执行速度 C.程序易读性 D. 程序的规模
11.在详细设计阶段,一种二维树型结构并可以自动生成程序代码的描述工具是( A.PAD B.PDL C.IPO D. 判定树
)
12.对于详细设计,下面说法错误的是( )
A. 详细设计是具体地编写程序
B. 详细设计是细化成很容易地从中产生程序图纸
C. 详细设计的结构基本决定了最终程序的质量
D. 详细设计中采用的典型方法是结构化程序设计方法
13.下列关于功能性注释不正确的说法是( )
A. 功能性注释嵌在源程序中,用于说明程序段或语句的功能以及数据的状态
B. 注释用来说明程序段,需要在每一行都要加注释
C. 可使用空行或缩进,以便很容易区分注释和程序
14. 下列关于效率的说法不正确的是( )
A. 效率是一个性能要求,其目标应该在需求分析时给出
B. 提高程序效率的根本途径在于选择良好的设计方法,数据结构与算法
C. 效率主要指处理机时间和存储器容量两个方面
D. 程序的效率与程序的简单性无关
15. 为了提高模块的独立性,模块之间最好是( )
A.公共耦合 B.控制耦合 C.数据耦合 D. 内容耦合
第7章 实现
1.黑盒测试时从(C)观点出发的测试,白盒测试时从( )观点出发的测试。
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.程序编程阶段 B.软件开发全过程 C.软件允许阶段 D.软件设计阶段
。 )
9.在软件测试中,逻辑覆盖标注主要用于( )
A. 黑盒测试 B.白盒测试 C.灰盒测试 D.软件验收方法
10.下面的逻辑测试覆盖中,测试覆盖最弱的是( )
A.条件覆盖 B.条件组合覆盖 C. 语句覆盖 D.条件及判定覆盖
11.软件的集成测试工作最好由( )承担,以提高集成测试的效果。
A.改软件的设计人员 B.改软件开发组的负责人
C.改软件的编程人员 D.不属于该软件开发组的软件设计人员
12.在黑盒测试中,着重检查输入条件的组合式( )
A.等价类划分法 B.边界值分析 C.错误推测法 D.因果图法
13.集成测试的主要方法有两个,一个是( ),另一个是()。
A. 白盒测试方法、黑盒测试方法
B. 渐增式测试方法、非渐增式测试方法
C. 等价分类方法、边界值分析方法
D. 因果图方法、错误推测方法
14.软件测试的目的是尽可能多地发现软件中的错误,通常( )是代码编写阶段可进行的测试,它是整个测试工作的基础.
A.系统分析 B.集成测试 C.验收测试 D.单元测试
15.确认测试以( )文档作为测试的基础。
A.需求规格说明书 B.设计说明书 C.源程序 D.开发计划
16.单元测试主要针对模块的几个基本特征进行测试,该阶段不能完成的测试是( )
A.系统功能 B.局部数据结构 C.重要的执行路径 D.错误处理
17.The type of testing done before software implementation and before module integration is called( ).
A. unit testing B. beta testing C. system testing D. acceptance testing
18. 用白盒法技术设计测试用例的方法包括( )
A.错误推测 B.因果图 C.基本路径测试 D.边界值分析
19. 若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0,1.0],现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001。设计这组测试用例的方法是( )
A.条件覆盖法 B.等价分类法 C.边界值分析法 D.错误推测法
第8章 软件维护
1.软件生命周期中,工作量所占比例最大的阶段是( )阶段
A.需求分析 B.设计 C.测试 D.维护
2. 在整个软件维护阶段所花费的全部工作中,( )所占的比例最大
A.需求分析 B.设计 C.测试 D.维护
3. 维护由引起的原因不同可分为几类,( )是由于外部环境或数据库的环境的变化造成的。
A.校正性维护 B.适应性维护 C.完善性维护 D.预防性维护
4. 在维护的4种类型中,( )是针对用户对软件提出的功能和性能要求的。
A.校正性维护 B.适应性维护 C.完善性维护 D.预防性维护
5. 软件生命周期的( )工作和软件可维护性有密切的关系。
A.编码阶段 B.设计阶段 C.测试阶段 D.每个阶段
6. 软件生命周期的最后一个阶段是( )
A.书写软件文档 B.软件维护 C.稳定性测试 D.书写详细用户说明
7. 软件从一个计算机系统或环境转移到另一个计算机系统或环境的容易程度是指软件的( )
A.兼容性 B.可移植性 C.容错性 D.可理解性
9. Which phase of the software development requires the most development time?( )
A. the design phase B. the testing phase
C. the maintenance phase D. the development phase
10. 下面有关软件维护的叙述( )是正确的
A. 设计软件时就应考虑到将来的可修改性
B. 维护软件是一件很吸引人的创造性工作
C. 维护软件就是改正软件中的错误
D. 谁编写的软件就应该由谁来维护这个软件
11. 下面说法错误是( )
A. 非结构化维护对于理解和掌握软件功能、性能、系统结构等有很大作用
B. 结构化的维护容易进行维护工作
C. 软件维护费用增加的主要原因是软件维护的生产率非常低
D. 软件维护的困难性是由于软件需求分析和开发方法的缺陷
9-10. 面向对象方法学
1. 以下哪种不属于用面向对象方法建立的分析模型( )
A. 动态模型 B. 功能模型 C. 对象模型 D. 状态模型
2. 表示对象相互行为的模型是( )模型。
A. 动态模型 B. 功能模型 C. 对象模型 D. 状态模型
3. 面向对象技术中,对象是类的实例。对象有三中成分:( )、属性和方法(或操作)。
A. 标志 B. 规则 C. 封装 D.消息
4.在UML提供的图中,()用于描述系统与外部系统及用户之间的交互。
A. 用例图 B.类图 C. 对象图 D.部署图
5. 对象实现了数据和操作的结合,使数据和操作( )于对象的统一体中。
A.结合 B.隐藏 C.封装 D.抽象
6. 在面向对象方法中,一个对象请求另一个对象为其服务的方式是通过发送( )
A.调用语句 B.命令 C.口令 D. 消息
7. 面向对象分析阶段建立的三个模型中,核心的模型是( )模型
A.功能 B.动态 C.对象 D.分析
8.汽车有一个发动机,汽车与发动机之间的关系是( )关系。
A.一般与具体 B.整体与部分 C.分类 D. is a
9 火车是一种陆上交通工具,火车和陆上交通工具之间的关系是( )
A.一般与具体 B.整体与部分 C.组合 D. is a
10. 在只有单重继承的类层次结构中,类层次结构是( )层次结构。
A.树型 B.网状型 C. 星型 D.环形
11. 在多重继承的类层次结构中,类层次结构是( )层次结构。
A.树型 B.网状型 C. 星型 D.环形
12.在面向对象方法学中,信息隐蔽是通过对象的( )来实现的。
A.继承性 B.共享性 C.封装性 D.抽象性
13. 在面向对象分析和面向对象设计中,通常把对象的操作称为( )
14. 对象的抽象是( ),类的实例化是( )。
13 软件项目管理
1. 软件工程学中除重视软件开发的研究外,另一个重要的组成内容是软件的 ( )
A.成本核算 B.项目管理 C.工具开发 D.人员培训
2.软件项目管理是( )一切活动的管理。
A.需求分析 B.软件设计过程 C.模块设计 D.软件生命周期
3.小组成员完全平等,享有充分的民主,通过协商帮出技术决策,这种组织程序员组的方法称为( )
A.主程序员组 B.民主制程序员组 C.现代程序员组 D.传统程序员组
4.进度安排的好坏往往会影响整个项目的按期完成,下列属于软件进度的方法是 ( )
A.程序结构图 B.流程图 C.工程网络图 D. E-R图
5.在软件开发过程中,为了充分发挥少数经验丰富、技术高超的程序的作用,程序设计小组应采用什么的组织形式。( )
A.主程序员组 B.民主制程序员组
C.现代程序员组 D.传统程序员组
6.一个项目是否开发,从经济上来说是否可行,归根结底是取决于()。
A. 成本的估算 B. 项目计划 C. 工程管理 D. 工程网络图
7. 采用甘特图表示软件项目进度安排,下列说法中正确的是()。
A.能够反映多个任务之间的复杂关系
B.能够直观表示任务之间相互依赖制约关系
C.能够表示哪些任务是关键任务
D.能够表示子任务之间的并行和串行关系。
8.软件配置项是软件配置管理的对象,指的是软件工程过程中所产生的()
A. 接口 B. 软件环境 C. 信息项 D. 版本
1. 一本书的组成有一个封面,一个目录,一个前言,若干章,每章有若干节,每节有若干段,每段有若干句子,每节有0个或多个插图,还有0个或多个表格,最后还有一个附录。试建立该书的对象模型。
2. 某仓库管理系统每天要处理大批单据所组成的事务文件。单据分为订货单和发货单两种,每张单据由多行组成,订货单每行包括零件号、零件名、单价、数量等4个数据项,发货单每行包括零件好、零件名、数量等3个数据项,用Jackson结构图表示该事务文件的数据结构
3. 设计下列伪程序的条件组合覆盖测试用例。
START
INPUT(A,B,C,D)
IF(A>0) AND (B>0)
THEN X=A+B
ELSE X=A-B
END
IF (C>A) OR (DTHEN Y=C-D
ELSE Y=C+D
END
PRINT(X,Y)
STOP
4.已知有如下程序段:
begin
P1;
if C1
then while C2 do
P2
else P3;
while C3 do
begin P4;
if C4
then P5
else P6;
end;
P7:
if C5
then repeat P8 until C6
else P9;
end
请用PAD图描述。
5.设计下列伪程序的语句覆盖测试用例。
START
INPUT(A,B,C)
IF A>5
THEN X=10
ELSE X=1
END IF
IF B>10
THEN Y=20
ELSE Y=2
END IF
IF C>15
THEN Z=30
ELSE Z=3
END IF
PRINT(X,Y,Z)
STOP
6. 高考录取系统分子系统有如下功能:
(1)计算标准分:根据考生原始分计算,得到标准分,存入考生分数文件;
(2)计算录取分数:根据标准分、招生计划文件中的招生人数,计算录取线,存入录取线文件。
试根据要求画出该系统的数据流图,并将其转换为软件结构图。
因篇幅问题不能全部显示,请点此查看更多更全内容