07级SE试卷2010A答案

更新时间:2023-10-22 15:07:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

一、 判断下列叙述正确否。正确用“√”错误用“×”表示(每小题1分,共15分)

答1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 案栏 √ √ × √ × × × √ √ × × √ × × √ 1. 在面向对象建模中,主题划分提供了一种在更高抽象层次上描述系统的手段。 2. 面向对象的开发方法用对象分解取代了传统方法的功能分解。 3. 调试是一种测试过程。

4. 软件中80%的错误存在于20%的模块中。 5. 开发软件就是编写程序。

? 面向对象建模需识别类与对象层、 结构层 、 属性层 、 服务层 和主题层五个层次。

? 用例图所包含的四种模型元素分别是 系统 、 行为者 、用例及用例之间

的关系。

? 通常将软件生命周期划分成问题定义、可行性研究、 需求分析 、 总体设计 、 6. 形式化方法不需要建立详细的文档。

7. 软件质量主要取决于所选择的程序设计语言、算法技巧和编码质量等因素。 8. 在软件结构中,一个模块的作用域应该在该模块的控制域之内。

9. 软件需求规格说明的作用之一是表述用户和开发人员对软件要做什么的共同理解。 10. 结构化分析方法在建立系统模型时使用“一般/特殊”等结构来组织信息。 11. 随机生成的测试用例更能提高测试的效果,故不需要长期保存已有的测试用例。 12. 软件维护时因为重新定义局部或全局变量、重新定义记录或文件格式而导致软件错

误。这种维护的副作用属于代码修改的副作用。

13. 如果软件产品的开发周期拖后了,可以通过增加人手来加快软件的开发速度。 14. 软件工程就是把一般的工程原理应用于软件开发过程。 15. UML中的用例图是用于描述系统需求的主要表示方式。

二、 填空题(每小题2分,共20分)

? 软件工程方法学的三个基本要素是指: 过程 、 方法 、 工

具 。

? 软件质量保证(SQA)的主要措施有:基于非执行的测试(评审,或复审)、基

于执行的测试(即软件测试)、和程序正确性证明。

? 不同的对象,收到同一消息可以产生不同的结果,这一面向对象特征称为 多态 。

详细设计 、 实现 、 测试 、 维护 八个阶段。 ?

Jackson方法是一种面向 结构 的软件开发方法。

? 模块的三个基本属性是指: 功能 、 逻辑 、 状态 。 ? 可行性分析的主要内容包括: 技术可行性 、 经济可行性 和

操作可行性 。

? 基线的四个特点是 明确的标识 、 具体的内容 、 控制变更 、 经过审批 。 三、 单项选择题(每小题1分,共15分)

答1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 案栏 ③ ② ④ ③ ② ② ③ ①①② ③ ② ③ . ① ① 1. 传统结构化软件工程的典型软件过程模型是( )

①.喷泉模型 ②.RUP模型 ③.瀑布模型

④.极限编程模型

2. 在有关程序流程图的描述中,( )是错误的。 ①程序流程图直观清晰、易于使用。 ②程序流程图容易表示数据结构。 ③程序流程图不易反映逐步求精的过程。 ④程序流程图容易造成非结构化的程序结构。

3. 数据字典的作用是( )。 ①描述系统的加工逻辑 ②描述具体解决问题的方法 ③描述系统的目标和范围 ④定义数据流图中的各个成分的具体含义 4. 在下面对结构化程序设计方法的描述中,( )是错误的论述。 ①采用自顶向下、逐步求精。 ②采用自底向上,逐步提高抽象级别。 ③仅仅使用顺序、选择和重复三种基本控制结构。 ④设计单入口、单出口的模块。 5. 许多软件开发失败的主要原因是( )。 ①软件的复杂性不断增加 ②忽略了软件需求分析的重要性 ③无法证明软件的正确性 ④选用了非主流的编程语言 6. 软件需求规格说明的内容不应包括( )。

① 系统的主要功能 ② 算法的详细描述 ③ 用户界面及运行环境

④ 软件的性能。

7. 软件调试的目的是( )。

①.确定软件有错误 ②.确定好的测试用例 ③.定位并改正错误

④.确定软件是否符合质量要求

8. 软件生命周期包括软件定义期、开发期和运行期三个时期。下述( )不是软件

开发期所应包含的活动。 ①. 可行性分析

②. 需求获取和需求建模

③. 软件体系结构设计和数据设计 ④. 软件集成与系统测试

9. 采用结构化分析方法所建立的系统模型主要捕获了( )。 ①.数据结构

②.对象及其关系、对象行为信息 ③. 过程属性、对象及其关系

④.数据源点和终点、加工、数据流、数据存储以及加工输入、输出之间的逻辑关系

10. 一组语句在程序的多处出现,为了节省内存空间把这些语句放在一个模块中,该模

块的内聚度是( )的。 ①. 功能性

②. 逻辑性 ③. 偶然性

④. 顺序性

11. 软件测试的目标是( )。

①. 证明软件是正确的 ②. 发现错误、降低错误带来的风险 ③. 排除软件中所有的错误

④. 与软件调试相同

12. 软件是( )

①. 处理对象和处理规则的描述 ②. 程序 ③. 程序、文档和数据

④. 计算机系统

