云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 软件工程学2015年下半年第一次作业

软件工程学2015年下半年第一次作业

  • 62 次阅读
  • 3 次下载
  • 2025/6/13 22:44:47

软件工程学2015年下半年第一次作业

一、简答题

1、需求分析的任务

答:需求分析的任务主要包括以下几项: 确定目标系统的综合要求,其中包括 (目标系统的功能、性能、运行的环境及扩展性要求); 分析目标系统的数据要求,其中包括(系统平台需要哪些数据?数据间有什么关系?

数据及数据结构?对数据的处理逻辑关系等);导出目标系统的逻辑模型;修正系统流程图;修正系统开发计划、开发原型系统

2、软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题,具体表现在哪些方面?

答:

1、无法开发复杂程度高的软件 2、成本和进度估计不准

3、无统一科学的规范,软件不可维护 4、无质量保证,可靠性差 5、软件常不能满足用户的需求 6、无适当的文档资料 7、软件生产率太低

二、选择题

1、从下列关于结构化程序设计的叙述中选出5条正确的叙述。

① 程序设计比较方便,但比较难以维护。 ② 便于由多个人分工编制大型程序。 ③ 软件的功能便于扩充。

④ 程序易于理解,也便于排错。

⑤ 在主存储器能够容纳得下的前提下,应使模块尽可能大,以便减少模块的个数。 ⑥ 模块之间的接口叫做数据文件。

⑦ 只要模块之间的接口关系不变,各模块内部实现细节的修改将不会影响别的模块。 ⑧ 模块间的单向调用关系叫做模块的层次结构。

⑨ 模块越小,模块化的优点越明显。一般来说,模块的大小都在10行以下。 答:正确的叙述有②、③、④、⑦、⑧。 如果程序结构的模块化满足评价的标准(高内聚、低耦合),这样的结构是容易

维护的,程序的功能也容易测试,容易理解、容易修改、容易维护的,程序的功能也容易扩充。特别适合于大型程序编制时,多人分工全中作,协同完成任务的情形。因为是采用自顶向下、逐层分解来划分解模块结构的,所以模块之间的调用关系是分层次的模块结构,就叫做模块的层次结构。模块之间的信息传递叫做模块的接口,

模块之间传递信息可以通过参数表、全局变量或全局数据结构、数据文件、专门模块太大,控制路径数目多、涉及的范围广、变量的数目多、总体复杂性高,可理解性、可修改性、可靠性就会变差。模块太小,模块个数增多,调用的系统开销就会增大。所以要有一个权衡

2、供选择的答案中选出正确的答案填入下列叙述中的( )内。

模块内聚性用于衡量模块内部各成分之间彼此结合的紧密程度。

(1)一组语句在程序中多处出现,为了节省内存空间把这些语句放在一个模块中,该模块的内聚性是(A)的。

(2)将几个逻辑上相似的成分放在同一个模块中,通过模块入口处的一个判断决定执行哪一个功能,该模块的内聚性是(B)的。

(3)模块中所有成分引用共同的数据,该模块的内聚性是(C)。

(4)模块内的某成分的输出是另一些成分的输入,该模块的内聚性是(D)的。

(5)模块中所有成分结合起来完成一项任务,该模块的内聚性是(E)的。它具有简明的外部界面,由它构成的软件易于理解、测试和维护。

供选择的答案:

A~E: ① 功能内聚 ② 信息内聚 ③ 通信内聚

④ 过程内聚 ⑤ 偶然内聚 ⑥ 时间内聚 ⑦ 逻辑内聚

答:A.⑤偶然内聚; B.⑦逻辑内聚;C.③通信内聚; D.④过程内聚;E.①功能内聚;

3、从下列叙述中选出5条符合程序设计风格指导原则的叙述。

① 嵌套的重数应加以限制。 ② 尽量多使用临时变量。 ③ 不滥用语言特色。 ④ 不用可以省略的括号。 ⑤ 使用有意义的变量名。 ⑥ 应尽可能把程序编得短些。

⑦ 把常见的局部优化工作留给编译程序去做。 ⑧ 注解越少越好。

⑨ 程序的格式应有助于读者理解程序。 ⑩ 应尽可能多用GOTO语句。

答:①、③、⑤、⑦、⑨是正确的。

① 条件语句和循环语句嵌套得过多会增加程序的复杂性,从而增加程序的出错

率。

③虽然国际上以至国内已经发表了编程语言的标准,但各个计算机厂商在推出自己的计

算机系统的同时,也推出了针对自己机器特色的程序设计语言的非标准版本,如果利用这些语 言的非标准特性编写程序,就会给将来程序的移植带来困难。为了提高程序的可移植性,应当只使用语言的标准版本,不要滥用语言的非标准特色。

⑤给在程序中使用的变量赋予与实际含义相符的名字,可以提高程序的可读性,从而提

高程序的可维护性。

⑦程序优化的工作最好交给编译程序来做,程序员应把主要注意力放在提高程序的可读

性、清晰性、简洁性、正确性、一致性等方面,从而保证软件的可靠性和可维护性。

⑨程序的可读性是至关重要的,所以程序的格式应有助于读者理解程序

4、由Rumbaugh等人提出的一种面向对象方法叫做对象模型化技术(OMT),即三视点技术,它要求把分析时收集的信息建立在下述3个模型中:

