软件工程期末试卷(十套含答案) 联系客服

发布时间 : 星期五 文章软件工程期末试卷(十套含答案)更新完毕开始阅读

解得r=20%

2. 求一组数组中的最大数, 数组表示为A(n) ,n=1,2??n的自然数。(12分) 1) 请画出程序流程图(4分) 2) 请画出该算法的N-S图(4分) 3) 请用PAD图来表示该算法(4分) 答:(1)

(2) 1. (4分) (3)

软件工程期末试卷(四)

一、 简答题(25%, 每小题5分): 1.请简要说明需求分析的三个层次包括那些主要内容。

软件需求包括三个不同的层次—业务需求、用户需求和功能需求—也包括非功能需求。 业务需求反映了组织机构或客户对系统、产品高层次的目标要求。 用户需求文档描述了用户使用产品必须要完成的任务。

功能需求定义了开发人员必须实现的软件功能,使得用户能完成他们的任务,从而满足了业务需求。

2.为什么要设计独立性强的模块以及如何判断模块的独立性? 第一3分,耦合1分,内聚1分

模块独立性强,则:(1)系统容易开发(2)系统可靠性高(3)系统容易维护 判断模块独立性的基本原则:“耦合小,内聚大”

3.若现有类已经进行了彻底的测试,为什么必须对从现有类中实例化的子类进行重新测试?

使用的场景:3分. 2分

因为父类和子类的运行环境是不同的。

另外,如果是多重继承会显著地增加派生类的复杂程度,导致一些难以发现的隐含错误。

4.要开发质量“非常好”的软件,请从软件工程的角度分析其利与弊。 利:3分;弊:2分

利:容易维护,用户比较满意 弊:成本高,周期长

5、采用面向对象方法设计软件系统时,子系统的划分常采用水平划分或垂直划分的方

式,请说明这两种划分所得子系统的特点。 c/s:3分,p2p:2分

水平划分系统的p2p: 每个字系统可以调用任意其他子系统,比c/s复杂,可能死锁。 垂直划分c/s:客户端调用服务器端,服务器提供服务,并返回结果。客户端需要知道服务器的接口,而服务器不必知道客户端接口。

二、 应用题(45%,1-3每小题10分,4小题15分)

1.公司计划采用新技术开发一款新的手机软件产品,希望尽快占领市场,假设你是项目经理,你会选择哪种软件过程模型?为什么? 选模型:5分;原因:5分

选用模型:可采用增量模型/增量+ 原形/螺旋模型等等。但如果采用快速开发则不太适宜。

分析原因:技术相对比较新,而且需要快速占领市场,所以应短期内出现产品的原形或者是可用的子系统。

2.请根据下面的任务安排表,画出任务网络图、甘特图、标识关键路径和阶段里程碑位置。 任务名称 需求分析 测试计划 概要设计 详细设计 编码 测试方案设计 产品测试 文档整理 任务网络图: 需求分析 概要设计 测试计划 测试方案设计 起始日期 2008.3.1 2008.3.13 2008.3.13 2008.3.16 2008.3.20 2008.3.16 2008.3.26 2008.3.28 结束日期 2008.3.13 2008.3.15 2008.3.16 2008.3.20 2008.3.26 2008.3.19 2008.3.30 2008.3.30 产品测试 详细设计 编码 文档整理

活动

甘特图 需求分析 测试计划 概要设计

测试方案设计

详细设计

编码 产品测试 文档整理

3.1

3.6

3.11

3.16

3.21

3.26

3.30

任务网络图3分 甘特图3分 标识关键路径2分 阶段里程碑位置2分。

3.设有一个程序,读入三个整数,代表三角形的三条边。输出表明三角形是不规则的、等腰的或等边的。请采用黑盒的等价类划分方法,设计一组测试用例。 不规则:3 4 5

等腰:3 3 4 等边:3 3 3 其他:1 9 2

不规则的3分

等腰3分 等边3分

时间