好文档 - 专业文书写作范文服务资料分享网站

软件工程简答题答案第五版

天下 分享 时间: 加入收藏 我要投稿 点赞

控制耦合:传递的信息中有控制信息。(3)公共环境耦合:两个或多个模块通过一个公共数据环境相互作用的耦合。(4)内容耦合:最高程度的耦合,如P121图。

4. 简述模块、模块化及模块化设计的概念。

答:模块在程序中是数据说明、可执行语句等程序对象的集合,或者是单独命名和编址的元素,如高级语言中的过程、函数和子程序等。在软件的体系结构中,模块是可组合、可分解和更换的单元。模块化是指解决一个复杂问题时自顶向下逐层把软件系统划分成若干模块的过程。

5. 什么是模块的独立性?设计中为什么模块要独立?对于独立性怎样度量?

答:划分模块时,尽量做到高内聚,低耦合,保持模块相对对立性,并以此原则又话初始的软件结构。(1)如果若干模块之间耦合强度过高,每个模块内功能不复杂,可将它们合并,以减少信息的传递和公共区的引用。(2)若有多个相关模块,应该对它们的功能进行分析,校区重复功能。

6. 试论“一个模块,一个功能”的优点。 答:Not found.

7. 简述变换流的设计步骤。

答:(1)确定数据流图中的变换中心、逻辑输入和逻辑输出(2)设计软件结构的顶层和第一层(3)设计中、下层模块(4)设计的优化

8. 简述事务流的设计步骤。

答:(1)确定数据流图中的事务中心和加工路径(2)设计软件结构的顶层和第一层(3)进行事务结构中、下层模块的设计、优化等工作。

9. 试论软件设计与软件质量的关系。 答:

10.什么是模块的影响范围?什么是模块的控制范围?它们之间应该建立什么样的关系? 答:在软件结构中,由于存在着不同事务处理的需要,某一层上的模块会存在着判断处理,这样可能影响其它层的模块处理。一个模块的作用范围应在其控制范围之内,且条件判定所在的模块应与受影响的模块在层次上尽量靠近。

11. 什么是软件结构?简述软件结构设计的优化准则。

答:软件结构是软件系统的模块层次结构,反映了整个系统的功能实现,即将来程序的控制层次体系。对于一个问题,可用不同的软件结构来解决,不同的设计方法和不同的划分与组织,得出不同的软件结构。为了提高设计的质量,必须根据软件设计的原理改进软件设计,优化准则如下:(1)模块独立性准则(2)控制与作用范围之间的准则(3)结构特征准则(4)模块的接口准则

第六章 软件详细设计

1. 简述详细设计的基本原则与主要任务。

答:详细设计要完成所有设计的细节。主要任务有:(1)数据结构设计(2)物理设计(3)算法设计(4)界面设计(5)其他设计(6)编写设计说明书

2. 任意选择一种排序算法,分别用流程图和PDL语言描述其详细过程。

答:PDL语言全称是过程设计语言(Process Design Language),它是在伪代码的基础上,扩充了模块的定义与调用、数据定义和输入输出而形成的。它的控制结构与伪代码相同。PDL是一种用于描述模块算法设计和细节处理的语言。

3. 假设只有SEQUENCE和DO-WHILE两种结构,如何用它们来完成IF-THEN-ELSE的操作? 答:Not found.

4. 概要设计与详细设计有什么区别?

答:在软件的总体设计中,完成了数据和系统结构的设计。已将系统划分成为多个模块,并将它们按照一定的原则组装起来,也确定了每个模块的功能及模块与模块之间的外部接口。在理想情况下,详细设计是软件设计的第二阶段。在这个极端,由于开发系统内外的人员理论上都使用一种自然语言,因此设计说明最好是用自然语言。很清楚,这个阶段必须定义过程的细节。

第七章 面向对象方法概论

1. 什么是面向对象?

答:面向对象方法是一种运用对象、类、继承、封装、聚合、消息传送、多态性等概念来构造系统的软件开发方法。

2. 面向对象的发展经历了哪几个阶段?

答:面向对象方法的某些概念,可以追溯到20世纪50年代人工智能的早期研究。但是人们一般把20世纪60年代由挪威计算中心开发的Simula-67语言看做面向对象语言发展史上的第一个里程碑。但是直到20世纪80年代后期,第二种语言SmallTalk的应用尚不够广泛。20世纪80年代中期到90年代,是面向对象语言走向繁荣的阶段。

3. 面向对象方法有什么特点? 答:主要有以下特点:

(1)从问题域中客观存在的事物出发来构造软件系统,用对象作为对这些事物的抽象表示,并以此作为系统的基本构成单位。

(2)事物的静态特征(即可能用一些数据来表达的特征)用对象的属性表示,事物的动态特征(即事物的行为)用对象的服务表示。

(3)对象的属性与服务结合为一体,成为一个独立的实体,对外屏蔽其内部细节,即封装。(4)对事物进行分类。把具有相同属性和服务的对象归为一类,类是这些对象的抽象描述,每个对象是它的类的一个示例。