第一个模型是(A)---- 它的作用是描述系统的静态结构,包括构成系统的对象和类、

它们的属性和操作,以及它们这间的联系。

第二个模型是(B)---- 它描述系统的控制逻辑,主要涉及系统中各个对象和类的时

序及变化状况。(B)包括两种图,即(C)和(D)。(C)描述每一类对象的行为,(D)描述发生于系统执行过程中的某一特定场景。

第三个模型是(E)---- 它着重于描述系统内部的数据的传送与处理,它由多个数据

流组成。

供你选择的答案如下:

A,B,E:① 数据模型 ② 功能模型 ③ 行为模型

④ 信息模型 ⑤ 原型 ⑥ 动态模型 ⑦ 对象模型 ⑧ 逻辑模型 ⑨ 控制模型 ⑩ 仿真模型

C,D:① 对象图 ② 概念模型图 ③ 状态迁移图

④ 数据流程图 ⑤ 时序图 ⑥ 事件追踪图 ⑦ 控制流程图 ⑧ 逻辑模拟图 ⑨ 仿真图 ⑩ 行为图

答:

A.⑦,B.⑥,C.③,D.⑥,E.②。

在OMT中,把分析时收集的信息建立在3个模型中。第一个模型是对象模型,它的作用是描述系统的静态结构,包括构成系统的对象和类、它们的属性和操作,以及它们之间的联系。第二个模型是动态模型,它描述系统的控制逻辑,主要涉及系统中各个对象和类的时序及变化状况。动态模型包括两种图,即状态迁移图和事件追踪图。状态迁移图描述每一类对象的行为,事件追踪图描述发生于系统执行过程中的某一特定场景。第三个模型是功能模型,它着重于描述系统内部数据的传送与处理,它由多个数据流图组成。

5、从下列叙述中选出5条与提高软件的可移植性有关的叙述。 ① 把程序中与计算机硬件特性有关的部分集成在一起。 ② 选择时间效率和空间效率高的算法。 ③ 使用结构化的程序设计方法。

④ 尽量用高级语言编写程序中对效率要求不高的部分。

⑤ 尽可能减少注释。 ⑥ 采用表格控制方式。 ⑦ 文档资料详尽、正确。

⑧ 在有虚拟存储器的计算机系统上开发软件。 ⑨ 减少程序中对文件的读写次数。 ⑩ 充分利用宿主计算机的硬件特性。

答:正确的叙述有①、③、④、⑥、⑦。 为了提高软件的可移植性,应当尽可能用高级语言编写源程序代码。对于与硬件或操作系统有关的部分,或对效率要求很高的部分,

应当为它们建立专门的模块,将用汇编语言写的程序封装在这些模块中,与程序中其他部分以事先约定的标准方式接口。这样,一旦硬件环境或操作系统环境发生变化,只需修改这个别模块即可。

采用表格控制方式,将所有的外部设备接口或与其他系统的接口,包括信息传补递、驱动程序入口等都用表格控制,即使将来硬件、相关软件发生的变化,只需修改表格中的登记项,原来的程序一律可以不改。

为了将来修改方便,不致于引入新的错误,相关文档一定要齐全、正确,程序必须有必要的注释,并使用如结构化程序设计方法这样的良好程序设计方法来编写程序。至于算法选择,与效率有关,与可移植性无关。其他叙述,如⑧、⑨、⑩,都不利于可移植性。

三、论述题

1. 论述瀑布模型软件开发方法的基本过程。

答:

瀑布模型软件开发方法将软件开发分成四个时期八个阶段: 分析时期:

1)问题定义---问题性质、工程目标及规模

2)可行性研究---技术上、经济上、社会上是否有可行解? 3)需求分析--- 确定目标系统必须具备的功能? 设计时期:

4)总体设计--- 1).几种求解方案;2).设计软件的结构

5)祥细设计--- 设计出程序的祥细规格说明编码与测试时期: 6)编码与单元测试--- 程序编码实现与模块测试

7)综合测试--- 集成测试和验收测试运行与维护时期: 8)维护 ---改正性维护、适应性维护、完善性维护、预防性维护 特点:下导式开发、追溯式确认、适合能事先确切定义需求的软件开发

2. 为什么软件需要维护?维护有哪几种类型?简述它们的维护过程。

答:

在软件开发成这交付用户使用后,为了保证软件在一个相当长的是时期有够正常运行,不需要对软件进行维护。

软件维护的为类型有4种:

改正性维护、适应性维护、完善性维护和预防性维护。其中,改正性维护是要改正

搜索更多关于: 软件工程学2015年下半年第一次作业 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

软件工程学2015年下半年第一次作业 一、简答题 1、需求分析的任务 答:需求分析的任务主要包括以下几项: 确定目标系统的综合要求,其中包括 (目标系统的功能、性能、运行的环境及扩展性要求); 分析目标系统的数据要求,其中包括(系统平台需要哪些数据?数据间有什么关系?数据及数据结构?对数据的处理逻辑关系等);导出目标系统的逻辑模型;修正系统流程图;修正系统开发计划、开发原型系统 2、软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题,具体表现在哪些方面? 答: 1、无法开发复杂程度高的软件 2、成本和进度估计不准 3、无统一科学的规范,软件不可维护 4、无质量保证,可靠性差 5

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com