资源描述
华东理工大学网络教育学院
《软件工程(本)》阶段练习三
一、判断题(每题1分,共10分;对的打“√”,错误打“×”)
1、Jackson结构图只能描述数据结构,不能描述程序结构。( × )
2、HIPO图是由一张层次图和一组IPO图组成的。( √ )
3、源程序的文档化就是软件的文档化。( × )
4、问题分析图(PAD)是一种常用的具体设计描述工具。( √ )
5、Jackson方法是一种面向对象的软件设计方法。( × )
6、把一个软件系统划提成多个模块的目的是为了减少软件系统的复杂性。( √ )
7、耦合性是一个用来衡量模块内部各个元素彼此结合紧密限度的度量指标。( × )
8、将软件系统划分为模块时,应尽量做到高内聚低耦合,提高模块的独立性。( √ )
9、面向数据流的设计以需求分析阶段产生的数据流图为基础,按一定的环节将其映射为软件结构。( √ )
10、软件结构图是软件系统的模块层次图,它反映了整个系统的功能实现。( √ )
二、单项选择题(每空1分,本大题共30分)
①
②
③
④
⑤
⑥
⑦
⑧
⑨
⑩
B
A
C
C
B
D
A
B
D
E
⑾
⑿
⒀
⒁
⒂
⒃
⒄
⒅
⒆
⒇
C
I
H
E
F
C
B
A
B
E
(21)
(22)
(23)
(24)
(25)
(26)
(27)
(28)
(29)
(30)
C
H
G
A
E
F
H
J
B
C
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分)
①
②
③
④
⑤
⑥
⑦
⑧
⑨
⑩
偶尔性内聚
逻辑性内聚
通信性内聚
顺序性内聚
功能性内聚
内聚性
耦合性
作用范围
控制范围
Jackson方法
⑾
⑿
⒀
⒁
⒂
⒃
⒄
⒅
⒆
⒇
数据结构
程序结构
深度
宽度
扇入
扇出
程序流程图
盒图
问题分析图
若干个模块
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
MAX=A(1)
I=2
MAX=A(I)
I<N?
MAX<A(I)?
T
F
T
F
I=I+1
MAX=A(1)
MAX<A(I)
I=2,N
MAX=A(I)
七、下图是一个记录文献中单词数目的DFD图,试用变换分析法或事务分析法导出其初始SC图(10分)。
规定:
⑴ 分析DFD图,辨认出其结构(在原图上进行标注);
希望得到的计数
显示单词计数
格式化单词计数
记录单词数
验证文献名
读文献名
有效文献名
文献名
文献名
格式化单词计数
⑵ 给出所得到的SC图,并进行必要的说明。
记录单词系统
读有效文献名
记录单词数
解决输出数据
验证文献名
读文献名
格式化单词计数
显示单词计数
展开阅读全文