第四章 结构化设计习题.docx

上传人:b****6 文档编号:4165569 上传时间:2022-11-28 格式:DOCX 页数:13 大小:36.29KB
下载 相关 举报
第四章 结构化设计习题.docx_第1页
第1页 / 共13页
第四章 结构化设计习题.docx_第2页
第2页 / 共13页
第四章 结构化设计习题.docx_第3页
第3页 / 共13页
第四章 结构化设计习题.docx_第4页
第4页 / 共13页
第四章 结构化设计习题.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

第四章 结构化设计习题.docx

《第四章 结构化设计习题.docx》由会员分享,可在线阅读,更多相关《第四章 结构化设计习题.docx(13页珍藏版)》请在冰豆网上搜索。

第四章 结构化设计习题.docx

第四章结构化设计习题

第四章结构化设计习题

 

(一)名词解释

1.软件概要设计

2.模块

3.模块化

4.抽象

5.信息隐蔽

6.模块独立性

7.耦合性

8.数据耦合

9.标记耦合

10.控制耦合

11.公共耦合

12.内容耦合

13.内聚性

14.偶然内聚

15.逻辑内聚

16.时间内聚

17.通信内聚

18.顺序内聚

19.功能内聚

20.软件结构图

21.结构化设计

22.变换流

23.事务流

24.详细设计

25.流程图

26.过程设计语言

(二)填空题

1.软件结构的设计是以为基础的。

2.软件设计阶段,是把软件“”的逻辑模型变换为“”的物理模型。

3.数据库的“概念设计”与“逻辑设计”分别对应于系统开发中的“”与“”,而数据库的“物理设计”与模块的“”相对应。

4.概要设计文档主要有、、和。

5.模块具有、、和几种基本属性。

6.模块化指解决一个复杂问题时逐层把软件系统划分成若干的过程。

7.衡量软件的独立性有两个定性的度量标准,即和。

8.模块之间联系越紧密,其就越强,模块的则越差。

9.模块的耦合性由低到高分为、、、、和。

10.数据耦合传递的是,标记耦合传递的是,控制耦合传递的是。

11.软件结构往往用结构的图形来表示。

软件结构图是软件系统的

结构。

12.面向数据流的设计又称,它是以需求分析阶段产生的为基础,按一定的步骤映射成软件结构。

13.数据流图一般可分为和两类。

14.HIPO图中图用于描述软件总的模块层次结构,图用于说明模块间的信息传递及模块内部的处理。

15.详细设计也称,它是软件设计的第二阶段,主要确定每个的具体执行过程。

16.在详细设计阶段,需要对处理过程的和数据库的结构做评审。

17.任何程序都可由、和3种基本控制结构构造。

这3种基本结构的共同点是、。

18.详细描述处理过程常用3种工具:

、、和。

19.程序流程图又称,它是历史最悠久、使用最广泛的一种描述程序

结构的工具。

20.结构化流程图要求3种基本控制结构和而成,不能有相互交叉的情况。

21.PAD图是一种展开的二维结构,PAD图的控制流程为、

地执行。

22.PDL是一种描述模块设计和处理细节的语言,其语法具有严格的关键字,语法使用自然语言的词汇。

23.PDL是描述处理过程“”的细节,结构化语言是描述加工“”的。

 

(三)单项选择题

1.最高程度也是最差的耦合是()。

A.公共耦合B.内容耦合

C.控制耦合D.数据耦合

2.概要设计阶段产生的文档不包括()。

A.概要设计说明书B.数据库设计说明书

C.用户手册D.开发进度月报

3.一个模块把数值作为参数传送给另一个模块,这种耦合方式称为()。

A.数据耦合B.公共耦合

C.控制耦合D.标记耦合

4.一个模块内部各程序段都在同一张表上操作,这个模块的内聚性称为()。

A.时间内聚B.功能内聚

C.通信内聚D.顺序内聚

5.结构化设计是一种面向()的设计方法。

A.数据流B.模块

C.数据结构D.程序

6.结构化设计又称为()。

