2024软件工程期末试卷A
一、选择题(51分)
1. (8分)从供选择的答案中选出正确的答案填入下面的( )中。
块间联系和块内联系是评价程序模块结构质量的重要标准。联系的方式、共用信息的作用、共用信息的数量和接口的( A )等因素决定了块间联系的大小。在块内联系中,( B )的块内联系最强。
SD方法的总的原则是使每个模块执行( C )功能,模块间传送( D )参数,模块通过( E )语句调用其他模块,而且模块间传送的参数应尽量( F )。
此外,SD方法还提出了判定的作用范围和模块的控制范围等概念。SD方法认为,( G )应该是( H )的子集。 供选择的答案: A: B: C: D: E: F:
① 友好性 ② 健壮性 ③ 简单性 ④ 安全性 ① 巧合内聚 ② 功能内聚 ③ 通信内聚 ④ 信息内聚 ① 一个 ② 多个
① 数据型 ② 控制型 ③ 混合型
① 直接引用 ② 标准调用 ③ 中断 ④ 宏调用 ① 少 ② 多
② 控制范围
G~H:① 作用范围
2. (5分)软件需求分析的任务不应包括( A )。进行需求分析可使用多种工
具,但( B )是不适用的。在需求分析中,分析员要从用户那里解决的最重要的问题是( C )。需求规格说明书的内容不应当包括( D )。该文档在软件开发中具有重要的作用,但其作用不应当包括( E )。 供选择的答案:
A:①问题分析 ②信息域分析 ③结构化程序设计 B:①数据流图 ②判定表
③PAD图
④确定逻辑模型 ④数据词典
C:①要让软件做什么 ②要给该软件提供哪些信息
③要求软件工作效率如何 ④要让软件具有什么样的结构
D:①对重要功能的描述 ②对算法的详细过程性描述
③软件确认准则 ④软件的性能
E:①软件设计的依据
②用户和开发人员对软件要“做什么”的共同理解 ③软件验收的依据 ④软件可行性分析的依据
3. (5分)UML是一种面向对象的统一建模语言。它包含10种图,其中,用
例图展示了外部actor与系统所提供的用例之间的连接,UML中的外部 actor指( ① ),用例可以用( ② )图来描述。状态图指明了对象所有可能的状态以及状态间的迁移 (transition)。如果一个并发的状态由 n 个并发的子状态图组成,那么,该并发状态在某时刻的状态由( ③ )个子状态图中各取一个状态组合而成。协作图描述了协作的( ④ )之间的交互和链接(1ink),它画成( ⑤ )图的形式。
① A.人员 B.单位 C.人员或单位 D.人员或外部系统 ② A.类 B.状态 C.活动 D.协作
③ A.每一 B.任意一 C.任意二 D.任意 m (m ≤ n) ④ A.对象 B.类 C.用例 D.状态 ⑤ A.对象 B.类 C.用例 D.状态
4. (5分)软件详细设计工具可分为三类,即:图示工具、设计语言和表格工
具。图示工具中,( A )简单而应用广泛、( B )表示法中,每一个处理过程用一个盒子表示,盒子可以嵌套。( C )可以纵横延伸,图形的空间效果好。
( D ) 是一种设计和描述程序的语言,它是一种面向( E )的语言。 供选择的答案: A~C: ① NS图 D: E:
5. (4分)在使用UML建模时,若需要描述跨越多个用例的单个对象的行为,
使用( ① )是最为合适的。UML结构包括了基本构造块.公共机制和( ② )。UML 中提供了扩展机制,其中,构造型(Stereotype)扩展了UML的( ③ ),
① C
② 流程图 ② PDL ② 机器
③ HIPO图 ③ RPOLOG ③ 数据结构
④ PAD图 ④ PASCAL ④ 对象
① 人
约束(Constraint)扩展了UML( ④ )。
① A.协作图(Collaboration Diagram) B.序列图(Sequence Diagram)
C.活动图(Activity Diagram) D.状态图(Statechart Diagram)
② A.把这些构造块放在一起的规则
B.图形或文字修饰
C.类与对象的划分以及接口与实现的分离 D.描述系统细节的规格说明
③ A.构造块的特性,允许创建详述元素的新信息
B.构造块的语义,允许增加新的规则或修改现有的规则 C.语义,允许创建新的构造块 D.词汇,允许创建新的构造块
④ A.构造块的特性,允许创建详述元素的新信息
B.构造块的语义,允许增加新的规则或修改现有的规则 C.语义,允许创建新的构造块 D.词汇,允许创建新的构造块
6. (5分)下面有关软件维护的叙述有些是不准确的,请列举5个正确的叙述。 供选择的答案:(①③⑤⑦⑧)
① 要维护一个软件,必须先理解这个软件。 ② 阅读别人写的程序并不困难。
③ 如果文档不齐全也可以维护一个软件。 ④ 谁写的软件就得由谁来维护这个软件。 ⑤ 设计软件时就应考虑到将来的可修改性。 ⑥ 维护软件时一件很吸引人的创造性工作。 ⑦ 维护软件就是改正软件中的错误。
⑧ 维护好一个软件是一件很难的事情。
7. (4分)从供选择的答案中选出应填入下列( )中的字句。