软件工程期末复习题整理(答案在文末)
一、判断题
第一章
1.软件就是程序,编写软件就是编写程序。 ( )
2.软件危机的主要表现是软件需求增加,软件价格上升。 ( )
3.软件工程学科出现的主要原因是软件危机的出现。 ( )
4.与计算机科学的理论研究不同,软件工程是一门原理性学科。 ( )
第二章
5.瀑布模型的最大优点是将软件开发的各个阶段划分得十分清晰。 ( )
6.原型化开发方法包括生成原型和实现原型两个步骤。 ( )
7.软件过程改进也是软件工程的范畴。 ( )
8.在软件开发中采用原型系统策略的主要困难是成本问题。 ( )
第三章
9.需求规格说明书在软件开发中具有重要的作用,它也可以作为软件可行性分析的依据。( )
10.需求分析的主要目的是解决软件开发的具体方案。 ( )
11.需求规格说明书描述了系统每个功能的实现。 ( )
12.非功能需求是从各个角度对系统的约束和限制,反映了应用对软件系统质量和特性的额外要求。 ( )
13.需求评审人员主要由开发人员组成,一般不包括用户。 ( )
14.分层的DFD图可以用于可行性分析阶段,描述系统的物理结构。 ( )
15.信息建模方法是从数据的角度来建立信息模型的,最常用的描述信息模型的方法是E-R图。 ( )
16.用于需求分析的软件工具,应该能够保证需求的正确性,即验证需求的一致性、 完整性、现实性和有效性。 ( )
17.需求分析是开发方的工作,用户的参与度不大。 ( )
第四章
18.软件设计说明书是软件概要设计的主要成果。 ( )
19.软件设计中设计复审和设计本身一样重要,其主要作用是避免后期付出高昂代价。( )
20.HIPO 法既是需求分析方法,又是软件设计方法。 ( )
21.划分模块可以降低软件的复杂度和工作量,所以应该将模块分得越小越好。 ( )
22.SD法是一种面向数据结构的设计方法,强调程序结构与问题结构相对应。 ( )
23.判定表的优点是容易转换为计算机实现,缺点是不能够描述组合条件。 ( )
24.模块独立要求高耦合低内聚。 ( )
第五章
25.程序设计语言是指编程时表现出来的特点、习惯、逻辑思维等。 ( )
26.进行程序设计语言的选择时,首先考虑的是应用领域。 ( )
27.好程序的一个重要标准是源程序代码的逻辑简明清晰、易读易懂。 ( )
28.软件测试的目的是尽可能多地发现软件中存在的错误,将它作为纠错的依据。( )
29.测试用例由输人数据和预期的输出结果两部分组成。 ( )
30.白盒测试是结构测试,主要以程序的内部逻辑为基础设计测试用例。 ( )
31.软件测试的目的是证明软件是正确的。 ( )
32.单元测试通常应该先进行“人工走查”,再以白盒法为主,辅以黑盒法进行动态测试。( )
33.白盒法是一种静态测试方法,主要用于模块测试。 ( )
34.在等价分类法中,为了提高测试效率,一个测试用例可以覆盖多个无效等价类。( )
35.发现错误多的模块,残留在模块中的错误也多。 ( )
第六章
36.类是指具有相同或相似性质的对象的抽象,类的具体化就是对象。 ( )
37.继承性是父类和子类之间共享数据结构和消息的机制,这是类之间的一种关系。( )
38.多态性增强了软件的灵活性和重用性,允许用更为明确、易懂的方式去建立通用软件, 多态性和继承性相结合使软件具有更广泛的重用性和可护充性。 ( )
39.类的设计过程包括:确定类,确定关联类,确定属性,识别继承关系。 ( )
40.用面向对象方法开发的软件系统,可维护性好。 ( )
41.模型是对现实的简化,建模是为了更好地理解所开发的系统。 ( )
42.多态性防止了程序相互依赖而带来的变动影响。 ( )
43.类封装比对象封装更具体、更细致。 ( )
44.面向对象的继承性是子类自动共享父类数据结构和方法的机制。 ( )
第七章
45.面向对象的开发方法将过程作为最基本的元素,是分析问题、解决问题的核心。( )
46.用例需求分析方法采用的是一种结构化的情景分析方法,即是一种基于场景建模的方法。 ( )
47.面向对象分析方法认为系统是对象的集合,是以功能和数据为基础的。 ( )
48.面向对象分析的核心在于建立- -个描述软件系统的模型 。 ( )
49.面向对象的分析过程主要包括三项内容:理解、表达和验证。 ( )
50.面向对象分析就是抽取和整理用户需求并建立问题域精确模型的过程。 ( )
51.面向对象的方法是以类作为最基本的元素,它是分析问题、解决问题的核心。( )
52.功能模型是类似编译器之类系统的主要模型。 ( )
第八章
53.面向对象设计是在分析模型的基础上,运用面向对象技术生成软件实现环境下的设计模型。 ( )
54.软件设计一般分为总体设计和详细设计,它们之间的关系是全局和局部。 ( )
55.在面向对象的设计中,应遵循的设计准则除了模块化、抽象、低耦合、高内聚以外,还有信息隐藏。 ( )
56.一个设计得好的软件系统具有低内聚、高耦合的特征。 ( )
57.面向对象分析和设计活动是一个多次反复迭代的过程。 ( )
58.关系数据库可以完全支持面向对象的概念,面向对象设计中的类可以直接对应到关系数据库中的表。 ( )
59.用户界面设计对于一个系统的成功是至关重要的,-个设计得很差的用户界面可能导致用户拒绝使用该系统。 ( )
第九章
60.面向对象设计的结果,既可以用面向对象语言,也可以用非面向对象语言实现。( )
61.一般来说,应该尽量选用面向对象语言来实现面向对象分析、设计的结果。 ( )
62.良好的面向对象程序设计风格,既包括传统的程序设计风格准则,也包括为适应面向对象方法所特有的概念( 如继承性)而必须遵循的一些新准则。 ( )
63.面向对象测试用例的设计由软件的输入一处理一 输出视图或单个模块的算法细节驱动。 ( )
64.面向对象系统的确认测试是面向白盒的,并且可以应用传统的白盒方法完成测试工作。 ( )
第十章
65.UML是一种建模语言,是一种标准的表示,是一种方法。 ( )
66.泳道是一种分组机制,它描述了状态图中对象所执行的活动。 ( )
67.类图中的角色是用于描述该类在关联中所扮演的角色和职责的。 ( )
68.类图用来表示系统中类与类之间的关系,它是对系统动态结构的描述。 ( )
69.用例模型的基本组成部件是用例、角色和用例之间的联系。 ( )
70.用例之间有扩展、使用、组合等几种关系。 ( )
71.顺序图描述对象之间的交互关系,重点描述对象间消息传递的时间顺序。 ( )
72.活动图显示动作及其结果,着重描述操作实现中所完成的工作,以及用例实例或类中的活动。 ( )
73.UML 语言支持面向对象的主要概念,并与具体的开发过程相关。 ( )
74.部署图描述系统硬件的物理拓扑结构以及在此结构上执行的软件。 ( )
第十一章
75.代码行技术是比较简单的定量估算软件规模的方法。 ( )
76.功能点技术依据对软件信息域特性和软件复杂性的评估结果,估算软件规模。( )
77.常用的制定进度计划的具主要有Word和Excel两种。 ( )
第十二章
78.民主制程序员组的一-个重要特点是,小组成员完全平等,享有充分民主,通过协商做出技术决策。 ( )
79.主程序员组的两个关键特性是专业化和层次性。 ( )
80.现代程序员组中,技术组长既对技术工作负责,又负责非技术事务。 ( )
第十三章
81.风险有两个显著特点,一是不确定性,另一个是损失。 ( )
82.回避风险指的是:风险倘若发生,就接受后果。 ( )
83.软件质量保证的措施主要有,基于非执行的测试(也称为复审)、基于执行的测试和程序正确性证明。 ( )
第十四章
84.总体上说,软件工程文档可以分为用户文档、开发文档和管理文档三类。 ( )
85.文档是影响软件可维护性的决定因素。 ( )
86.适应性维护是在软件使用过程中,用户会对软件提出新的功能和性能要求,为了满足这些新的要求而对软件进行修改,使之在功能和性能上得到完善和增强的活动。 ( )
87.进行软件维护活动时,直接修改程序,无需修改文档。 ( )
88.软件生命周期的最后一个阶段是书写软件文档。 ( )
参考答案:
01~10: × × √ × × × √ × × ×
11~20: × √ × × √ √ × × √ √
21~30: × × × × × √ √ √ √ √
31~40: × √ × × √ √ × × √ √
41~50: √ × × √ × × √ × √ √
51~60: × √ √ × √ × √ × √ √
61~70: √ √ × × × × √ × √ √
71~80: √ × × √ √ √ × √ √ ×
81~88: √ × √ √ √ × × ×
二、选择题
第一章
1.在下列选项中,( )不是软件的特征。
A.系统性与复制性 B.可靠性与一致性
C.抽象性与智能性 D.有形性与可控性
2.软件危机的主要原因是( )。
A.软件工具落后 B.软件生产能力不足
C.对软件的认识不够 D.软件本身的特点及开发方法
3.下列说法中正确的是( )。
A.20世纪50年代提出了软件工程的概念
B.20世纪60年代提出了软件工程的概念
C.20 世纪70年代出现了客户机/服务器技术
D.20世纪80年代软件工程学科达到成熟
4.( )是将系统化的、规范的、可定量的方法应用于软件的开发、运行和维护的过程,它包括方法、工具和过程三个要素。
A.软件生命周期 B. 软件测试 C.软件工程 D.软件过程
5.在下列选项中, ( )不属于软件工程学科所要研究的基本内容。
A.软件工程材料 B.软件工程目标 C.软件工程原理 D. 软件工程过程
6.软件工程的三要素是( )。
A.技术、方法和工具 B. 方法、对象和类
C.方法、工具和过程 D.过程、模型和方法
7.用来辅助软件开发、运行、维护、管理、支持等过程中的活动的软件称为软件开发工具,通常也称为( ) 工具。
A. CAD B. CAI C. CAM D. CASE
第二章
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. CMM模型将软件过程的成熟度分为5个等级。在( ) 使用定量分析来不断地改进和管理软件过程。
A.管理级 B.优化级 C.定义级 D.可重复级
第三章
16.需求工程的主要目的是( )。
A.系统开发的具体方案 B.进一步确定用户的需求
C.解决系统是“做什么的问题” D.解决系统是“如何做的问题"
17.需求分析的主要方法有( )。
A.形式化分析方法 B.PAD 图描述
C.结构化分析SA方法 D.程序流程图
18.SA法的主要描述手段有( )。
A.系统流程图和模块图 B.DFD图、数据词典、加工说明
C.软件结构图、加工说明 D.功能结构图、加工说明
19.画分层DFD图的基本原则有( )。
A.数据守恒原则 B.分解的可靠性原则
C.子、父图平衡的原则 D.数据流封闭的原则
20.在E-R模型中,包含以下基本成分( )。
A.数据、对象、实体 B.控制、关系、对象
C.实体、关系、控制 D.实体、属性、关系.
21.在下面的叙述中哪一个不是软件需求分析的任务? ( )。
A.问题分解 B.可靠性与安全性要求
C.结构化程序设计 D.确定逻辑模型
22.需求规格说明书的作用不应包括( )。
A.软件设计的依据 B.用户与开发人员对软件要做什么的共同理解
C.软件验收的依据 D.软件可行性研究的依据
23.软件需求规格说明书的内容不应该包括( )。
A.对重要功能的描述 B.对算法的详细过程描述
C.对数据的要求 D.软件的性能
24.软件需求分析阶段的工作,可以分为以下4个方面:对问题的识别、分析与综合、编写需求分析文档以及( )。
A.总结 B.阶段性报告
C.需求分析评审 D.以上答案都不正确
25.下述任务中, 不属于软件工程需求分析阶段的是( )。
A.分析软件系统的数据要求 B.确定软件系统的功能需求
C.确定软件系统的性能要求 D.确定软件系统的运行平台
26.进行需求分析可使用多种工具,但( )是不适用的。
A.数据流图 B. PAD图 C.状态转换图 D. 数据词典
27.在需求分析之前有必要进行( ) 工作。
A.程序设计 B.可行性分析 C.ER分析 D.2NF分析
28.数据流图是进行软件需求分析的常用图形工具,其基本图形符号是( )。
A.输人、输出、外部实体和加工 B. 变换、加工、数据流和存储
C.加工、数据流、数据存储和外部实体 D. 变换、数据存储、加工和数据流
29.在结构化分析方法中,用以表达系统内数据的运动情况的工具是( )。
A.数据流图 B.数据字典 C.结构化语言 D.判定表与判定树
第四章
30.为了提高模块的独立性,模块之间最好是( )。
A.公共环境耦合 B.控制耦合 C.数据耦合 D.特征耦合
31.在面向数据流的软件设计方法中,一般将信息流分为( )。
A.数据流和控制流 B.变换流和控制流 C.事务流和控制流 D.变换流和事务流
32.模块独立性是软件模块化所提出的要求,衡量模块独立性的度量标准是模块的( )。
A.内聚性和耦合性 B.局部化和封装化 C.抽象和信息隐藏 D.逐步求精和结构图
33.模块的独立性是由内聚性和耦合性来度量的,其中内聚性是( )。
A.模块间的联系程度 B.信息隐藏程度 C.模块的功能强度 D.接口的复杂程度
34.当算法中需要用一个模块去计算多种条件的复杂组合.并根据这些条件完成适当的功能时,从供选择的答案中,选出合适的描述工具。( )
A.程序流程图 B.N-S 图 C.PAD图 D.判定表
35.面向数据流的软件设计方法可将( )映射成软件结构。
A.控制结构 B.模块 C.数据流 D.事物流
36.Jackson 方法根据( )来导出程序结构。
A.数据流图 B.数据间的控制结构 C.数据结构 D. IPO图
第五章
37.程序语言的特性包括()。
A.习惯特性 B.算法特性 C.工程特性 D.技术特性
38.软件实现是软件产品由概念到实体的一个 关键过程,它将( )的结果翻译成用某种程序设计语言编写的并且最终可以运行的程序代码。虽然软件的质量取决于软件设计,但是规范的程序设计风格将会对后期的软件维护带来不可忽视的影响。
A.软件设计 B.详细设计 C.架构设计 D.总体设计
39.成功的测试是指运行测试用例后( )
A.发现了程序错误 B.未发现程序错误 C.证明程序正确 D.改正了程序错误
40.白盒测试法是根据程序的( ) 来设计测试用例的方法。
A.输出数据 B.内部逻辑 C.功能 D.输人数据
41.软件的集成测试工作最好由( )承担,以提高集成测试的效果。
A.该软件的设计人员 B.该软件开发组的负责人
C.不属于该软件开发组的软件设计人员 D.该软件的编程人员
42.黑盒测试是从( )观点的测试,白盒测试是从( )观点的测试。
A.开发人员、管理人员 B.用户、管理人员
C.用户、开发人员 D.开发人员、用户
43.软件测试可能发现软件中的( ), 但不能证明软件( )。
A.所有错误、没有错误 B.设计错误、没有错误
C.逻辑错误、没有错误 D.错误、没有错误
44.软件测试的目的是( )。
A.证明软件的正确性 B.找出软件系统中存在的所有错误
C.证明软件系统中存在错误 D.尽可能多的发现软件系统中的错误
45.使用白盒测试方法时确定测试数据应根据( )和指定的覆盖标准。
A.程序的内部逻辑 B.程序的复杂程度
C.程序的难易程度 D.程序的功能
46.黑盒测试方法根据( )设计测试用例。
A.程序的调用规则 B.软件要完成的功能
C.模块间的逻辑关系 D.程序的数据结构
47.在软件测试中,逻辑覆盖标准主要用于( )。
A.白盒测试方法 B.黑盒测试方法
C.灰盒测试方法 D.回归测试方法
48.集成测试的主要方法有两个,一个是( )一个是( )。
A.白盒测试方法、黑盒测试方法 B.等价类划分方法、边缘值分析方法
C.渐增式测试方法、非渐增式测试方法 D.因果图方法、错误推测方法.
49.验收测试的任 务是验证软件的( )。
A.可靠性 B.正确性 C.移植性 D.有效性
50.软件测试的目的是尽可能发现软件中的错误,通常( ) 是代码编写阶段可进行的测
试,它是整个测试工作的基础。
A.集成测试 B.系统测试 C.验收测试 D. 单元测试
第六章
51.汽车有一个发动机,汽车和发动机之间的关系是( ) 关系。
A.组装 B.整体部分 C.分类 D. 一般具体
52.( ) 是把对象的属性和操作结合在一一起, 构成-个独立的对象,其内部信息对外界是隐藏的,外界只能通过有限的接口与对象发生联系。
A.多态性 B.继承 C.消息 D.封装
53. ( ) 意味着一个操作在不同的类中可以有不同的实现方式。
A.多继承 B.多态性 C.消息 D.封装
54.每个对象可用它自己的一组属性和它可以执行的一组( )来表征。
A.操作 B.功能 C.行为 D.数据
55.应用执行对象的操作可以改变该对象的( )。
A.行为 B.功能 C.属性 D.数据
56.面向对象的主要特征除了对象唯一性、封装性、继承性外,还有( )。
A.兼容性 B.完整性 C.可移植性 D.多态性
57.关联是建立( )之间关系的一种手段。
A.对象 B.类 C.功能 D.属性
58.面向对象软件技术的许多强有力的功能和突出的优点,都来源于把类组织成一个层次结构的系统,一个类的上层可以有父亲,下层可以有子类,这种层次结构系统的一个重要性质是 ( ),一个类可获得其父亲的全部描述(数据和操作)。
A.兼容性 B.继承性 C.复用性 D.多态性
59.所有的对象可以成为各种对象类, 每个对象类都定义了一组( )。
A.说明 B.类型 C.过程 D.方法
60.通过执行对象的操作改变对象的属性,但它必须通过( )的传递。
A.操作 B.消息 C.信息 D.继承
61. 下列不属于面向对象的要素有( )。
A.继承 B.抽象 C.分类性 D.封装
第七章
62.面向对象分析的首要工作是建立( )。
A.系统的动态模型 B.系统的功能模型
C.基本的E-R模型 D.问题的对象模型
63.面向对象的分析方法主要是建立三类模型,即( ).
A.系统模型、ER模型、应用模型 B.对象模型、动态模型、功能模型
C.ER模型、对象模型、功能模型 D.对象模型、动态模型、应用模型
64.软件开发过程中,抽取和整理用户需求并建立问题域精确模型的过程叫( )。
A.生命周期 B.面向对象设计 C.面向对象分析 D.面向对象程序设计
65.面向对象分析阶段建立的3个模型中,核心的模型是( ) 模型。
A.功能 B.动态 C.对象 D.分析
66.面向对象分析是对系统进行()的一一种方法。
A.设计评审 B.程序设计 C.需求建模 D.测试验收
67.应该在( ),确定对象类中应有的服务。
A.建立对象模型之时 B.建立动态模型和功能模型之后
C.建立功能模型之后 D.建立动态模型之后
68.面向对象的动态模型中,每张状态图表示( ) 的动态行为。
A.某一个类 B.有关联的若干个类 C.一系列事件 D.一系列状态
69.在考察系统的-些涉及时序和改变的状况时,要用动态模型来表示。动态模型着重于系统的控制逻辑,它包括两个图:一个是事件追踪图,另一个是( )。
A.顺序图 B.状态图 C.系统结构图 D.数据流图
70.动态模型的描述工具是( )。
A.设计图 B.结构图 C.状态图 D.对象图
71.对象模型的描述工具是( )。
A.状态图 B.数据流图 C.结构图 D.对象图
72.功能模型中所有的( )往往形成一个层次结构,在这个层次结构中- -个数据流图的
过程可以由下一层数据流图做进一步的说明。
A.事件追踪图 B.物理模型图 C.状态迁移图 D.数据流图
第八章
73.只有类的共有界面的成员才能成为使用类的操作,这是软件设计的()原则。
A.过程抽象 B.信息隐藏 C.功能抽象 D.共享性
74.( ) 是表达系统类及其相互联系的图示,它是面向对象设计的核心,是建立状态图、
协作图和其他图的基础。
A.部署图 B.类图 C.组件图 D.配置图
75.下面所列的性质中,()不属于面向对象程序设计的特性。
A.继承性 B.重用性 C.封装性 D.可视化
76.下列是面向 对象设计方法中有关对象的叙述,其中( ) 是正确的。
A.对象在内存中没有它的存储区 B.对象的属性集合是它的特征表示
C.对象的定义与程序中类型概念相当 D.对象之间不能相互通信
77.面向对象程序设计中,基于父类创建的子类具有父类的所有特性(属性和方法),这一特点称为类的( )。
A.多态性 B.封装性 C.继承性 D.重用性
78.面向对象设计00D模型的主要部件中,通常不包括()
A.通信部件 B.人机交互部件 C.任务管理 D.数据管理
79.面向对象设计时,对象信息的隐藏主要是通过( ) 实现的。
A.对象的封装性 B.子类的继承性 C.系统模块化 D.模块的可重用
80.面向对象设计阶段的主要任务是系统设计和( )。
A.结构化设计 B.数据设计 C.面向对象程序设计 D.对象设计
第九章
81.面向对象的实现主要包括( )。
A.把面向对象设计用某种程序设计语言书写为面向对象程序,测试并调试面向对象的程序
B.面向对象设计
C.选择面向对象语言
D.单元测试
82.面向对象程序设计语言不同于其他语言的最主要特点是( )。
A.模块性 B.抽象性 C.继承性 D.内聚性
83.面向对象的测试与传统测试方法的主要区别是( )。
A.面向对象的测试可在编码前进行,传统测试方法在编码后进行
B.面向对象的测试以需求和设计阶段的测试为主,不需要进行代码测试
C.测试对象不同
D.面向对象的测试不需要设计测试用例,只需要进行会议评审
第十章
84.UML是软件开发中的一个重要T具,它主要应用于( )。
A.基于螺旋模型的结构化方法 B. 基于需求动态定义的原型化方法
C.基于数据的数据流开发方法 D.基于对象的面向对象的方法
85.( ) 是从用户使用系统的角度描述系统功能的图形表达方法。
A.类图 B.活动图 C.用例图 D.状态图
86.( ) 是表达系统类及其相互联系的图示,它是面向对象设计的核心,是建立状态图、
协作图和其他图的基础。
A.类图 B.状态图 C.对象图 D.部署图
87.( ) 描述了一组交互对象间的动态协作关系,它表示完成某项行为的对象和这些对象之间传递消息的时间顺序。
A.类图 B.顺序图 C.状态图 D.协作图
88.()是用于表示构成分布式系统的节点集和节点之间的联系的图示,它可以表示系统
中软件和硬件的物理架构。
A.组件图 B.类图 C.部署图 D.状态图
89.UML是()的缩写。
A. Unified Module Language B. Universal Module Language
C. Universal Module Locator D. Unified Modeling Language
90.()定义了系统的功能需求,它是从系统的外部看系统功能,并不描述系统内部对功
能的具体实现。
A.用例图 B.类图 C.活动图 D.对象图
91.状态图包括( )。
A.类的状态和状态之间的转换 B.触发类动作的事件
C.类执行的动作 D.所有以上选项
第十一章
92. ( ) 的作用是为有效地、定量地进行管理,把握软件工程过程的实际情况和它所产生的产品质量,
A.估算 B.度量 C.风险分析 D.进度安排
93.LOC和FP是两种不同的估算技术,但两者有许多共同的特征,只是LOC和FP技术对于分解所需要的( ) 不同。
A.详细程度 B.分解要求 C.使用方法 D.改进过程
第十二章
94.项目团队原来有6个成员,现在又增加了6个成员,这样沟通渠道增加了多少? ( )
A.4.4倍 B.2倍 C. 6倍 D.6条
95. Mantei 提出了3种通用的项目组组织方式:民主分权式、控制分权式、( )。
A.启发式 B.归纳式 C.总结式 D.控制集权式
第十三章
96.下列哪项不是风险管理的过程?( )
A.风险规划 B.风险识别 C.风险评估 D.风险收集
97.按照软件配置管理的原始指导思想,受控制的对象应是( )。
A.软件过程 B.软件项目 C.软件配置项 D.软件元素
98.下面( )不是人们常用的评价软件质量的4个因素之一。
A.可理解性 B.可靠性 C.可维护性 D.易用性
第十四章
99.在软件维护的内容中,占维护活动工作量比例最高的是( )。
A.纠错性维护 B.适应性维护 C.预防性维护 D.完善性维护
100.使用软件时提出增加新功能就必须进行( ) 维护。
A.预防性 B.适应性 C.完善性 D.纠错性
101.软件维护的副作用是指( )。
A.运行时误操作 B.隐含的错误 C.因修改软件而造成的错误 D.开发时的错误
102.软件文档是软件工程实施的重要成分,它不仅是软件开发各阶段的重要依据,而且也影响软件的( )。
A.可用性 B.可维护性 C.可扩展性 D.可移植性
103影响软件可维护性的主要因素不包括( )。
A.可修改性 B.可测试性 C.可用性 D.可理解性
参考答案:
01~10: DDBCA | CDBDC
11~20: DCCBB | CCBCD
21~30: CDBCD | BBCAC
31~40: DACDC | CBAAB
41~50: CCDDA | BACDD
51~60: BDBAC | DBBDB
61~70: CDBCC | CBAAD
71~80: DDBBD | BCAAD
81~90: ACCDC | ABCDA
91~100: DBAAD | DCDBC
101~103: CBC
三、简答题
1.请简述现代软件工程与传统软件工程显著的区别和改进。
2.敏捷方法的核心价值观有哪些?它对传统方法的“反叛”体现在哪些方面?
3.假设你要开发一个软件,它的功能是把73624.9385这个数开平方,所得到的结果应该精确到小数点后4位。一旦实现并测试完之后,该产品将被抛弃。你打算选用哪种软件生命周期模型?请说明你做出这样选择的理由。
4.需求分析的理论基础有哪些?
5.软件测试应该划分几个阶段?各个阶段应重点测试的内容是什么?
6.请简述软件质量的定义。
7.软件工程中的文档可以分为哪几类?
四、应用题
1.某旅馆的电话服务如下:可以拨分机号和外线号码。分机号是从7201至7299。外线号码先拨9,然后是市话号码或长话号码。长话号码是由区号和市话号码组成。区号是从100到300中任意的数字串。市话号码是以局号和分局号组成。局号可以是455、466、888、552中任意一个号码。分局号是任意长度为4的数字串。
请写出在数据字典中,电话号码数据条目的组成。
2.某银行计算机储蓄系统的工作流程大致如下:储户填写的存款单或取款单由业务员键入系统,如果是存款则系统记录存款人的姓名、住址(或电话号码)、身份证号码、存款类型、存款日期、到期日期、利率及密码(可选)等信息,并印出存款单给储户;如果是取款,而且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算利息并印出利息清单给储户。
请用数据流图描绘本系统的功能。
3.有如下一个学生选课系统:教师提出开课计划,系统批准后给教师下发开课通知。学生可向系统提出选课申请,系统批准后给学生下发选课申请结果通知。课程结束后,系统还可以帮助教师录人学生成绩,同时把成绩单发送给学生。
请画出该系统顶层的数据流图。
4.办公室复印机的工作过程大致如下:未收到复印命令时处于闲置状态,一旦接收到复印命令则进入复印状态,完成一个复印命令规定的工作后又回到闲置状态,等待下一个复印命令:如果执行复印命令时发现缺纸,则进人缺纸状态,发出警告,等待装纸,装满纸后进人闲置状态,准备接收复印命令;如果复印时发生卡纸故障,则进入卡纸状态,发出警告,等待维修人员来排除故障,故障排除后回到闲置状态。
请用状态转换图描绘复印机的行为。
5.旅游价格折扣分类如下表,请用判定表和判定树分别画出表达该逻辑问题的算法。
6.如果要求两个正整数的最小公倍数,请用程序流程图、N-S 图和PAD图分别表示出求解该问题的算法。
7.使用Microsoft Visual Studio 2010和C#对求两个整数的最大公约数进行编程。
8.现有一段判定三角形类型的程序,可以根据输人的三角形的三边长来判定可构成的三角形是否为等腰三角形。请用等价类划分法来为此段代码设计测试用例。
9.图5.11给出了用盒图描绘的一个程序的算法,请用逻辑覆盖法设计测试方案,要求做到语句覆盖和路径覆盖。
10.在温室管理系统中,有一个环境控制器,当没有种植作物时处于空闲状态。一旦种上作物,就要进行温度控制,定义气候,即在什么时期应达到什么温度。当处于夜晚时,由于温度下降,要调用调节温度过程,以便保持温度;太阳出来时,进入白天状态,由于温度升高,要调用调节温度过程,保持要求的温度。当日落时,进入夜晚状态。当作物收获,终止气候的控制,则进入空闲状态。
请建立环境控制器的动态模型。
11.一家图书馆藏有书籍、杂志、小册子、电影录像带、音乐CD和报纸等出版物供读者借阅。这些出版物有出版物名、出版者、获得日期、目录编号、书架位置、借出状态和借出限制等属性,并有借出、收回等服务。
请建立上述的图书馆馆藏出版物的对象模型。
12.现在有一个医院病房监护系统,用户提出的系统功能要求如下:
在医院病房监护系统中,病症监视器安置在每个病房,将病人的病症信号实时传送到中央监视系统进行分析处理。在中心值班室里,值班护士使用中央监视系统对病员的情况进行监控,根据医生的要求随时打印病人的病情报告,系统会定期自动更新病历。
当病症出现异常时,系统会立即自动报警,通知值班医生及时进行处理,同时立即打印病人的病情报告和更新病历。
请建立医院病房监护系统的功能模型。
13.某校图书馆管理系统具有以下功能。
(1)借书:先为读者办理借书证,借书证上记录读者姓名、学号、所属系和班级等信息。借书时根据读者的借书证查阅读者档案,若借书数H未超过规定数量,则办理借阅手续,修改库存记录及读者档案;若超过规定数量则不予借阅。
(2)还书:根据读者书中的条形码,修改库存记录及读者档案,若借阅时间超过规定期限则罚款。
(3)图书管理员还要定期生成订书清单,包括书名、图书代号、单价、数量等,根据需要向供应商订购图书。
请按照以上需求建立这个图书馆管理系统的对象模型。
14.某报社采用面向对象技术实现报刊征订的计算机管理系统,该系统基本需求如下。
(1)报社发行多种刊物,每种刊物通过订单来征订,订单中有代码、名称、订期、单价、份数等项目,订户通过填写订单来订阅报刊。
(2)报社下设多个发行站,每个站负责收集登录订单、打印收款凭证等事务。
(3)报社负责分类并统计各个发行站送来的报刊订阅信息。
请就此需求建立这个报刊征订的计算机管理系统的对象模型。
15.某市进行招考公务员工作,分行政、法律、财经三个专业。市人事局公布所有用人单位招收各专业的人数,考生报名,招考办公室发放准考证。考试结束后,招考办公室发放考试成绩单,公布录取分数线,针对每个专业,分别将考生按总分从高到低进行排序。用人单位根据排序名单进行录用,发放录用通知书给考生,并给招考办公室留存备查。请根据以上情况进行分析,画出顺序图。
16.图书馆管理系统的图书:图书可借阅、分类、归还、续借,图书也可能破损和遗失。请根据以上情况画出图书馆管理系统图书的状态图。
17.问题描述为:建立图书信息管理系统。系统要求实现以下功能:
(1)用户管理功能,包括读者信息的录人、修改、更新以及登录等。
(2)书籍管理功能,如书籍的添加、修改、更新、删除等数据维护功能,还可根据读者借阅书籍的要求随时更新图书馆的书籍数据库。
(3)书籍的借阅、归还管理,如借还进行详细登记,更新书籍数据库。同时提供图书预定功能。
(4)信息查询功能;如图书信息查询、用户借书、还书信息查询、书籍库存情况查询等。
请根据以上描述,确定执行者及用例,建立系统的用例模型。