(5)通过在不同程度上运用抽象的原则,可以得到较一般的类和较特殊的类。特殊类继承一般类的属性与服务,面向对象方法支持对这种继承关系的描述与实现,从而简化系统的构造过程及其文档。

(6)复杂的对象可以用简单的对象作为其构成部分,称作聚合。 (7)对象之间通过消息进行通信,以实现对象之间的动态联系。 (8)通过关联表达对象之间的静态关系。

4. 传统的软件工程和面向对象软件工程有何异同点? 答:Not found.

5. 什么是继承?

答:定义:特殊类的独享拥有其一般类的全部属性与服务,就是称作特殊类对一般类的继承。

6. 什么是消息?

答:定义:消息就是向对象发出的服务请求,它应该含有下述信息:提供服务的对象标识、服务标识、输入信息和回答信息。

7. 什么是多态性?

答:对象的多态性是指在一般类中定义的属性或服务被特殊类继承之后,可以具有不同的书类型或表现出不同的行为。这使得一个属性或服务名在一般类及其各个特殊类中具有不同的

语义。

第八章 模型

1. 什么是状态?

答:状态是对象的属性值和链接的一种抽象。根据影响对象总的行为的性质,一系列组合在一起是一个状态。

2. 什么是事件?

答:事件是发生在某一个时间点的一件事。

3. 简述构成动态模型的几个要素。

答:(1)时间和状态(2)操作(3)嵌套状态图(4)实践技巧

4. 怎样用状态图描述事件?

答:状态图是这样一种图,其结点表示状态,用方向弧和标明事件名表示变迁。一个状态化成矩形圆角框并含有可选的名字,变迁用从接受状态到目标状态的尖头表示,在箭头上标明产生变迁的事件名,所有脱离某一状态的变迁必对应不同的事件。状态图详细说明了由事件序列引起的状态序列。如果一个对象处于某一状态并且表示它的变迁之一的事件发生的话,则对象进入变迁的目标终止状态,这个变迁称为“激发”。如果多余一个变迁脱离一个状态,则第一个发生的事件引起相应的变迁的激发。如果一个事件发生但没有脱离当前状态,即没有变迁,那么该时间被忽略。事件的一个序列对应图中走过的一条路径。

5. 简述事件如何触发操作?

答:动作是一种瞬间的操作。动作与事件有关,动作表示相对于状态图的变迁来说时间延续不重要的操作。动作也能表示内部控制操作,诸如设定属性或产生另一个事件。

6. 试述动态模型的并发性。 答:Not found.

7. 用例子说明并发活动是如何同步的 答:Not found.

第九章 对象分析

1. 用图示表示对象类及主动对象类的表示法。 答: 普通类 主动对象类

classname attributes operations()

@classname attributes operations() 2. 研究问题域应包括哪些工作要点?

答:(1)认真听取问题域专家的见解(2)亲临现场(3)阅读领域相关资料(4)借鉴他人经验

3. 发现对象有哪些原则?

答:(1)正确地运用抽象原则(2)策略与启发:①考虑问题域 ②考虑系统边界 ③考虑系统责任 (3)对象的发现和标识:①动机 ②方法 ③三视图模型 (4)审查和筛选:①舍弃无用的对象 ②对象的精简 ③推迟到OOD考虑的对象 (5)识别主动对象

4. 试说明主动服务与被动服务的区别。

答:主动服务是不需要接收消息就能主动执行的服务,它在程序实现中是一个主动地程序成分,例如用于定义进程或线程的程序单位。被动服务是只有接受到消息才执行的服务,它在编程实现中是一个被动的程序成分,例如函数、过程、例程等。

5. 对系统中的对象进行哪些步骤以发现对象的属性?

答:对象的属性是描述对象静态特征的一个数据项。通过一下步骤:(1)从厂里判断这个对象应该具有哪些属性。(2)根据当前问题域分析这个对象应该有哪些属性。(3)从系统责任要求的角度分析这个对象应具有哪些属性。(4)建立这个对象涉及到系统中所需的信息,包括要保存和管理的信息。(5)对象有哪些需要区别的状态,是否需增加一个属性来区别这些状态。(6)对象为了在服务中实现其功能,需要增设哪些属性。(7)表示整体-部分结构和示例连接需要用什么属性。

6. 画出“栈”对象的状态转换图。 答:

软件工程简答题答案第五版

控制耦合:传递的信息中有控制信息。(3)公共环境耦合:两个或多个模块通过一个公共数据环境相互作用的耦合。(4)内容耦合:最高程度的耦合,如P121图。4.简述模块、模块化及模块化设计的概念。答:模块在程序中是数据说明、可执行语句等程序对象的集合,或者是单独命名和编址的元素,如高级语言中的过程、函数和子程序等。在软件的体系结构中,模块是可组合、可分解和更换的
推荐度:
点击下载文档文档为doc格式
0fq0600lbe8qp2012imx4yj364q360011p0
领取福利

微信扫码领取福利

微信扫码分享