一、谋学网(www.mouxue.com) (10分,每空1分)
1.1 是介于自然语言和形式化语言之间的一种半形式化语言,具有顺序、选择和循环三种基本结构。
1.2给出两种常用的软件开发方法是 和 。
1.3 是指将软件划分成独立命名且可以独立访问的模块,不同的模块通常具有不同的功能或职责。 是指软件系统中每个模块只涉及软件要求的具体的一个子功能,而和其他模块之间的接口尽量简单,是模块化设计的一个重要原则,主要用模块间的 和模块内的 来衡量。
1.4在软件开发完成交付用户使用后,就进入软件 阶段。软件维护一般有四种类型,改正性维护、 维护、 维护和预防性维护。
二、选择题 (20分,每题2分)
2.1软件危机的表现不包括 。
A) 高成本 B) 可维护性差
C) 规模大 D) 质量低
2.2 软件工程的三要素不包括 。
A.过程 B. 方法 C. 环境 D. 工具
2.3 软件开发的增量模型是 。
A. 适用于需求被清晰定义的情况
B. 一种需要快速构造核心产品的好方法
C. 可以很好的和客户沟通需求
D. 可以很好的处理风险
2.4 在各种不同的软件需求中, 根据要求的活动描述需要的行为。
A. 业务需求 B. 功能需求
C. 非功能需求 D. 用户需求
2.5ER图 。
A. 描述了数据对象之间的关系
B. 描述了转换数据流的功能
C. 描述了现实世界实体之间交换的事件序列
D. 在单个模型中描述一组事件踪迹
2.6开发人员使用 对功能需求建模。
A. 用例图 B. 顺序图 C. 类图 D. 状态图
2.7 确定模块之间的借口。
A. 概要设计 B. 数据库设计
C. 详细设计设计 D. 用户界面设计
2.8 投资回报率用来度量 。
A. 产品的质量 B. 过程的质量
C. 商业环境下的质量 D. 以上均不对
2.9 以下四种耦合中,程度最低的是 。
A. 数据 B. 标记 C. 控制 D. 公共
2.10当不适合采用生成子类的方法对已有的类进行扩充时,可以采用 设计模式动态地给一个对象添加一些额外的职责。
A. 命令 B. 适配器 C.装饰 D.享元
三、判断题(20分,每题2分)
3.1软件工程的目标是开发出高质量的软件。
3.2面向对象开发方法比结构化开发方法可以开发出更好的软件。
3.3 采用瀑布过程模型可以很好的控制开发进度。
3.4在项目开发过程中增加人力往往不能提高开发效率。
3.5人工智能方法可以准确预测项目开发成本。
3.6需求分析阶段需要确定软件做什么和软件采用什么体系结构。
3.7 设计过程中模块划分需要高内聚和低耦合。
3.8 软件实现时,规范代码编写可以提高软件的运行效率。
3.9 白盒测试方法是在单元测试阶段常用的方法。
3.10软件维护是指在交付软件之后修改软件中的错误的行为。
四、谋学网(www.mouxue.com)(20分,每题5分)
4.1 简述增量模型的优点和缺点。
4.2简要叙述结构化分析的几个模型。
4.3简要说明BS软件体系结构。
4.4 简要叙述几种黑盒测试方法。
五、问题求解题(30分,每题15分)
5.1 下图是一个项目的活动图,顶点表示里程碑,边表示活动,边上的数字表示活动持续时间(天),请计算:
(1) 活动图的关键路径及其长度。
(2) 活动0-1推迟了的松弛时间是多少天?活动2-5的松弛时间是多少天?