软件工程(本)阶段练习三
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件工程(本)阶段练习三
华东理工大学网络教育学院
《软件工程(本)》阶段练习三
一、判断题(每题1分,共10分;正确打“√”,错误打“×”)
1、Jackson结构图只能描述数据结构,不能描述程序结构。
( ×)
2、HIPO图是由一张层次图和一组IPO图组成的。
( √)
3、源程序的文档化就是软件的文档化。
( ×)
4、问题分析图(PAD)是一种常用的详细设计描述工具。
( √)
5、Jackson方法是一种面向对象的软件设计方法。
( ×)
6、把一个软件系统划分成多个模块的目的是为了降低软件系统的复杂性。
( √)
7、耦合性是一个用来衡量模块内部各个元素彼此结合紧密程度的度量指标。
( ×)
8、将软件系统划分为模块时,应尽量做到高内聚低耦合,提高模块的独立性。
( √)
9、面向数据流的设计以需求分析阶段产生的数
据流图为基础,按一定的步骤将其映射为软件结构。
( √)
10、软件结构图是软件系统的模块层次图,它反映了整个系统的功能实现。
( √)
二、单项选择题(每空1分,本大题共30分)
1、在模块化软件设计中,划分程序模块通常遵循的基本原则是:使各模块间的耦合性
①;使各模块内部的内聚度②。
A、尽可能强
B、尽可能弱
C、适中
D、视情况而定
2、面向数据流的设计方法把数据流图(DFD)划分为变换型和③两大类,并提出了对应于这两类结构的分解方法。
A、控制型
B、处理型
C、事务型
D、功能型
3、模块化的目的是为了④。
A、增加内聚性
B、提高易读性
C、降低复杂性
D、减少耦合性
4、三种可能的模块耦合是:
⑤:例如一个模块直接引用另一个模块中的数据。
⑥:例如一个模块把控制另一个模块执行流程的逻辑量作为参数传递给另一个模块。
⑦:例如一个模块把一个数据量传递给另一个模块。
其中⑧的耦合性最强。
A、数据耦合
B、内容耦合
C、标记耦合
D、控制耦合
E、公共耦合
5、使用结构化分析(SA)方法时,可以得到____
⑨______,这种方法采用的基本手段是_____⑩______;使用面向数据流的设计方法(SD)时,可以得到__⑾___,并可以实现_______⑿______,而使用Jackson方法可以实现_______⒀_________。
A、程序流程图
B、具
体的语言程序
C、模块结构图及模块的功能说明
D、分
层DFD和DD
E、分解和抽象
F、分
解和综合
G、归纳推导 H、从数据结构导出程序结构
I、从数据流图导出模块结构图 J、从
模块结构导出数据结构
K、从模块结构导出程序结构
6、模块的内聚度用于衡量模块内部各成分之间彼此结合的紧密程度。
一组语句在程序的多处出现,为了节省内存空间把它们放在一个模块中,该模块的内聚度是___⒁____;将几个逻辑上相似的成分放在一个模块中,该模块的内聚度是___⒂____;模块中所有成分引用共同的数据,该模块的内聚度是___⒃____;模块内某成分的输出是另一些成分的输入,该模块的内聚度是___⒄___;模块中所有成分结合起来完成一项任务,该模块的内聚度是___⒅__。
A、功能性内聚
B、顺序性内聚
C、通信性内聚
D、过程性内聚
E、偶然性内聚
F、逻辑性内聚
7、在众多的软件设计方法中,结构化设计(SD)方法是最受欢迎的方法之一,这种方法可以同分析阶段的___⒆__以及编程阶段的___⒇___前后衔接;为了建立结构良好的软件系统,SD方法提出评价模块结构质量的两个具体标准是__(21)__;SD方法的最终目标是__(22)___,用于表示模块间调用关系的图称为__(23)___。
A、Jackson方法
B、结构化分析方法
C、块内联系和块间联系
D.清晰性和可读性 E、结构化程序设计方法 F、独立性和信息隐蔽性
G、SC图 H、块内联系大、块间联系小I、块内联系大、块间联系大
J、HIPO图 K、块内联系小、块间联系大
8、结构化设计方法在软件开发中用于__(24)___,它是一种面向__(25)___的设计方法。
该方法使用的图形工具是__(26)___,在图中用
矩形表示__(27)___。
若两矩形之间有直线相连,表示它们存在__(28)___关系。
A、概要设计
B、面向对象
C、面向
数据结构
D、详细设计
E、面向数据流
F、软件
结构图
G、PAD图 H、模块 I、数据
流
J、调用 K、程序流程图 L、需
求分析
9、结构化程序设计方法的基本要点是:__(29)___;__(30)___;主程序员组的组织形式。
A、使用详细设计工具
B、
采用自顶向下、逐步求精的程序设计方法
C、使用三种基本控制结构构造程序
D、
源程序文档化
三、填空题(每空1分,本大题共20分)
1、模块的内聚度用于衡量模块内部各成分之间彼此结合的紧密程度。
一组语句在程序的多处出现,为了节省内存空间把它们放在一个模块中,该模块的内聚度是__①___内聚;将几个逻辑上相似的成分放在一个模块中,该模块的内聚度是__②__内聚;模块中所有成分引用共同的数据,该模块的内聚度是___③__内聚;模块内某成分的输出是另一些成分的输入,该模块的内聚度是___④__内聚;模块中所有成分结合起来完成一项任务,该模块的内聚度是__⑤__内聚。
2、___⑥____和___⑦____是模块独立性的两个定性标准。
3、一个模块的___⑧____应在其___⑨____之内,且判定所在的模块应与受其影响的模块在层次上尽量靠近。
4、常用的软件设计方法有结构化设计(SD)方法、面向对象设计方法、Jackson方法等,其中___⑩____是一种面向数据结构的设计方法,它可根据___⑾____导出___⑿____。
5、软件结构的___⒀____、___⒁____、___⒂____和___⒃____应适当。
6、描述详细设计处理过程的三种常用图形工具是:___⒄____、___⒅____和___⒆____。
7、模块化是指解决一个复杂问题时自顶向下逐层把软件系统划分成___⒇____的过程。
四、简答题(每题2分,本大题共10分)
1、在面向对象软件开发中应建立哪三种分析模型?其作用分别是什么?
答:在面向对象软件开发中应建立对象模型、动态模型和功能模型,其中对象模型表示了静态的、结构化的系统数据性质,描述了系统的静态
结构;动态模型描述了系统的控制结构,表示了瞬时的、行为化的系统控制性质;功能模型描述了系统的所有计算。
2、结构化程序设计方法的基本要点是什么?答:结构化程序设计方法的基本要点是:采用自顶向下、逐步求精的程序设计方法;使用三种基本控制结构构造程序;主程序员组的组织形式。
3、什么是统一建模语言(UML)?其主要特点包括哪些?
答:统一建模语言(UML):是一种支持面向对象的统一建模语言,常用于建立软件系统的模型,适用于系统开发的不同阶段。
UML的主要特点是:统一了面向对象方法的基本概念、建模能力更强、独立于开发过程和提出了许多新概念。
4、什么是Rational统一过程(RUP)?
答:Rational统一过程是一个软件开发过程,它是一个将用户需求转换为软件系统所需要的活动的集合。
5、使用UML语言进行软件开发一般应建立哪些主要模型?这些模型各自又包括哪些主要图?答:使用UML语言进行软件开发一般应建立用例
模型、静态模型、动态模型和实现模型,其中用例模型只包括用例图;静态模型包括类图、对象图和包图三种;动态模型包括状态图、活动图、顺序图和协作图四种;实现模型包括构件图和配置图二种。
五、根据下述描述建立对象图(10分)。
某公司有若干个部门,根据部门名能唯一地确定一个部门;每个部门由一名经理管理,有的经理可能并不管理任何一个部门;每个部门生产多种产品,每种产品仅由一个部门生产;该公司有许多名员工为之工作,员工又进一步划分为经理和工人两类;每名工人可参加多个工程项目,每个项目需要多名工人;每位经理可以主持多个项目,每个项目仅有一名经理主持。
六、画出下面伪码程序的程序流程图和PAD图(10分)。
输入向量A
设置maximum为向量A的第一个元素
FOR 向量A的第二个元素到最后一个元素 DO IF当前元素的值大于maximum 的值
将当前元素的值赋予maximum
ENDIF
ENDDO
输出maxmum
七、下图是一个统计文件中单词数目的DFD图,试用变换分析法或事务分析法导出其初始SC图(10分)。
要求:
⑴分析DFD图,识别出其结构(在原图上
进行标注);。