skystar 发表于 2020-3-4 16:04:29

福建师范大学2020年2月课程考试《软件工程》作业考核试题(答案)


软件工程期末试卷A
一、选择题(48分)
1.      (5分)从供选择的答案中选出正确的答案填入下列叙述中的(  ) 内。# q9 W" s. w6 D1 T
  模块内聚性用于衡量模块内部各成份之间彼此结合的紧密程度。" o2 v6 Y7 DG! z0 ~( Q
(1)一组语句在程序中多处出现,为了节省内存空间把这些语句放在一个模块中,该模块的内聚性是( A )的。
(2)将几个逻辑上相似的成分放在同一个模块中,通过模块入口处的一个判断决定执行哪一个功能。该模块的内聚性是( B )的。
(3)模块中所有成分引用共同的数据,该模块的内聚性是( C )的。
(4) 模块内的某成份的输出是另一些成分的输入,该模块的内聚性是( D )的。
(5)模块中所有成份结合起来完全一项任务,该模块的内聚性是( E )的。它具有简明的外部界面,由它构成的软件易于理解、测试和维护。+ W! f, h% }4 s+ e( s
  供选择的答案:0 Y4 |; n- v+ U; d# X" g
A~E:      ①功能内聚                ②信息内聚                ③通信内聚                ④过程内聚
⑤巧合内聚                ⑥时间内聚                ⑦逻辑内聚2 W( v. V" |3 y( b
  , _- U' r0 A8 P% _9 c5 V; w: g& D
2.      (5分)从供选择的答案中选出应该填入下列关于软件设计的叙述的( )内的正确答案。% I: d, \3 F7 ^/ a) s+ e3 `3 n% ~
在众多的设计方法中,SD方法是最受人注意的,也是最广泛应用的一种,这种方法可以同分析阶段的( A )方法及编程阶段的( B )方法前后衔接,SD方法是考虑如何建立一个结构良好的程序结构,它提出了评价模块结构质量的两个具体标准——块间联系和块内联系。SD方法的最终目标是( C ),用于表示模块间调用关系的图叫( D )。- ]! D+ ^* Y4 z; A, \, E) |- Q& E" q
另一种比较著名的设计方法是以信息隐蔽为原则划分模块,这种方法叫( E )方法。2 p) x+ A. g) o5 o: z
  供选择的答案:
  A~B:①Jackson  ②SA  ③SC  ④Parnas  ⑤SP1 N; X) S$ a7 V# Q5 `) H
  C:      ①块间联系大,块内联系大  ②块间联系大,块内联系小