13. 结构化软件工程的生命周期一般包括三个时期:软件定义期、软件开发期和软件维

护期。下述( )是软件定义期所应包含的活动。

①. 可行性分析

②. 程序编码

③. 软件体系结构设计和数据设计 ④. 软件集成与系统测试

14. 许多软件开发失败的主要原因是( )

①. 忽略软件需求分析的重要性 ②. 系统测试无法保证软件不存在错误 ③. 无法精确地证明软件的正确 ④. 软件的复杂和规模的不断增加

15. 总体设计的内容不应包括( )

①. 在框架上研究系统应该如何实现 ②. 对软件功能进行分解 ③. 用户界面及实现过程

④. 制定测试计划

四、 问答题(每小题5分,共20分)

1. 什么是详细设计?详细设计的主要任务包括哪几个方面? 详细设计文档主要包括哪

几部分的内容?

确定应该怎样具体的实现所要求的系统。 设计出程序的“蓝图”,以后程序员将根据这个蓝图写出实际的程序代码. 详细设计说明书,详细测试报告等。

2. 简述软件测试要经过哪几个阶段,每个阶段与什么文档有关。

单元测试,对应的文档是详细设计说明书和源程序清单;

组装测试,对应的文档是总体设计说明、详细设计说明书和需求规格说明; 确认测试,对应的文档是需求规格说明; 系统测试,需求规格说明和软件规划说明; 3. 为什么要进行软件开发过程的工程化?简单说明学习软件工程理论对于掌握软件技

术的现实意义是什么?

答案:采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好技术方法结合起来,以经济地开发出高质量的软件并有效地维护它。

培养从全局角度看待问题的观点,对于成为一个高层次的软件人员具有非常重要的作用。

4. 汇编语言软件、结构化的高级语言软件和面向对象软件在基本理念上有什么异同

点?这些基本理念的不同对于软件工程方法有什么重要的影响?

答案:汇编语言重点研究与计算机密切相关的各类操作和服务,语句和结构都比较简单,但编写系统比较复杂,阅读也比较困难。 结构化高级语言,相比汇编语言在语句上要复杂一些,但整体的抽象程度还不高,与计算机处理问题的步骤还紧密相关。

面向对象的软件,抽象程度最高,容易理解但与计算机处理过程脱节。

五、应用题(30分)

1.在某一PASCAL语言版本中规定:

“标识符是由字母开头,后跟字母或数字的任意组合构成。有效字符数为8个,最大字符数为80个。”

“标识符必须先说明,再使用。”

“在同一说明语句中,标识符至少必须有一个。” 要求:

② 用等价类划分的方法,建立输入等价类表;(7分) ③ 选取足够多的测试用例,覆盖所有的等价类。(8分)

下面选取了9个测试用例,它们覆盖了所有的等价类。

① VAR x,T1234567:REAL; BEGIN x := 3.414;

T1234567 := 2.732;

...… 覆盖(1), (2), (4), (8), (9), (12), (14) ② VAR :REAL;覆盖(3) ③ VAR x,:REAL;覆盖(5)

④ VAR T12345678:REAL;覆盖(6)

⑤ VAR T12345......:REAL;覆盖(7),多于80个字符 ⑥ VAR T$:CHAR;覆盖(10)

⑦ VAR GOTO:INTEGER;覆盖(11) ⑧ VAR 2T:REAL;覆盖(13) ⑨ VAR PAR:REAL; BEGIN ......

PAP := SIN (3.14 * 0.8) / 6;覆盖(15)

2. 学生成绩查询系统的建模(共15分,a,b两题中任选一题,对于自己选择的应用系统,请首先将问题描述清楚)

在学校的教学管理系统中,学生查询成绩就是系统中的一次交互行为。问题陈述如下:

开始时终端上显示首页,用户选择“查询”请求后,显示“请输入学号”。在用户输入学号后,系统查对学生文件,核对学生学号:若输入的学号不正确,则显示“输入的学号不正确”,此次查询取消。若输入正确,出现“请输入课程名”。一旦输入课程名,就开始查找课程文件:若输入的课程名不正确,则显示“输入的课程名不正确”,此次查询取消。若输入正确,则根据“学号”和“课程名”,查询选课文件。

若在选课文件中查询成功,显示查询到的成绩,当用户选择“继续查询”后回到“请输入学号”,当用户选择“结束查询”后回到首页,若查询失败。则显示“查询失败”后回到“请输入学号”。 a.要求:

1) 请画出该系统的分层数据流图; (8分)

2) 请编写辅助数据流图描述的数据字典;

(7分)

b.应用UML语言,采用面向对象的分析方法,对上题的需求内容进行建模描述。 要求: 1)

请画出该系统的分层用例图; (8分)

2)

依据用例图画出该系统的类图,并注明各个类的属性和服务; (7分)

课程名错误 学生 学生号 学生号错误 学号检查 课程名检查 学生号和课程名信息 课程名 查询成绩信息 学生号和课程名信息 显示成绩信息 学生成绩 学生成绩库

数据字典: 名字:学生 别名:学生信息

描述:有关学生的所有个人信息内容。

定义:学生=学号+姓名+年龄+班级+入学成绩+性别

本文来源:https://www.bwwdw.com/article/wj6f.html

Top