《软件工程》期末试卷(3套含答案)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《软件工程》期末试卷(一)

(满分100分)

考试时间:120分钟(可根据具体情况适当调整)

1.单项选择题(每题2分,共20分)

(1)以下哪一项不属于软件工程三要素()。

A.过程

B. 方法

C. 工具

D. 计划

(2)以下哪一项不属于软件管理过程()。

A. ISO9000

B. CMM

C. IEEE

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. 包含关系、扩展关系

2.填空题(每题2分,共20分)

(1)需求分析员参与客户需求调研,撰写________________。

(2)_______________是软件策划的核心、重点与难点。

(3)软件由程序、数据和______________组成。

(4)______________是软件设计的基础,______________是软件开发的核心。

(5)需求分析分为两个阶段,_______________阶段和需求规约阶段。

(6)对象图的组成元素包括对象和______________。

(7)包的作用为__________内聚,___________耦合。

(8)活动图中必须有且仅有一个______________标记。

(9)对于一个组件而言,它有提供接口和________________两类接口。

(10)动态测试的两种方法为黑盒测试和____________测试。

3.简答题(每题5分,共20分)

(1)请简述什么是可行性研究。

(2)对象模型的多态性指的是什么。

(3)软件测试和软件调试的区别是什么(至少两点)。

(4)螺旋模型有什么优点(至少两点)。

4.画出求两个数m和n的最大公约数的N-S图(提示:辗转相除法)(10分)

5.某图书馆借书流程为:

(1)读者提交索书单,系统查看读者记录进行读者鉴别,并存储借阅记录文件。

(2)系统查询图书文件,进行存书查询,若图书未借出,向书库发送出库单并修改借阅记录文件和图书文件;如果图书已借出,向读者发有人借阅通知。

请画出该借书过程的顶层数据流图(15分)

6.公司之间商谈事宜的参与对象可以分为客户、业务员和公司行政部,对于如

下一个协商场景,请用活动图描述其过程(15分)

a)公司业务员打电话给客户,确定一个约定

b)如果约定的地点是在公司内部,那么行政部的同事需要为会面安排一间会议室

c)如果约定的地点时在公司外部,那么业务员需要用笔记本准备一份陈述报告

d)业务员与客户在约定的时间和地点见面

e)业务员准备好会议用纸

f)如果会议产生一个陈述,业务员需要记录下来备案。

参考答案

1.单项选择题

(1)D (2) C (3) D (4)A (5)B

(6) A (7)C (8)A (9)B (10)D

2.填空题

(1)需求文档(2) 软件估计 (3)文档 (4) 软件需求软件设计(5)需求获取(6)链(7)高低 (8)开始 (9)需求接口(10)白盒

3.简答题

(1)可行性研究就是指在项目进行开发之前,对该项目是否能在特定的资源、时间等制约条件下完成做出评估,并且确定它是否值得去开发。可行性研究的目的不在于如何去解决问题,而在于确定问题是否值得去解决,是否能够解决。

(2)是指在一般类中定义的属性或操作被特殊类继承之后,可以具有不同的数据类型或表现出不同的行为。

(3)

软件测试从一个侧面证明程序员的“失败”,而调试是为了找到程序员“失败”的准确位置;

测试是以已知条件开始,使用预先定义的测试用例,且有预知的正确结果,不可预见的,仅是程序是否通过测试,而调试一般是以不可知的内部条件开始,结果是不可预见的;

测试是有计划的,要进行测试用例设计,而调试是无计划的,不受时间约束;

测试是发现错误,相关人员修改后,验证错误是否被修复的过程,而调试是一个推理判断过程;

测试的执行是有规程的,而调试的执行往往靠灵感的产生。

(4)

与瀑布模型相比,螺旋模型支持用户需求的动态变化,为用户参与软件开发的所有关键决策提供了方便,从而降低了软件开发风险。

螺旋模型对可选方案和约束条件的强调,有利于已有软件的重用,也有助于把软件质量作为软件开发的一个重要目标。

减少了过多测试(浪费资金)或测试不足(产品故障多)所带来的风险。

螺旋模型中维护只是模型的另一个周期,和开发之间并没有本质区别。

相关文档
最新文档