③块间联系小,块内联系大  ④块间联系小,块内联系小2 H, I' v$ k: N$ Y$ o! }
  D:      ①PAD          ②HCP          ③SC                ④SADT                ⑤HIPO                ⑥NS8 GD# E. @- W/ T( L5 @6 {
  E:                ①Jackson      ②Parnas      ③Turing      ④Wirth                ⑤Dijkstra
  0 Y. A( u. \8 q0 T, p
3.      (5分)从供选择的答案中选出应该填入下列关于软件设计的叙述的( )内的正确答案。" s, }8 {6 T; t% ]8 l5 ?& y
在完成软件概要设计,并编写出相关文档之后,应当组织对概要设计工作的评审。评审的内容包括:7 M9 u, h, n. s6 D1 Q, d" j
分析该软件的系统结构、子系统结构,确认该软件设计是否覆盖了所有已确定的软件需求,软件每一成分是否可( A )到某一项需求。分析软件各部分之间的联系,确认该软件的内部接口与外部接口是否已经明确定义。模块是否满足( B )和( C )的要求。模块( D )是否在其( E )之内。
  供选择的答案! If3 t5 h& u1 u& j
  A:      ①覆盖               ② 演化      ③ 追溯      ④等同                  ⑤连接
  B:      ①多功能         ②高内聚      ③高耦合      ④高效率          ⑤可读性
  C:      ①多入口         ②低内聚      ③低耦合      ④低复杂度          ⑤低强度
  D~E:①作用范围         ②高内聚      ③低内聚      ④取值范围          ⑤控制范围

4.      (2分)类库是一种预先定义的程序库,它以程序模块的形式,按照( ① )把一组类的定义和实现组织在一起:( ② )对类库的建设提供了强有力的支持。; c( ~) @5 K7 i8 P' K
①      A.类的功能                  B.类层次结构
C.实例之间的调用关系      D.类的类型. O+ `8 K4 p1 f
②      A.引用          B.重置       C.类属类      D.封装: n1 r0 o: v3 y2 n4 N

5.      (4分)在UML中,对象行为是通过交互来实现的,是对象间为完成某一目的而进行的一系列消息交换。消息序列可用两种图来表示,强调消息时间次序的图称之为( ① ),该图的特点是( ② ),强调参加交互的对象的组织图称之为( ③ ),这两种图是( ④ )。
①      A.活动图(activity diagram)                        B.状态图(statechart diagram)
C.序列图(sequence diagram)                D.协作图(collaboration diagram)
 ②      A.有生命线及控制焦点,重点在消息的时间顺序上
B.有路径有顺序号,为了一个消息的时间顺序给消息加数字前缀
C.是对系统、子系统或类的行为建模. M; E! b+ }+ G2 N4 ~) k4 Y1 Y% S# \
D.本质上是一个流程图,显示从活动到活动的信息流
 ③      A.活动图(activity diagram)                     B.状态图(statechart diagram)
C.序列图(sequence diagram)                        D.协作图(collaboration diagram)2 U, o/ s2 E* t5 [: _& i" `' N; @
 ④      A.同构的,所以可以互相转换
B.异构的,所以不可以互相转换
C.强调对象行为的事件顺序,常用于对反应式系统建模
D.专注于系统的动态视图,状态无法确定,所以不可以互相转换
; D+ q0 T2 l3 F8 Q* q9 c5 P' C9 l
6.      (6分)从供选择的答案中选出应该填入下面 ( ) 中的正确答案。: t, i7 q' J/ V8 Z2 }0 Y2 j
A. 允许用户建立、修改、存储正文的计算机程序是 ( )。- k{. W- p$ I) f
① BOOtstrap ② Editor ③ Loader ④ Textformatter

B. 程序语言的编译系统和解释系统相比,从用户程序的运行效率来看 ( )。( ^; q" J5 g* a8 h- }
  ① 前者运行效率高      ② 两者大致相同. d( X3 _6 V; |2 ]+ e5 H
③ 后者运行效率高      ④ 不能确定

C. FORTRAN语言的源程序是 ( ) 结构。
  ① 块状         ② 分程序嵌套 0 U! ]. W. {( ]& Z
③ 既是块状,又是嵌套  ④ 既不是块状,又不是嵌套的

D. 国际上最广泛使用的商用及行政管理语言是 ( )。1 ^6 [& g- z8 u1 l9 z) s. Y, ^+ Y
① COBOL   ② BASIC   ③ FORTRAN   ④ PL/1! U% c% D) a8 A2 |, m
# E+ g6 ?' ?' c3 V5 ^% R" }
E. 国际上最流行的数值计算的程序设计语言是 ( )。
① BASIC   ② ALGOL   ③ FORTRAN   ④ C

F. 美国国防部主持开发了高级程序设计语言Ada,在它研制开始时,经反复比较,确定以高级语言 ( ) 作为Ada研究的出发点。6 e" Z: L2 p) Z/ v: R) h" H7 S; r
① LISP    ② ALGOL   ③ ALGOL68   ④ PL/1! O" T: v" H: a; c4 |

7.      (6分)测试过程需要三类输入.( A )、( B )和( C )。请选择正确的答案填入下图中以完成测试信息处理的全过程。
" U. _M3 ?0 L5 U6 |
  
供选择的答案:( `/ e4 O3 x, O! ru2 O! o
  A~C. ① 接口选择   ② 软件配置   ③ 硬件配置2 j: V& I- t7 j( Q% U3 @Q
     ④ 测试配置   ⑤ 测试环境   ⑥ 测试工具
D~F. ① 排错 ② 可靠性分析 ③ 结果分析 ④ 数据分类3 C+ K: L. x, ~$ J' l8 t& H5 N% L

8.      (5分)请从供选择的答案中选出应填入下列( )中的字句。/ X- S$ m) N, l5 s
程序的三种基本控制结构是( A )。它们的共同点是( B )。结构化程序设计的一种基本方法是( C )。软件测试的目的是( D )。软件调试的目的是( E )。4 S1 i! |) I8 A0 o
; A$ x, u$ Y5 i/ N2 m1 R: A2 S
供选择的答案:3 I, i5 K" n2 C7 ^
  A.① 过程,子程序,分程序   ② 顺序,条件,循环
   ③ 递归,堆栈,队列     ④ 调用,返回,转移
  B.① 不能嵌套使用       ② 只能用来写简单的程序
   ③ 已经用硬件实现      ④ 只有一个入口和一个出口( Z: M# R8 Q! }7 A0 O
  C.① 筛选法  ② 递归法  ③ 归纳法  ④ 逐步求精法
  D.① 证明程序中没有错误    ② 发现程序中的错误
   ③ 测量程序的动态特性    ④ 检查程序中的语法错误
  E.① 找出错误所在并改正之   ② 排除存在错误的可能性
   ③ 对错误性质进行分类    ④ 统计出错的次数
+ m" E8 X* S1 U* j
9.      (5分)从供选择的答案中选出应该填入下列关于软件测试的叙述的( )内的正确答案。
  软件测试中常用的静态分析方法是( A )和( B )。( B )用于检查模块或子程序间的调用是否正确。分析方法(白盒方法)中常用的方法是( C )方法。非分析方法(黑盒方法)中常用的方法是( D )方法和( E )方法。( E )方法根据输出对输入的依赖关系设计测试用例。
  供选择的答案:0 B. j8 w1 l% H6 H2 b9 r
  A~B. ① 引用分析   ② 算法分析   ③ 可靠性分析
      ④ 效率分析   ⑤ 接口分析   ⑥ 操作分析
  C~E. ① 路径测试   ② 等价类    ③ 因果图 & `( j$ C: D* S' z
     ④ 归纳测试   ⑤ 综合测试   ⑥ 追踪
     ⑦ 深度优先   ⑧ 调试     ⑨ 相对图


10.      (5分)软件可移植性是用来衡量软件的( A )的重要尺度之一。为了提高软件的可移植性,应注意提高软件的( B )。采用( C )有助于提高( B )。为了提高可移植性,还应( D )。使用( E )语言开发的系统软件具有较好的可移植性。! |% o( u8 I( jz
  供选择的答案:; Y8 }2 E2 N! a% {' L4 [. A
  A. ① 通用性  ② 效率  ③ 质量  ④ 人机界面. T. K7 B. r- ]9 e! J7 C
  B. ① 使用的方便性    ② 简洁性
    ③ 可靠性       ④ 设备独立性
  C. ① 优化算法      ② 专用设备 - H9 Y" A! c7 J: \9 S) L* z' ~, ^) U6 A
    ③ 表格驱动方式    ④ 树型文件目录
  D. ① 有完备的文件资料  ② 选择好的宿主计算机 " M; z$ _$ z. _: |' R8 d+ n
    ③ 减少输入输出次数  ④ 选择好的操作系统
E. ① COBOL  ② APL   ③ C    ④ SQL
# N0 `K7 n) B5 i% t9 h5 G


! a6 }# i+ P9 \6 }; Y5 O
, `3 Su% B6 ?1 F' v- ^1 ~, |
二、解答题(52分)! M9 b5 h6 S5 SS
1.      (10分)写出“家庭保安系统”中“门窗监测”的场景。
2.      (13分)什么是变换流和事务流?) u; P' O( m* Q7 c5 U, x
3.      (20分)面向数据流的体系结构设计时,如何运用变换映射进行转换?3 i: [6 i5 it. E2 P2 T
4.      (9分)面向数据流设计中的启发式设计策略是什么?
页: [1]
查看完整版本: 福建师范大学2020年2月课程考试《软件工程》作业考核试题(答案)