A.概要设计B.面向数据流设计

C.面向对象设计D.详细设计

7.下面几种图中,不表示软件结构的图是()图。

A.DFD(数据流图)B.PAD(问题分析图)

C.IDEF0D.HIPO

8.反映模块内部特性的是()。

A.接口B.状态

C.功能D.逻辑

9.画软件结构图时应注意调用关系只能()。

A.从上到下B.从下到上

C.从左到右D.从右到左

10.变换型DFD是一个()结构。

A.循环B.选择

C.分层D.顺序

 

11.在详细设计阶段,经常采用的工具包括()。

A.SC图B.DFD图

C.PAD图D.IDEF0图

12.结构化程序设计的一种基本方法是()。

A.筛选法B.递归法

C.迭代法D.逐步求法

13.与详细设计相对应的是数据库的()设计。

A.概念B.逻辑

C.物理D.功能

14.详细设计的基本任务中包括()。

A.数据流设计B.人机对话设计

C.数据库的逻辑设计D.软件结构设计

15.主程序员组的组织形式中负责全部技术活动的是()。

A.主程序员B.后备程序员

C.程序管理员D.数据库专家

16.下面说法不正确的是()。

A.流程图不易表示数据结构B.流程图容易造成非结构化的程序结构

C.流程图支持逐步求精D.流程图描述的是程序的逻辑结构

17.下面说法不正确的是()。

A.PAD图支持逐步求精B.PAD图容易造成非结构化的程序结构

C.PAD图描述的是算法D.PAD图容易表达模块的层次结构

18.可自动生成程序的详细设计方法是()。

A.流程图B.IPO图

C.盒图D.PAD图

(四)简答题

1.什么是软件概要设计?

该阶段的基本任务是什么?

2.软件设计的基本原理包括哪些内容?

3.什么是模块间的耦合性?

有哪几种耦合性?

简述降低模块间耦合度的方法。

4.什么是软件结构?

简述软件结构设计优化准则。

5.变换分析设计与事务分析设计有什么区别?

简述其设计步骤。

6.什么是软件详细设计?

该阶段的基本任务是什么?

7.什么是结构化程序设计?

简述结构化程序设计的基本要点。

8.详细设计有哪几种描述方法?

(五)应用题

2.图4-4描述某银行安全监控系统的功能。

请将该DFD图转换成软件结构图和HIPO图。

图4-4安全监控系统的DFD图

 

(一)名词解释答案

1.软件概要设计又称结构设计,这是一个把软件需求转换为软件表示(只是描述软件的总的体系结构)的过程。

2.模块在程序中是数据说明、可执行语句等程序对象的集合,或者是单独命名和编址的元素,在软件的体系结构中,模块是可组合、分解和更换的单元。

3.模块化指解决一个复杂问题时自顶向下逐层把软件系统划分成若干模块的过程。

每个模块完成一个特定的子功能,所有模块按某种方法组装起来,成为一个整体,完成整个系统所要求的功能。

4.抽象是认识复杂现象过程中使用的思维工具,即抽出事物本质的共同特性而暂不考虑它的细节,不考虑其他因素。

5.信息隐蔽指在设计和确定模块时,使得一个模块内包含的信息(过程或数据),对于不需要这些信息的其他模块来说,是不能访问的。

6.模块独立性指每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单。

7.耦合性也称块间关系,指软件系统结构中各模块间相互联系紧密程度的一种度量。

8.数据耦合指两个模块之间有调用关系,传递的是简单的数据值,相当于高级语言中值传递。

9.标记耦合指两个模块之间传递的是数据结构。

10.控制耦合指一个模块调用另一个模块时,传递的是控制变量(如开关、标志等),被调用模块通过该控制变量的值有选择地执行块内某一功能。

11.公共耦合指通过一个公共数据环境相互作用的那些模块间的耦合。

公共数据环境可以是全程变量或数据结构、共享的通信区、内存的公共覆盖区及任何存储介质上的文件、物理设备等。

12.内容耦合指一个模块直接调用另一个模块的内部数据,或通过非正常入口而转入另一个模块内部。

13.内聚性又称块内联系,指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。

14.偶然内聚指一个模块内的各处理元素之间没有任何联系。

15.逻辑内聚指模块内执行几个逻辑上相似的功能,通过参数确定该模块完成哪一个功能。

16.时间内聚指需要同时执行的动作组合在一起形成的模块。

17.通信内聚指模块内所有处理元素都在同一个数据结构上操作(有时称为信息内聚),或者指各处理使用相同的输入数据或者产生相同的输出数据。

18.顺序内聚指一个模块中各个处理元素都密切相关于同一功能且必须顺序执行,前一功能元素的输出就是下一功能元素的输入。

19.功能内聚指模块内所有元素共同完成一个功能,缺一不可。

因此模块不能再分割。

20.软件结构图是软件系统的模块层次结构,反映了整个系统的功能实现。

21.结构化设计又称面向数据流的设计,它是以需求分析阶段产生的数据流图为基础,按一定的步骤映射成软件结构。

22.变换流指数据流图(简称DFD)具有明显的输入、变换和输出界面。

23.事务流指数据流图中输入流被分离成许多数据流,形成许多加工路径,并根据输入值选择其中一条路径来执行。

24.详细设计主要确定每个模块的具体执行过程,也称过程设计。

25.结构化程序设计是一种典型的面向数据流的软件总体设计方法。

它采用自顶向下、逐步求精的设计方法和单入口单出口的控制结构,并且只包含顺序、选择和重复3种结构。

26.流程图又称程序框图,是一种描述程序逻辑结构的工具。

27.问题分析图(简称PAD图)。

它是一种算法描述工具,它是一种由左往右展开的二维树形结构。

PAD图的控制流程为自上而下,从左到右地执行。

28.过程设计语言(简称PDL),也称程序描述语言,又称伪码,它是一种用于描述模块算法设计和处理细节的语言。

(二)填空题答案

1.模块

2.做什么怎么做

3.需求分析概要设计详细设计

4.概要设计说明书数据库设计说明书用户手册修订测试计划

5.接口功能逻辑状态

6.自顶向下模块

7.耦合性内聚性

8.耦合性独立性

9.无直接耦合数据耦合标记耦合控制耦合公共耦合内容耦合

10.数据值数据结构控制变量

11.树状或网状模块层次

12.结构化设计数据流图

13.变换型事务型

14.HIPO

15.过程设计模块

16.算法物理

17.顺序选择循环单入口单出口

18.图形表格语言

19.程序框图逻辑

20.顺序组合完整嵌套

21.从左往右树型自上而下从左到右

22.算法外层内层

23.怎么做做什么

(三)单项选择题答案

1.B2.D3.A4.C5.A6.B7.B8.D9.A10.D

11.C12.D13.C14.B15.A16.C17.B18.D

(四)简答题答案

1.软件概要设计又称结构设计,这是一个把软件需求转换为软件表示(只是描述软件的总的体系结构)的过程。

该阶段的基本任务是:

①设计软件系统结构:

∙      采用某种设计方法,将一个复杂的系统按功能划分成模块。

∙      确定每个模块的功能。

∙      确定模块之间的调用关系。

∙      确定模块之间的接口,即模块之间传递的信息。

∙      评价模块结构的质量。

②数据结构和数据库设计:

在概要设计阶段,数据结构设计应用抽象的数据类型、数据库设计应用数据库的逻辑设计。

③编写概要设计文档:

包括概要设计说明书、数据库设计说明书、用户手册、修订测试计划。

④评审:

对设计部分是否完整地实现了需求中规定的功能、性能等要求,设计方案的可行性,关键的处理及内外部接口定义正确性、有效性,各部分之间的一致性等一一进行评审。

2.软件设计的基本原理包括:

①模块化:

指解决一个复杂问题时自顶向下逐层把软件系统划分成若干模块的过程。

每个模块完成一个特定的子功能,所有模块按某种方法组装起来,成为一个整体,完成整个系统所要求的功能。

模块化是软件解决复杂问题所具备的手段。

②抽象:

是认识复杂现象过程中使用的思维工具,即抽出事物本质的共同的特性而暂不考虑它的细节,不考虑其他因素。

软件工程中每一步都是对软件解决方法的抽象层次的一次细化。

③信息隐蔽:

指在设计和确定模块时,使得一个模块内包含的信息(过程或数据),对于不需要这些信息的其他模块来说,是不能访问的。

通过信息隐蔽,可以定义和实施对模块的过程细节和局部数据结构的存取限制。

④模块独立性。

指每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单。

衡量模块独立性有两个标准耦合性和内聚性,可判断设计方案的优劣。

3.模块间的耦合性是根据模块的外部特征提出的,是对软件系统结构中各模块间相互联系紧密程度的一种度量,也称块间关系。

耦合程度由低到高分为6种:

①无直接耦合(不传递任何消息)。

②数据耦合(传递的是值)。

③标记耦合(传递的是数据结构)。

④控制耦合(传递的是控制变量,例如开关、标志等)。

⑤公共耦合(传递的是在公共数据环境中的数据)。

⑥内容耦合(传递的是一个模块的内部数据,往往出现在汇编语言中)。

模块间联系越紧密,其耦合性越强,模块的独立性越差。

提高模块独立性,降低模块间耦合度的措施是:

①在耦合方式上降低模块间接口的复杂性。

∙      模块接口方式不采用直接引用(内容耦合),而采用调用方式(例如过程语句调用);

∙      模块接口信息通过参数传递且传递信息的结构尽量简单,不用复杂数据结构(例如过程、指针等),参数个数不宜过多。

②在传递信息类型上尽量使用数据耦合,避免控制耦合,慎用或有控制地使用公共耦合。

4.软件结构设计优化准则如下:

①划分模块时,尽量做到高内聚、低耦合,保持模块相对独立性,以此优化初始的软件结构。

②一个模块的作用范围应在其控制范围之内,且判定所在的模块应与受其影响的模块在层次上尽量靠近。

③软件结构的深度、宽度、扇入、扇出应适当。

④模块的大小要适中。

⑤模块的接口要简单、清晰、含义明确,便于理解,易于实现、测试与维护。

5.变换分析设计是一个顺序结构,由输入、变换和输出三部分组成,其工作过程有3步:

取得数据、变换数据和给出数据。

事务分析设计是将它的输入流分离成许多发散的数据流,形成许多加工路径,并根据输入的值选择其中一个路径来执行。

二者区别:

变换分析设计适用于具有明显变换特征的数据流图,事务分析设计适用于具有明显事务特征的数据流图。

变换分析设计步骤:

①确定DFD中的变换中心、逻辑输入和逻辑输出:

∙      从物理输入端开始,沿着数据流方向向系统中心寻找,直到有这样的数据流,它不能再被看做是系统的输入,则它的前一个数据流是系统的逻辑输入。

∙      从物理输出端开始,逆数据流方向向中间移动,可以确定系统的逻辑输出。

∙      介于逻辑输入和逻辑输出之间的加工就是变换中心,即主加工。

②设计软件结构的顶层和第一层——变换结构:

∙      顶层即主模块,主要完成所有模块的控制。

∙      第一层至少有3个功能模块:

输入、输出和变换模块,即为逻辑输入设计一个输入模块,其功能是为顶层模块提供相应数据,为逻辑输出设计一个输出模块,其功能是输出顶层模块的信息,为变换中心设计一个变换模块,其功能是将逻辑输入进行变换加工,然后逻辑输出。

③设计中、下层模块。

对第一层的输入、变换、输出模块自顶向下逐层分解。

∙      输入模块下属模块的设计:

可设计两个下属模块,一个接收,一个转换。

∙      输出模块下属模块的设计:

可设计两个下属模块,一个转换,一个发送。

∙      变换模块下属模块的设计:

按照模块独立性原则来组织其结构,一般对每个基本加工建立一个功能模块。

④设计的优化:

∙      输入部分求精:

为每个物理输入设置专门模块,其他输入模块与转换数据模块可适当合并。

∙      输出部分求精:

为每个物理输出设置专门模块,其他输出模块与转换数据模块可适当合并。

∙      变换部分求精:

根据设计准则,对模块进行合并或调整。

事务分析设计步骤:

①确定DFD的事务中心和加工路径:

当数据流图中每个加工将一个输入数据分解成多个发散的输出数据流时,该加工就是事务中心,从事务中心辐射出去的数据流为各个加工路径。

②设计软件结构的顶层和第一层——事务结构。

顶层是一个全控模块,有两个部分:

接收分支(与变换型DFD的输入部分设计方法相同)和发送分支(即调度模块,它控制管理所有下层的事务处理模块)。

③设计中、下层模块、优化等工作,与变换分析设计相同。

 

6.详细设计是模块设计的第二阶段,主要确定每个模块的具体执行过程,也称过程设计。

其基本任务有:

①为每个模块进行详细的算法设计。

用某种图形、表格、语言等工具将每个模块处理过程的详细算法描述出来。

②为模块内的数据结构进行设计。

③对数据库进行物理设计,即确定数据库的物理结构。

④其他设计。

根据软件系统类型,还可能要进行代码设计、输入/输出格式设计、人机对话设计。

⑤编写详细设计说明书。

⑥评审:

评审处理过程的算法和数据库的物理结构。

7.结构化程序设计是一种典型的面向数据流的软件总体设计方法,它采用采用自顶向下、逐步求精的设计方法和单入口单出口的控制结构,且只包含顺序、选择和重复3种结构。

基本要点是:

①采用自顶向下、逐步求精的程序设计方法:

详细设计中某个模块内部处理过程仍然可以逐步求精,降低处理细节的复杂程度。

②使用3种基本控制结构(顺序、选择和重复,其共同点是单入口、单出口)构造程序:

∙      用顺序方式对过程分解,确定各部分的执行顺序。

∙      用选择方式对过程分解,确定某个部分的执行条件。

∙      用循环方式对过程分解,确定某个部分进行循环的开始和结束的条件。

∙      对于处理过程仍然模糊的部分反复使用以上分解方法,最终将所有细节确定下来。

③主程序员组的组织形式:

突出主程序员的领导,设计责任集中在少数人身上,有利于提高软件质量和软件生产率。

其组织形式是:

∙      一个主程序员:

负责全部技术活动。

∙      一个后备程序员:

协调、支持主程序员。

∙      一个程序管理员:

负责事务性工作,如收集、记录数据,文档资料管理等。

∙      一些专家(如通信专家、数据库专家)。

∙      其他技术人员。

8.详细描述处理过程常用3种工具:

①图形:

∙      结构化程序流程图是程序逻辑结构的描述工具。

∙      盒图(N-S图)描述常用的基本控制结构。

∙      问题分析图(简称PAD图)是一种算法描述工具。

∙      IPO图描述模块间的信息传递和模块内部的处理。

②表格:

∙      判定表是描述逻辑条件复杂的算法。

③语言:

过程设计语言(简称PDL)是一种用于描述模块算法设计和处理细节的语言。

(五)应用题答案

2.

           图4-5安全监控系统软件结构图

系统名:

安全监控系统

设计人:

模块名:

地图运行模块

日期:

模块编号:

 

上层调用模块:

地图处理

下层被调用模块:

摄像机报警处理门报警处理

文件名:

全局变量:

输入数据:

报警事件图标类型T警报标志G

输出数据:

报警事件个数N

 

处理:

IFN<=0THEN(拒绝报警事件处理)

ELSEIFT=1ANDG=1THEN(门事件浏览)

ELSEIFG=0(退出报警事件处理)

ELSE(执行摄像机报警处理)

ENDIF

ENDIF

ENDIF

注释:

           图4-6“地图处理”的IPO图

  

         图4-7安全监控系统软件的H图

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 政史地

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1