奥鹏作业答案-谋学网-专业的奥鹏在线作业答案辅导网【官网】

 找回密码
 会员注册

微信登录,扫一扫

手机号码,快捷登录

VIP会员,3年作业免费下 !奥鹏作业,奥鹏毕业论文检测新手作业下载教程,充值问题没有找到答案,请在此处留言!
2022年5月最新全国统考资料投诉建议,加盟合作!点击这里给我发消息 点击这里给我发消息
奥鹏课程积分软件(2021年最新)
查看: 1634|回复: 0

福建师范大学14春学期课程考试《软件工程》作业考核试题

[复制链接]
发表于 2014-8-10 16:41:42 | 显示全部楼层 |阅读模式
谋学网
福建师范大学网络学院
& E7 c3 K8 _  [+ ? 3 v7 W+ K; _9 p' P5 B; |0 H6 {
《软件工程》期末考试 - q% g6 A' `, A' X+ d9 ^: K
一、选择6 [$ i# `# A* l: B
1.        软件是计算机系统中与硬件相互依存的另一部分,它是包括( A )、( B )及( C )的完整集合。其中,( A )是按事先设计的功能和性能要求执行的指令序列。( B )是使程序能够正确操纵信息的数据结构。( C )是与程序开发、维护和使用有关的图文材料。(3分)
8 Z. k( w& H' h3 i- Q  供选择的资料:
3 W5 n' }( Q+ ?" F: W( Z  A~C:① 软件  ② 程序  ③ 代码  ④ 硬件" w6 ?% {6 g+ f. B1 R
     ⑤ 文档  ⑥ 外设  ⑦ 数据  ⑧ 图表
- F! Z- p) o: H' W; Z7 ]+ y0 H/ M$ V) \; d2 L) U9 ^- h
2.        开发软件时对提高软件开发人员工作效率至关重要的是( A )。软件工程中描述生存周期的瀑布模型一般包括计划、( B )、设计、编码、测试、维护等几个阶段,其中设计阶段在管理上又可以依次分成( C )和( D )两步。 (4分)( l$ H+ l; B) W0 Z0 |! m" I" M8 ]! o
  供选择的资料:
0 g- M+ _) l3 x# F& T3 s  A.① 程序开发环境  ② 操作系统的资源管理功能5 |; t% G4 B1 L0 K
   ③ 程序人员数量  ④ 计算机的并行处理能力
. s2 V+ ^; ?+ R' W' n( w8 q& J  B.① 需求分析  ② 需求调查* L, b# r& w5 z8 Y
   ③ 可行性分析 ④ 问题定义, A, r; s6 o; w7 H4 X
  C、D. ① 方案设计  ② 代码设计  ③ 概要设计1 {& h9 V- }% Y, o7 T) z
     ④ 数据设计  ⑤ 运行设计  ⑥ 详细设计 6 d2 t+ x. m7 `7 ]1 j1 P
     ⑦ 故障处理设计  ⑧ 软件体系结构设计- A, k- ]- Y* A$ w7 `
1 t. [  ]( q% P  G8 t5 S! `0 O9 M
3.        从供选择的资料中选出适当字句填入下列关于软件发展过程的叙述中的( )内。(7分)
6 }( I- E2 j$ a  有人将软件的发展过程划分为4个阶段:
' {6 e: s7 P0 z. D1 n6 o" Q* ~  第一阶段(1950~20世纪50年代末)称为“程序设计的原始时期”,这时既没有( A ),也没有( B ),程序员只能用机器指令编写程序。, V' q* ?4 e$ D% m# }( z
  第二阶段(20世纪50年代末~20世纪60年代末)称为“基本软件期”。出现了( A ),并逐渐普及。随着( B )的发展,编译技术也有较大的发展。
1 v, P( z( s6 ~% M' ?* q5 p  第三阶段(20世纪60年代末~20世纪70年代中期)称为“程序设计方法时代”。这一时期,与硬件费用下降相反,软件开发费急剧上升。人们提出了( C )和( D )等程序设计方法,设法降低软件的开发费用。
% O( l3 f. c4 z  第四阶段(20世纪70年代中期~现在)称为“软件工程时期”。软件开发技术不再仅仅是程序设计技术,而是包括了与软件开发的各个阶段,如( E )、( F )、编码、单元测试、综合测试、( G )及其整体有关的各种管理技术。3 C, f* H, n: C  d. v& ~4 E
  供选择的资料:
9 V3 ?, T2 I# R, ~9 l, c" Q. r  A~D:① 汇编语言 ② 操作系统    ③ 虚拟存储器概念
8 c! `6 A$ l9 G0 a, {: X     ④ 高级语言 ⑤ 结构式程序设计 ⑥ 数据库概念( b9 z. L4 K4 Q* b! _/ ?
     ⑦ 固件   ⑧ 模块化程序设计; ?: U% N& H  d# Y/ T) W
  E~G:① 使用和维护 ② 兼容性的确认 ③ 完整性的确认1 k# f, p' }. n* [
     ④ 设计    ⑤ 需求定义   ⑥ 图象处理
+ m& y4 k# x2 ]2 f4 F, S
$ x& r% m1 ?! v9 v1 z$ \8 b( n4.        软件需求分析阶段的工作,可以分为以下4个方面:对问题的识别、分析与综合、编写需求分析文档以及( )。  (1分)
  R; h% t  A+ x6 o* n      A.总结  ! Q* H  L2 l; s& J0 C% }+ D/ p
      B.阶段性报告  ) t( j3 D* S* H, {5 l6 _9 M
      C.需求分析评审  3 Z) U+ E7 q% k7 h! x# N: b& N- D: E
      D.以上资料都不正确  0 }9 c0 Q, j" C! Z
  
+ Y' F( o* i( r) W5.        在结构化分析方法中,用以表达系统内数据的运动情况的工具有( )。  (1分)# F  O$ \% i' F4 ~. Z
      A.数据流图  7 ^( p4 S: b- {
      B.数据词典  
0 a& ^0 o- h2 H1 \9 R9 W, K      C.结构化英语  8 ]6 T  ^; ^  |4 b* _& N* H
      D.判定表与判定树  9 t$ [9 R& H8 h/ m( M2 K( G* e$ d

9 T/ ?' y, r5 g6 _6.        软件需求分析的任务不应包括( ① )。进行需求分析可使用多种工具,但( ② )是不适用的。在需求分析中,分析员要从用户那里解决的最重要的问题是( ③ )。需求规格说明书的内容不应当包括( ④ )。该文档在软件开发中具有重要的作用,但其作用不应当包括( ⑤ )。(5分)
( E  S3 _; n6 I) f) o. I' y1 O   ①
! w# M8 c) J6 Z3 n      A.问题分析  : K" W3 j# i& {/ m3 K
      B.信息域分析  
+ ?& T" C. i1 K) c  U      C.结构化程序设计  
" W  I/ a' y) t) c      D.确定逻辑模型  
* a, ^6 o% k! k9 u) m   ②  ( J5 x  W& x7 u( k
      A.数据流图  
, ~% z5 }5 E/ D; d1 x5 p2 B      B.判定表  
8 r) B- G* {3 ?* r4 W2 k: O      C.PAD图  
7 S% P5 ~) @( l' G      D.数据词典  * C3 P2 K! n% Q/ m9 s
   ③  
4 E6 `( U/ K* S. S6 e& U' f* }9 H      A.要让软件做什么  1 s" S3 c! E" G7 ]7 B' I- m/ V
      B.要给该软件提供哪些信息  
* e& T' F4 v! E9 L      C.要求软件工作效率如何  4 s" J4 {  B6 a2 p
      D.要让软件具有什么样的结构  
, o/ p4 L' {3 n2 H5 @$ n! s   ④  & r) G; y) R9 G4 A% k( Y  y8 r
      A.对重要功能的描述  
% a! n5 ]& i! S      B.对算法的详细过程性描述  ( M: R, R# J3 M; w% K
      C.软件确认准则  
8 ?" _6 s- d8 |+ K      D.软件的性能  
8 K( n2 H( I3 n+ j% Y! _2 v   ⑤  
+ }( E& r9 b  ~8 v5 ^$ o1 n! x( Z$ _      A.软件设计的依据  $ ]0 x) G# F1 F$ K% @; W4 S' h
      B.用户和开发人员对软件要“做什么”的共同理解    A& d% q" T; |: L5 K* c
      C.软件验收的依据  5 w. p7 J$ A5 ?
      D.软件可行性分析的依据  
8 a; e' d* o+ g* Y3 k  w, o  
' j% j" h; b8 M8 v3 ]3 V7.        原型化方法是用户和软件开发人员之间进行的一种交互过程,适用于( ① )系统。它从用户界面的开发入手,首先形成( ② ),用户( ③ ),并就( ④ )提出意见,它是一种( ⑤ )型的设计过程。(5分)* q5 p* \# k7 G3 ~
   ①  
: P$ l+ @% O8 o- Z. t# o      A.需求不确定性高的  + `) I) E/ S8 G  F
      B.需求确定的  
- R6 N+ p( J# E& p! d      C.管理信息    [  A3 H5 g& l7 L8 }0 i
      D.决策支持  
2 B$ j! ]) C4 K* C   ②  
1 T5 j2 B7 k) k) I, Q      A.用户界面使用手册  
4 r+ C  I5 ^/ }3 K7 Y      B.用户界面需求分析说明书  ! ]/ p6 q- s/ j6 q+ Z; Q
      C.系统界面原型  
( h# ]: T) H2 f/ _, k+ L      D.完善的用户界面  ; v4 p6 \- X! q$ s+ a0 \' ?' Z
   ③  
% Z- y! T) z1 |4 H0 ?) E      A.改进用户界面的设计  " {" F* x1 d$ Y" ~/ l- v
      B.阅读文档资料  3 f5 Y3 y" Q; Q/ ^$ W
      C.模拟用户界面的运行  
2 Q, B4 W  x, K      D.运行用户界面原型  4 l* U/ H4 Y' H: Y  E  A
   ④  * Y+ f8 q+ ]$ m0 t
      A.同意什么和不同意什么  ' ]7 _* V1 i1 f0 L- Q! {$ ?; w
      B.使用和不使用哪一种编程语言  5 U% Q6 A/ |# p/ M' a! j0 j
      C.程序的结构  ; L# V1 s. V5 N. j
      D.执行速度是否满足要求  ) g' M' i, x5 ^; _; s
   ⑤  + E8 e: V  ^+ u& }8 C2 s# m4 |# R0 K
      A.自外向内  
, @7 p9 Z2 Z: i/ X3 `5 a6 p      B.自顶向下  - r  @5 R2 F6 m% n/ m
      C.自内向外  
3 @/ E. e  p: _9 h5 @" `      D.自底向上  
, ^& I8 z4 L! \" `7 j  - _, J9 ~# N# Y/ h" Y3 |- F
8.        在结构化分析方法中用状态―迁移图表达系统或对象的行为。在状态―迁移图中,由一个状态和一个事件所决定的下一状态可能会有( )个。(1分)0 i; L  g7 o# t" u& n+ L

! w9 |% I5 ]: v. |     A.1个
1 t' Q7 {8 W, I. A& c5 F8 D/ A     B.2个
0 F1 q" M* S0 Z5 D( L4 U     C.多个 ' i2 s6 J0 N0 Z8 E  F4 o
     D.不确定 , }3 a1 ?' ^- E* D( N4 ]9 r
+ v1 I7 `* o% \; f  O
9.        在结构化分析方法中用实体—关系图表达系统中的对象及其关系。在实体―关系图中,表达对象的实例之间的关联有三种类型:( )。(1分)2 g( J7 i4 X. O) \- M0 u$ O1 U

, d5 Q& b$ w/ S9 N5 z     A.多对一联系 5 V. v( J1 n7 z$ Z3 Y' i3 k( k9 K
     B.一对一联系
5 n2 g3 s: Y3 E0 Y" R& b5 L+ U" \" u     C.一对多联系
# Q8 s9 X' l( M( |' o) _     D.多对多联系7 f% S/ Y% R/ ^- p5 q
10.对象是面向对象范型的( A )。每个对象可用它自己的一组( B )和它可以执行的一组( C )来表征。应用执行对象的( C )可以改变该对象的( B )。它的应用必须通过( D )的传递。可以认为,这种( D )的传递大致等价于过程性范型中的函数调用。某些语言提供了特殊功能,允许对象引用自己。若一个对象没有显式地被引用,则可让该对象( E )。
% W3 l( n* X( v( D3 J* f( O8 g, P  供选择的资料.
1 c, @. c$ e: Y; F6 Z/ G  A.① 基本单位 ② 最小单位 ③ 最大单位 ④ 语法单位. K% I% T- m/ A8 Y( A1 e  w
  B~C.① 行为 ② 功能 ③ 操作 ④ 数据 ⑤ 属性
) Z8 T8 F) K/ ~( j" A4 ~+ ~* A  D.① 接口 ② 消息 ③ 信息 ④ 操作 ⑤ 过程9 i# J$ T  g. N) y% @( I6 l
  E.① 撤消 ② 歇着 ③ 缺省 ④ 隐式引用 ⑤ 引用自己8 z- |8 [0 _( p

4 s! O; Z. y/ O$ I+ V! B
2 `- ]) q' e8 M, S% A11类常常被看做是一个抽象数据类型的实现,更合适的是把类看做是某种( A )的一个模型。事实上,类是单个的( B )语义单元。类的用户能够操纵的操作叫做类的( C )。类定义的其余部分给出数据定义和辅助功能定义,包括类的实现。
2 |5 V7 l/ A$ Z2 d0 N" S4 r0 ?  类的实现常常包括了其它类的实例,这些实例( D )被其它对象存取,包括同一个类的其它实例。类的实现可能还包括某些私有方法,实现它们的类可以使用,而其它任何对象都不能使用。- L9 w' G: s5 z- o$ k1 M# Z. b
  类,就它是一个数据值的聚合的意义上来看,与Pascal中的记录或C中的结构类似,但又有差别。类扩展了通常的记录语义,可提供各种级别的( E )。类不同于记录,因为它们包括了操作的定义,这些操作与类中声明的数据值有相同的地位。! Y5 I5 l' Y- K: q1 s3 `
  供选择的资料.# m$ _! [! `. r! E# d" I, R6 J$ g
  A.① 功能 ② 概念 ③ 结构 ④ 数据. H9 u! [' {: U2 ?
  B.① 语法 ② 词法 ③ 语义 ④ 上下文环境 ; E5 V& o$ T  R4 [, d) i2 {- j9 M
  C.① 界面 ② 操作 ③ 行为 ④ 活动
, l: Z( d* H* I) ?4 F% T  D.① 可自由地        ② 可有控制地 
9 N- l. ]; v* Q( l& r* F0 r   ③ 可通过继承       ④ 应受保护不5 d$ V2 c. ?% u/ _
  E.① 可移植性 ② 可重复性  ③ 可访问性  ④ 继承性
7 o0 U  ]2 C9 x7 U( X: s' W0 i: B' x  
5 Y6 m# H# X+ S/ C12由RumBaugh等人提出的一种面向对象方法叫做对象模型化技术(OMT),即三视点技术,它要求把分析时收集的信息建立在三个模型中。第一个模型是( A ),它的作用是描述系统的静态结构,包括构成系统的对象和类,它们的属性和操作,以及它们之间的联系。第二个模型是( B ),它描述系统的控制逻辑,主要涉及系统中各个对象和类的时序及变化状况。( B )包括两种图, 即( C )和( D )。( C )描述每一类对象的行为,( D )描述发生于系统执行过程中的某一特定场景。第三个模型是( E ),它着重于描述系统内部数据的传送与处理,它由多个数据流图组成。 ' b- W) v- N/ t. w
  供选择的资料.: ]8 g4 t3 W) v, O* Y$ b
  A,B,E.① 数据模型  ② 功能模型  ③ 行为模型 # y0 o$ p  `. v% t! N
      ④ 信息模型  ⑤ 原型    ⑥ 动态模型
- O4 |" B7 K0 S6 m5 H% ?: a* }      ⑦ 对象模型  ⑧ 逻辑模型  ⑨ 控制模型
, v9 I' c4 Z( a3 M" A, N! w      ⑩ 仿真模型
/ Q8 R6 t3 m8 H9 A: `0 S* J  C,D. ① 对象图   ② 概念模型图  ③ 状态迁移图
3 b. `7 `2 T4 F' [& R0 J     ④ 数据流程图 ⑤ 时序图    ⑥ 事件追踪图* `9 p0 ~0 m  ]- O. C2 h
     ⑦ 控制流程图 ⑧ 逻辑模拟图  ⑨ 仿真图& c; s+ ^8 H9 |/ Z, W5 i
     ⑩ 行为图8 @6 @5 r# j8 p9 t. I0 j
  
! H' L$ E4 j. I5 X# w/ a# b1.        在面向对象软件设计过程中,应按如下要求进行类的设计.只有类的共有界面的成员才能成为使用类的操作,这就是软件设计的( A )原则。当且仅当一个操作对类的实例的用户有用时,它才是类公共界面的一个成员,这是软件设计的( B )原则。由同属一个类的操作负担存取或加工类的数据,这是软件设计的( C )原则。两个类之间的交互应当仅涉及参数表,这是软件设计的( D )原则。每个派生类应该当做基类的特殊化来开发,而基类所具有的公共界面成为派生类的共有界面的一个子集,这是软件设计的( E )原则。
# F4 k; I  i# I) g  供选择的资料.8 w+ p! H0 s8 p% U) n: G4 W% ^
  A.① 过程抽象   ② 功能抽象   ③ 信息隐蔽 9 o$ s/ K* \' Z: S# V# n$ z
   ④ 共享性    ⑤ 连通性
7 ~0 b  }6 j' ~7 N, n6 M7 |* b  B.① 标准调用   ② 最小界面   ③ 高耦合 1 H, V, Q( o0 o7 o* t$ p
   ④ 高效率    ⑤ 可读性
' `$ d$ X- K( T2 D2 d; w  C.① 数据抽象   ② 低内聚    ③ 高内聚
3 `" F) L; l0 ~1 m, ]5 e" H( B. M   ④ 低复杂度   ⑤ 低强度
+ b3 _) j( G% x! ?/ ^4 d  D.① 显式信息传递 ② 高内聚    ③ 低内聚
$ A' I; a: h$ f0 d9 K   ④ 相互操作性  ⑤ 连接性 8 u  @$ X; i, G* }2 @1 a) h" E9 s
  E.① 动态联编   ② 异质表    ③ 信息隐蔽
$ C$ K! H+ S) E& L   ④ 多态性    ⑤ 继承性
7 ?7 q+ C& F2 c4 I  
1 G8 U5 e8 p" z  v5 O% C9 \+ Q2.        从下列有关系统结构图的叙述中选出正确的叙述。
) h8 `! K* h: d/ u8 w  (1) 系统结构图中反映的是程序中数据流的情况。( M% c3 k5 F, k
  (2) 系统结构图是精确表达程序结构的图形表示法。因此,有时也可将系统结构当作程序流程图使用。8 w( L- v$ X5 ^
  (3) 一个模块的多个下属模块在系统结构图中所处的左右位置是无关紧要的。
( _2 n1 d  S+ d+ Q* o7 B  (4) 在系统结构图中,上级模块与其下属模块之间的调用关系用有向线段表示。这时,使用斜的线段和水平、垂直的线段具有相同的含义。1 C4 V( @/ c9 A. ^9 b; l8 [8 `6 o% Z
  9 @& `+ M6 F3 ~4 t6 w
3.        软件的开发工作经过需求分析阶段,进入( A )以后,就开始着手解决“怎么做”的问题。常用的软件设计方法有( B )、( C )、( D )和( E )等方法。, v* K# X4 W- c
  供选择的资料:9 L: K6 q$ U# _4 e+ U) y
  A~B. ① 程序设计  ② 设计阶段  ③ 总体设计
5 K' A; U) N. n; ^3 @     ④ 定义阶段  ⑤ SD方法   ⑥ SP方法1 Q1 Q* o: I) Y- S" @' N8 J
  C. ① Jackson方法 ② 瀑布法 ③ 快速原型法 ④ 回溯法7 E3 j- h! X6 N3 v) }6 _
  D~E. ① LCP(Wanier)方法 ② 递归法   ③ Parnas方法. p# t4 }* C# j# B& |# A
     ④ 自下而上修正    ⑤ 逐步求精法 ⑥ 检测校正法. e8 P! C& Z! _
  ( z6 o* L5 m9 V
4.        请将下述有关模块独立性的各种模块之间的耦合,按其耦合度从低到高排列起来。3 _. S, M0 A; d) \
  ① 内容耦合 ② 控制耦合 ③ 非直接耦合 ④ 标记耦合
! s  ?4 l7 j! s# a6 U  ⑤ 数据耦合 ⑥ 外部耦合 ⑦ 公共耦合
$ }6 g; s/ X, k7 d$ i9 G  
! J3 B# i! [0 {  l# X5.        请将下述有关模块独立性的各种模块内聚,按其内聚度(强度)从高到低排列起来。
: y* H1 k! q0 u* N  k  ① 巧合内聚 ② 时间内聚 ③ 功能内聚 ④ 通信内聚
  K8 {' \/ t/ v  ⑤ 逻辑内聚 ⑥ 信息内聚 ⑦ 过程内聚
8 {6 [  b/ \3 R  
: v1 s2 }# D- L3 [0 g1 k$ I5 w6.        软件需求分析的任务不应包括( A )。进行需求分析可使用多种工具,但( B )是不适用的。在需求分析中,分析员要从用户那里解决的最重要的问题是( C )。需求规格说明书的内容不应当包括( D )。该文档在软件开发中具有重要的作用,但其作用不应当包括( E )。8 p  o/ S+ S8 v* p" x; ^8 _2 q
  供选择的资料:- x! L, G, t( C
  A.① 问题分析      ② 信息域分析
7 D. T5 \+ r, f. Q: L   ③ 结构化程序设计   ④ 确定逻辑模型
/ I% |0 z2 b- r, x  I  B.① 数据流图  ② 判定表  ③ PAD图  ④ 数据词典
) D% D, ]) N+ n5 }0 q  C.① 要让软件做什么    ② 要给该软件提供哪些信息
9 O- X; @1 |5 S( _   ③ 要求软件工作效率如何 ④ 要让软件具有什么样的结构
% E& g: U! `# ]4 ]  D.① 对重要功能的描述   ② 对算法的详细过程性描述
/ c, r* r% z/ E4 ~3 s, N5 G' V! c   ③ 软件确认准则     ④ 软件的性能& b' ?9 b: {- }# z: g
  E.① 软件设计的依据 
% k0 A" u! e- Q& A   ② 用户和开发人员对软件要“做什么”的共同理解- N! e/ M7 X$ w; H2 [8 y
   ③ 软件验收的依据 ! J6 d1 R0 b+ [( w* t/ y: y* Z
   ④ 软件可行性分析的依据2 o0 ^) J# K# }
  
0 s) {8 F& O( ?& C5 b7.        从供选择的资料中选出正确的资料填入下列叙述中的(  ) 内。
5 G  R$ r7 W2 o1 N; K, g) @& T  模块内聚性用于衡量模块内部各成份之间彼此结合的紧密程度。3 K: l6 B0 j/ j% E/ g7 ^; c9 r
  (1) 一组语句在程序中多处出现,为了节省内存空间把这些语句放在一个模块中,该模块的内聚性是( A )的。2 e5 ~- G# M8 j6 t8 x
  (2) 将几个逻辑上相似的成分放在同一个模块中,通过模块入口处的一个判断决定执行哪一个功能。该模块的内聚性是( B )的。) G# [* P, Y, R6 E  L% m
  (3) 模块中所有成分引用共同的数据,该模块的内聚性是( C )的。4 L: B1 k2 P( S* e* P
  (4) 模块内的某成份的输出是另一些成分的输入,该模块的内聚性是( D )的。$ k  u" ^4 U% m4 {3 q
  (5) 模块中所有成份结合起来完全一项任务,该模块的内聚性是( E )的。它具有简明的外部界面,由它构成的软件易于理解、测试和维护。, @& ~7 [% c% R" W5 c
  供选择的资料:
0 A4 h5 J  V4 v5 E  A~E.① 功能内聚  ② 信息内聚  ③ 通信内聚 8 k7 U# I# Q+ V0 d+ X5 Y' P/ t: V
     ④ 过程内聚  ⑤ 巧合内聚  ⑥ 时间内聚
/ t: y; H+ j: Y/ ?! x1 @     ⑦ 逻辑内聚
5 R; i' z5 e. s$ e9 J6 K  5 d9 Q2 x6 S3 \  ]/ ]$ n$ d3 k
8.        从供选择的资料中选出正确的资料填入下面的( )中。/ o6 F$ X. H$ H( r' X& [
  块间联系和块内联系是评价程序模块结构质量的重要标准。联系的方式、共用信息的作用、共用信息的数量和接口的( A )等因素决定了块间联系的大小。在块内联系中,( B )的块内联系最强。
! Z" }4 N# }- t4 S  SD方法的总的原则是使每个模块执行( C )功能,模块间传送( D )参数,模块通过( E )语句调用其他模块,而且模块间传送的参数应尽量( F )。
6 z- a1 b- c9 |1 I% _- t! Z  此外,SD方法还提出了判定的作用范围和模块的控制范围等概念。SD方法认为,( G )应该是( H )的子集。: ]! f+ @: y2 J/ F4 ^3 T  M
  供选择的资料:# e7 V' e  t# ]
  A.① 友好性  ② 健壮性  ③ 简单性  ④ 安全性7 N6 G% I" q9 w
  B.① 巧合内聚 ② 功能内聚 ③ 通信内聚 ④ 信息内聚
7 G0 M. M% X6 o& y3 L  C.① 一个   ② 多个
' K4 j  z# N5 ?/ I" V$ \* y, }; j  D.① 数据型  ② 控制型  ③ 混合型6 \$ e- k/ [% N2 z' z* T& L: Q, q
  E.① 直接引用 ② 标准调用 ③ 中断   ④ 宏调用
1 x2 l. n, ^! j, @, o/ I1 \  F.① 少    ② 多
+ `7 r  v% t% y/ \/ w4 [1 m( x2 h  G~H.① 作用范围      ② 控制范围% c5 k9 q9 j  b) q" x$ c
  % p+ W# L, d0 A

  {8 p, {' C# M' V/ R  G5 l9.        从供选择的资料中选出应该填入下列关于软件设计的叙述的( )内的正确资料。
. X) H6 o  w/ w3 D1 M8 o5 U$ H  在众多的设计方法中,SD方法是最受人注意的,也是最广泛应用的一种,这种方法可以同分析阶段的( A )方法及编程阶段的( B )方法前后衔接,SD方法是考虑如何建立一个结构良好的程序结构,它提出了评价模块结构质量的两个具体标准——块间联系和块内联系。SD方法的最终目标是( C ),用于表示模块间调用关系的图叫( D )。
7 ^2 F; T) g: h, n7 `0 |  另一种比较著名的设计方法是以信息隐蔽为原则划分模块,这种方法叫( E )方法。* _, B& p2 ~/ H, ^/ y% J
  供选择的资料:
% @# J# ^& `! E: f  A~B:① Jackson  ② SA  ③ SC  ④ Parnas  ⑤ SP. X# o- Y2 S. w6 P* T' q: {
  C.① 块间联系大,块内联系大  ② 块间联系大,块内联系小
  r0 }/ U5 P: c) @% n# t, p. [   ③ 块间联系小,块内联系大  ④ 块间联系小,块内联系小0 H( l- A! {; V) ]
  D.① PAD     ② HCP     ③ SC  / t0 a/ ^, s9 t. U, V8 e/ i8 \+ n
   ④ SADT    ⑤ HIPO    ⑥ NS$ H! c4 B7 j/ M, a4 F7 u
  E.① Jackson   ② Parnas   ③ Turing
8 ^: l# w+ X9 L/ [6 C   ④ Wirth    ⑤ Dijkstra
4 `4 [- u! d2 h* |# o  h0 p  2 ]1 W9 \8 e/ B
10.        软件详细设计工具可分为三类,即:图示工具、设计语言和表格工具。图示工具中,( A )简单而应用广泛、( B )表示法中,每一个处理过程用一个盒子表示,盒子可以嵌套。( C )可以纵横延伸,图形的空间效果好。0 n" _( ^! \! [+ B
  ( D ) 是一种设计和描述程序的语言,它是一种面向( E )的语言。0 t6 R& L- w, p4 T
  供选择的资料:- d4 Q1 G4 W0 N' ~
  A~C.① NS图  ② 流程图  ③ HIPO图  ④ PAD图
4 k/ f) @7 D8 e' d, X4 v( C  D.① C      ② PDL    ③ RPOLOG  ④ PASCAL+ D$ a6 @/ r6 l6 l2 j- }7 Q, u$ ~
  E.① 人     ② 机器    ③ 数据结构 ④ 对象
: J: C- j1 \! F' d  W4 n. s3 F  4 w( x8 w! g) z# [0 M2 R
11.        从供选择的资料中选出应该填入下列关于软件设计的叙述的( )内的正确资料。
7 ?" A8 B/ k% i* z  在完成软件概要设计,并编写出相关文档之后,应当组织对概要设计工作的评审。评审的内容包括:
# ]2 I$ K4 s. ]( }, v7 ]3 C  分析该软件的系统结构、子系统结构,确认该软件设计是否覆盖了所有已确定的软件需求,软件每一成分是否可( A )到某一项需求。分析软件各部分之间的联系,确认该软件的内部接口与外部接口是否已经明确定义。模块是否满足( B )和( C )的要求。模块( D )是否在其( E )之内。+ i! ^' e7 S- h2 `; P3 [
  供选择的资料3 b9 V) f4 x; Y- r3 _! I7 E
  A.① 覆盖     ② 演化     ③ 追溯8 D* M# L4 j( G3 V. `1 K) \5 G
   ④ 等同     ⑤ 连接
6 B: N% K! b; r9 b% s  B.① 多功能    ② 高内聚    ③ 高耦合 5 C% z" c3 q  m# }# U' c
   ④ 高效率    ⑤ 可读性
5 T+ r" J0 q5 p  C.① 多入口    ② 低内聚    ③ 低耦合
' g# P* D. {6 ~( j  `7 m; @   ④ 低复杂度   ⑤ 低强度2 p! g. M  C2 O2 z( C) O& h
  D~E.① 作用范围   ② 高内聚    ③ 低内聚 ) U9 P$ G% y8 d
     ④ 取值范围   ⑤ 控制范围
$ E5 c* u  P8 d  6 q6 a) D' g& s
12.        UML是一种面向对象的统一建模语言。它包含10种图,其中,用例图展示了外部actor与系统所提供的用例之间的连接,UML中的外部 actor指( ① ),用例可以用( ② )图来描述。状态图指明了对象所有可能的状态以及状态间的迁移 (transition)。如果一个并发的状态由 n 个并发的子状态图组成,那么,该并发状态在某时刻的状态由( ③ )个子状态图中各取一个状态组合而成。协作图描述了协作的( ④ )之间的交互和链接(1ink),它画成( ⑤ )图的形式。8 [4 b/ {0 s5 T# V# l. b$ M
 ①  
4 m! ]' c8 ^1 _% P+ C      A.人员  
/ D7 S5 G/ Z" ?# W4 t: n      B.单位  ( i' J/ k, g) Y3 ]# i8 ~; H
      C.人员或单位  
) p# {, H+ ]' ?% a5 s/ \) f      D.人员或外部系统  
* ~2 W, e1 U2 e5 ?% g   ②  
- ?2 m1 J1 @/ ~7 e7 d: s5 g      A.类  
( D9 w1 L8 j* e      B.状态  5 s  `$ M. g* g0 p+ ]( K6 g
      C.活动  
( |4 ]+ e9 ]. x1 @, ]5 }      D.协作  0 B$ A" O, O' _3 b
   ③  , R# d% O6 H; Q! K  m
      A.每一  % a0 d7 I" q# t1 Y6 s5 l- ~0 ]
      B.任意一  
- J2 ?/ M' F$ p% U% a2 K      C.任意二  $ T. A( z! t8 L
      D.任意 m (m ≤ n)  : }% Q3 P6 c! N4 x) m( y+ q
   ④  ' e; e9 m% p. ]
      A.对象  
0 q; i: g4 V9 e8 X2 u: }      B.类  / P- J9 Y+ [1 \' k; E
      C.用例  # I$ h& M  f) y: k# r* l
      D.状态  
( Q& ?2 i( _: Z   ⑤  . I6 Z  l2 q4 b7 P2 S- t4 q
      A.对象  
& T7 U4 A8 G4 I! x$ p      B.类  , ^! w& \9 ]7 `/ {
      C.用例  
9 P9 o, _9 ^- ?) i      D.状态  
% k0 C, c$ z" G" I% y1 `0 f7 I) @$ \
13.        类库是一种预先定义的程序库,它以程序模块的形式,按照( ① )把一组类的定义和实现组织在一起:( ② )对类库的建设提供了强有力的支持。
* ^2 i/ Y, L* {2 S2 C- n& `7 p ①  
' M$ y3 H# Q8 M+ w, l  ]* K8 n      A.类的功能  
+ R# L( }- P" G5 q/ ?      B.类层次结构  
  C6 U7 k7 q2 H  X; R- S2 @6 v      C.实例之间的调用关系  4 u" Z" ?7 d9 \
      D.类的类型  
9 ^  N5 q) t- T3 _+ b   ②  
- B, [% P) [  d4 E" M      A.引用  
( n( ?: ]9 f" w- W6 z& H/ R      B.重置  # T/ l- u- W8 |0 X! ^, ~/ E
      C.类属类    _4 l$ l% D# Q- c; x- t5 P* Q% ~
      D.封装    f1 E8 l! u7 X. b) o

  ?$ @6 s2 L# e" c! o* t14.        用例(use case)用来描述系统在对事件做出响应时所采取的行动。用例之间是具有相关性的。在一个“订单输入子系统”中,创建新订单和更新订单都需要核查用户账号是否正确。那么,用例“创建新订单”、“更新订单”与用例“核查客户账号”之间是( )关系。
$ w% l! A0 Z5 p' ~5 I3 B! {+ i3 u      A.包含(include)  : V+ U' Y& r9 d6 B& q1 X
      B.扩展(extend)  
1 I5 _1 M! i8 C% K# k      C.分类(classification)  
  s, U& V% [* S1 T$ V; \      D.聚集(aggregation)  
/ P$ n* D# H1 o. P: D5 S# k9 f5 y4 I3 x7 S/ {8 r" c" e/ i+ _
  U! G% ?" a2 c1 P4 V" L
15.        在UML中,对象行为是通过交互来实现的,是对象间为完成某一目的而进行的一系列消息交换。消息序列可用两种图来表示,强调消息时间次序的图称之为( ① ),该图的特点是( ② ),强调参加交互的对象的组织图称之为( ③ ),这两种图是( ④ )。* O2 d5 I1 ?# k( c; ~3 I* r; Z; y
 ①  ! Z8 H, s) J) V8 y
      A.活动图(activity diagram)  
1 D# @3 [. [8 q4 C      B.状态图(statechart diagram)  , C% T3 [3 l0 f7 n: j. _4 L
      C.序列图(sequence diagram)  ( a7 d& {9 [- E1 q( X  N2 V
      D.协作图(collaboration diagram)  
4 a6 C. z7 u# @/ h2 @   ②  6 o7 g+ x' v+ g% O# J* [
      A.有生命线及控制焦点,重点在消息的时间顺序上  
& P0 \$ F3 S5 C" B- `" I1 k      B.有路径有顺序号,为了一个消息的时间顺序给消息加数字前缀  ! _/ N$ b6 I; f1 p
      C.是对系统、子系统或类的行为建模  - J1 ~0 k  J% {& t" k
      D.本质上是一个流程图,显示从活动到活动的信息流  
& A" J1 _; _) A5 i   ③  
. A5 Z/ [" V( m* m+ o# \( T& g      A.活动图(activity diagram)  ) ?+ f$ W6 ]  F! E2 X
      B.状态图(statechart diagram)  
' z+ O6 o$ p( _6 E% t& [% g+ a0 e, g* `5 }      C.序列图(sequence diagram)  
- w, V: \6 ]0 D- }3 ?; B      D.协作图(collaboration diagram)  . [1 m  S+ s2 X, j; G. u  F) g0 I
   ④  ; i& _4 A" H4 |( Q. k5 d& E* F
      A.同构的,所以可以互相转换  & q6 ~, J3 @2 p* Q: f
      B.异构的,所以不可以互相转换  
* v0 \: V$ c2 n, M0 D) {      C.强调对象行为的事件顺序,常用于对反应式系统建模  
/ E/ S3 `( [# R4 i- Z; x% Y      D.专注于系统的动态视图,状态无法确定,所以不可以互相转换  
0 _) Q$ o) C( s: U- H0 ]8 b9 A9 i- k( N" l$ a
# S: {. n2 ~+ n+ p6 N6 E3 j( u
16.        在使用UML建模时,若需要描述跨越多个用例的单个对象的行为,使用( ① )是最为合适的。UML结构包括了基本构造块.公共机制和( ② )。UML 中提供了扩展机制,其中,构造型(Stereotype)扩展了UML的( ③ ),约束(Constraint)扩展了UML( ④ )。$ B% s3 T# x+ w( ~, y/ w3 X
 ①  
8 L. C4 o5 _2 G( l* _2 S! ]1 A      A.协作图(Collaboration Diagram)  9 G/ v9 D  L) J" B9 H$ i- [, [4 C
      B.序列图(Sequence Diagram)  
8 |1 q, A1 K/ K      C.活动图(Activity Diagram)  $ n- S3 j& v' \4 v6 g. x8 L
      D.状态图(Statechart Diagram)  
6 t' S% H7 x  X# e6 i   ②  , r( X! d" a8 k, X* B! z3 T
      A.把这些构造块放在一起的规则  & x, j4 W/ U' y; r  R3 U
      B.图形或文字修饰  
- `) K9 H& G. C5 s  L) `" k! P      C.类与对象的划分以及接口与实现的分离  5 m, I6 L2 M* d# A+ a9 m  x! B8 g
      D.描述系统细节的规格说明  % d8 S9 D5 j1 q
   ③  5 Z* ^9 h8 i% ^) k) o$ v5 i
      A.构造块的特性,允许创建详述元素的新信息  ) v( k" Z% q+ E2 W9 g- v
      B.构造块的语义,允许增加新的规则或修改现有的规则  " f7 P, N' C+ \/ E
      C.语义,允许创建新的构造块  + y+ K+ _& l' e3 x5 b+ o8 t6 i
      D.词汇,允许创建新的构造块  3 x4 ^0 p" Z% Q3 f2 c3 g
   ④  $ M" P) G- E2 {% O2 n; [0 s" h
      A.构造块的特性,允许创建详述元素的新信息  $ \! l8 h* j6 x# B; {4 @* |4 |3 N
      B.构造块的语义,允许增加新的规则或修改现有的规则  # u, q# R( L1 _8 h; T+ p& ]3 a2 l6 }
      C.语义,允许创建新的构造块  6 P4 ?+ _2 P  n' X3 v$ N
      D.词汇,允许创建新的构造块  1 X  T% L/ X* d; H- `  }
1.        从供选择的资料中选出应该填入下面 ( ) 中的正确资料。
) U' P7 Z9 g+ T7 V% ]  BA. 允许用户建立、修改、存储正文的计算机程序是 ( )。- @  _: ?" y) T2 ]( h9 N( Q1 \
① BOOtstrap ② Editor ③ Loader ④ Textformatter
; \+ k& N7 b7 A3 K/ H4 E( P  e0 q/ }0 ^3 G4 u+ V, I
B. 程序语言的编译系统和解释系统相比,从用户程序的运行效率来看 ( )。
5 {* y$ A: ~' C) V7 z9 d% u  ① 前者运行效率高      ② 两者大致相同* v$ s% |2 G2 Q3 G, E
③ 后者运行效率高      ④ 不能确定9 y6 }3 S0 m9 M* k0 u/ v! r

! R; j# {2 a* U8 \# {& z: uC. FORTRAN语言的源程序是 ( ) 结构。
. ]* `2 R# W6 ]0 h8 S# }& g, U  ① 块状         ② 分程序嵌套
1 D1 V2 }) r  t+ A) f& a6 ~③ 既是块状,又是嵌套  ④ 既不是块状,又不是嵌套的0 a9 n- `+ c8 j( m
: c6 {4 ?: \* W8 T# X
D. 国际上最广泛使用的商用及行政管理语言是 ( )。
7 a. T- C/ P' u3 `① COBOL   ② BASIC   ③ FORTRAN   ④ PL/1
4 x/ _- g/ J1 F% P  K
  |0 O, z+ E9 k# }" k* C" uE. 国际上最流行的数值计算的程序设计语言是 ( )。- B, W& z4 h; ]/ j" B
① BASIC   ② ALGOL   ③ FORTRAN   ④ C3 o1 t* Q9 i7 |  u0 |4 A

- V/ i+ T; H+ `2 v9 O6 m% o4 V8 \F. 美国国防部主持开发了高级程序设计语言Ada,在它研制开始时,经反复比较,确定以高级语言 ( ) 作为Ada研究的出发点。  o/ E  L% _9 M. f9 X% z
① LISP    ② ALGOL   ③ ALGOL68   ④ PL/12 X2 R! K1 }# O" v/ d

  m0 ]! n/ P" E3 t! [; i$ Y) X2.        从供选择的资料中选出应该填入下面( )中的正确资料。& u; a5 F* D, C# X  _3 r
A. 汇编程序是指 ( )。
! Z1 l% R! ~: O! s1 ]  k% d9 v- h① 用汇编语言写的程序" n& Q$ s# b3 b/ R+ ]! `3 j) k
② 符号程序, [* }1 f& f+ i, q0 v" ~
③ 汇编语言的处理程序
0 b8 l( A8 M( I0 |+ e
' w: Z! k8 v/ `B. 为了实现递归子程序的正确调用,人们必须用( )来保存( )及有关信息。
  }. U( v; p$ G' M4 N① 堆栈    ② 线性表    ③ 队列    ④ 树7 A3 Q: m* {- {: |( E3 l8 c
⑤ 入口点   ⑥ 返回地址   ⑦ 断点( Y$ Y+ U: w- ~5 S4 ^+ p: H

" s! n- `5 C* ~4 XC. UNIX操作系统是( )研制的,它是用程序语言( )书写实现的。4 k- D9 C  r% i' e; w- [
① Bell实验室  ② DEC公司  ③ IBM公司  ④ PASCAL
# H! P/ y3 o# D, c0 z2 s- Y⑤ 并发PASCAL  ⑥ MODULA   ⑦ C$ C4 N2 h: O- g$ R* W" f

- n! V2 W: _" U2 N  I( A3.        从供选择的资料中选出适当的字句填入下面关于程序生产率的描述中的( )内。% A, _! G4 a3 u  Y$ V* A' F7 L& k
(1)1960年底Dijkstra提倡的 ( A ) 是一种有效的提高程序设计效率的方法。
: f& }1 H& r, y3 S- T! |(2)Dijkstra为了使程序结构易于理解,把基本控制结构限于顺序、( B )、( C )3种,应避免使用 ( D )。
' e, e0 a) s2 P* o/ E7 Z(3)( A ) 不仅提高程序设计的生产率,同时也容易进行程序的 ( E )。
; D7 h$ ^! D. T$ S  
" F" l- H/ N7 ?供选择的资料:& k. h4 P6 d. V! R# F6 i
  A.① 标准化程序设计 ② 模块化程序设计 ③ 多道程序设计 $ B: v* ^& }% U3 S3 o
   ④ 宏语言     ⑤ 结构化程序设计 ⑥ 汇编语言
( y* u2 g" Y1 F0 K3 D$ P   ⑦ 表格处理语言- V2 V6 Z! i/ a* D6 @9 F- r' W3 _
B, C. ① 分支 ② 选择 ③ 重复 ④ 计算 ⑤ 输入输出% X/ Q! C" V0 B6 M# K
D. ① GOTO语句 ② DO语句 ③ IF语句 ④ REPEAT语句
8 [2 E& l- h% ^5 rE. ① 设计  ② 调试  ③ 维护  ④ 编码
, r. L" T: S) ~. M$ a& g2 B$ \( t  T9 Y& @1 b+ k& y
  ?0 z& c; F) Y7 C1 ]7 C- ~& h
4.        测试过程需要三类输入.( A )、( B )和( C )。请选择正确的资料填入下图中以完成测试信息处理的全过程。
+ o; c: a' `, _* } & M: M" `6 Z  ?' Z1 a
  
5 X- v+ |- c( C: x: F; p& p供选择的资料:, J; s, D( W- a) Y
  A~C. ① 接口选择   ② 软件配置   ③ 硬件配置* F9 z5 S; f/ I. E- S  L
     ④ 测试配置   ⑤ 测试环境   ⑥ 测试工具
$ }. O& I3 }1 u& a# w/ ED~F. ① 排错 ② 可靠性分析 ③ 结果分析 ④ 数据分类
; m6 F+ l% l0 W: K) x+ Z  {9 n9 D4 g  j0 h+ E7 `1 c+ H, [
5.        软件测试是软件质量保证的主要手段之一,测试的费用已超过( A )的30%以上。因此,提高测试的有效性十分重要。“高产”的测试是指( B )。根据国家标准GB 8566–88《计算机软件开发规范》的规定,软件的开发和维护划分为8个阶段,其中,单元测试是在( C )阶段完成的,集成测试的计划是在( D )阶段制定的,确认测试的计划是在( E )阶段制定的。
8 ]5 f4 l6 h* c: ?3 @
& n1 y( l" }3 \/ n. z0 g供选择的资料:6 e1 o6 ~* @6 @: r& o; v# `: Y
  A.①软件开发费用 ②软件维护费用 ③软件开发和维护费用6 \( g# n4 ]4 |: y( b
   ④软件研制费用      ⑤软件生存期全部
$ X# k) P2 W: t+ I+ m# B: O% J  B.①用适量的测试用例运行程序,证明被测程序正确无误* o8 `% p9 f2 R
   ②用适量的测试用例运行程序,证明被测程序符合相应的要求
! k$ H. T! Q+ I9 F. |, g6 o  C! X   ③用少量的测试用例运行程序,发现被测程序尽可能多的错误9 u5 W( _" J+ c- `- N' q
   ④用少量的测试用例运行程序,纠正被测程序尽可能多的错误* d# b( D0 b* O3 t# X1 z& J; ?
  C~E. ① 可行性研究和计划  ② 需求分析  ③ 概要设计
( @  e+ Z% K4 U8 I     ④ 详细设计      ⑤ 实现    ⑥ 集成测试( W7 V. Q' V$ e; Q
     ⑦ 确认测试      ⑧ 使用和维护
& Z' G1 ^5 _5 I) Q- [  K& {9 w3 P/ S* L' q* v1 \* n9 Z
6.        集成测试也叫做( A )或( B )。通常,在( C )的基础上,将所有模块按照设计要求组装成为系统。子系统的集成测试特别称为( D ),它所做的工作是要找出子系统和系统需求规格说明之间的( E )。需要考虑的问题是.在把各个模块连接起来的时侯,穿越模块接口的数据是否会( F ); 一个模块的功能是否会对另一个模块的功能产生不利的影响;各个( G )组合起来,能否达到预期要求的( H );( I )是否有问题;单个模块的误差累积起来是否会放大。% ^8 }; y9 M6 j5 t6 `
6 K2 c+ ~1 g# T8 U+ k/ o; F
供选择的资料:
' K0 u  s$ Y7 m0 D4 Z9 x) z  A~D. ① 单元测试  ② 部件测试  ③ 组装测试# d, [3 q. w& X# E$ z  r
     ④ 系统测试  ⑤ 确认测试  ⑥ 联合测试
6 @5 s$ p- z2 s. Z" Z2 C. Q; g- G2 |  E~I. ① 子功能 ② 丢失 ③ 父功能 ④ 局部数据结构
1 R& p/ ]7 q* i! b: t7 P# I     ⑤ 全局数据结构  ⑥ 不一致   ⑦ 一致
1 ?7 a, P8 Z# P1 l% |" u" z8 L7 a; r4 Z2 o
7.        从供选择的资料中选出应填入下列( )中的字句。- E# h0 `) H9 c2 V4 m0 t8 u
软件测试的目的是( A )。为了提高测试的效率,应该( B )。使用白盒测试方法时,确定测试数据应根据( C )和指定的覆盖标准。与设计测试数据无关的文档是( D )。5 O9 l8 _8 F; K6 J

, z/ z, V: G( ]' m  供选择的资料:8 p, t; a- z1 k( _) N2 ^1 _
  A.① 评价软件的质量      ② 发现软件的错误
, ?4 v- g2 R% |   ③ 找出软件中的所有错误   ④ 证明软件是正确的
% p  X$ v( i' s' Q7 L& m  B.① 随机地选取测试数据
' b/ W, k: D4 v  f! ^" g8 O% {   ② 取一切可能的输入数据作为测试数据/ K. J6 c, T8 r; ~% P" U" N
   ③ 在完成编码以后制定软件的测试计划* ~' Z# n. u6 i1 `6 L
   ④ 选择发现错误的可能性大的数据作为测试数据
# z; i. [# B1 l( V9 I6 `# \- f  C.① 程序的内部逻辑      ② 程序的复杂程度
: S2 _5 s$ [5 D8 _, R2 z% f% q$ d   ③ 使用说明书        ④ 程序的功能
' W/ j* c9 a& X: {6 z  D.① 该软件的设计人员     ② 程序的复杂程度
, v% l0 y4 ~* \. i+ P   ③ 源程序          ④ 项目开发计划. P" s' s6 Z; U9 E' l
' a: E8 o4 M& o0 O8 K) P
8.        请从供选择的资料中选出应填入下列( )中的字句。
7 [" ]+ j4 {6 g% _2 C8 H程序的三种基本控制结构是( A )。它们的共同点是( B )。结构化程序设计的一种基本方法是( C )。软件测试的目的是( D )。软件调试的目的是( E )。
# D4 Y# O' p  w4 [, n, i3 R" C! |, `  o: }9 U5 {0 W5 k
供选择的资料:
& N- @9 r( |: h% r$ a* s7 x  A.① 过程,子程序,分程序   ② 顺序,条件,循环& O5 `! O, Q. @) G
   ③ 递归,堆栈,队列     ④ 调用,返回,转移6 ~) `8 f3 p, `: o7 B
  B.① 不能嵌套使用       ② 只能用来写简单的程序" E% r" @8 ?! W# _+ Z' ?# S; m
   ③ 已经用硬件实现      ④ 只有一个入口和一个出口, O% i; x: r% e. C$ m$ p' X% l
  C.① 筛选法  ② 递归法  ③ 归纳法  ④ 逐步求精法
/ @/ F1 @% j2 o' u  D.① 证明程序中没有错误    ② 发现程序中的错误
6 m4 R- R' M  g3 M' _   ③ 测量程序的动态特性    ④ 检查程序中的语法错误
; z4 h0 y  m/ ^: A" t. e  E.① 找出错误所在并改正之   ② 排除存在错误的可能性0 W9 o8 {- _6 n) [* v
   ③ 对错误性质进行分类    ④ 统计出错的次数 9 j2 E4 k5 ]9 s. p
' A8 K) u6 M. t9 p: \6 j
9.        从下列关于软件测试的叙述中,选出5条正确的叙述。; J2 G& N# ^" ]) `' R
  (1) 用黑盒法测试时,测试用例是根据程序内部逻辑设计的。  ~$ \% v/ F2 t2 A
  (2) 尽量用公共过程或子程序去代替重复的代码段。% N7 ~5 T/ T. f) s# q5 T# e
  (3) 测试是为了验证该软件已正确地实现了用户的要求。* o/ b0 c; a( O, j/ E
  (4) 对于连锁型分支结构,若有n个判定语句,则有2n条路径。
; R0 V. W, F7 E4 j  {( L  (5) 尽量采用复合的条件测试,以避免嵌套的分支结构。0 i. z* g! K' s+ {+ v6 z3 g
  (6) GOTO语句概念简单,使用方便,在某些情况下,保留GOTO语句反能使写出的程序更加简洁。9 g1 l: ~6 S2 w# Q
  (7) 发现错误多的程序模块,残留在模块中的错误也多。
! w4 ]) Z4 `' ]; ^, f4 s  (8) 黑盒测试方法中最有效的是因果图法。
' _7 J8 W1 i( T& S  (9) 在做程序的单元测试时,桩(存根)模块比驱动模块容易编写。. J9 U: V6 G. a6 q. C1 J' F6 ^
(10) 程序效率的提高主要应通过选择高效的算法来实现。6 C( x2 ^4 y+ K3 j
  v& d9 ~: K7 I+ h
10.         从供选择的资料中选出同下列关于软件测试的各条叙述关系最密切的字句。2 u- l: G5 u- V" v$ X
(1) 对可靠性要求很高的软件,例如操作系统,由第三者对源代码进行逐行检查。# @9 b3 A/ R+ U  h3 ]
(2) 已有的软件被改版时,由于受到变更的影响,改版前正常的功能可能发生异常,性能也可能下降。因此,对变更的软件进行测试是必要的。+ O4 z& m8 V$ w: u& e/ {3 `3 P' ]
(3) 在意识到被测试模块的内部结构或算法的情况下进行测试。
3 q* `9 O; M, |! k9 V& D: [, s(4) 为了确认用户的需求,先做出系统的主要部分,提交给用户试用。
, {7 u5 j7 f- |4 k5 y/ O6 g) w(5) 在测试具有层次结构的大型软件时,有一种方法是从上层模块开始,由上到下进行测试。此时,有必要用一些模块替代尚未测试过的下层模块。
" P8 L5 Q4 _6 M( q  供选择的资料:# g0 j7 `( I# T  P1 q& x  r: [
  A~E.① 仿真器  ② 代码审查  ③ 模拟器   ④ 桩   I: I; m7 v$ C6 J
     ⑤ 驱动器  ⑥ 域测试   ⑦ 黑盒测试  ⑧ 原型
, u! L* _9 W0 G; D" e. N% }     ⑨ 白盒测试 ⑩ 退化测试
7 p7 U! m  J8 V# j2 C8 E7 g' O7 E& h% J( D6 p) f% p! M9 L
11.        从供选择的资料中选出应填入下面有关软件测试的叙述的( )内的正确资料。! g2 H7 q& A. D/ B2 e- F1 T
  软件测试方法可分为黑盒测试法和白盒测试法两种。
" A6 H/ g# `1 z  黑盒测试法是通过分析程序的( A )来设计测试用例的方法。除了测试程序外,它还适用于对( B )阶段的软件文档进行测试。. U/ d) g, b1 G0 t& K+ w
  白盒测试法是根据程序的( C )来设计测试用例的方法。除了测试程序外,它也适用于对( D )阶段的软件文档进行测试。
9 f! I* X7 u# k% z% C
# z& `  g) X3 n. W  供选择的资料:
5 V  C& ]" Z4 d9 e) u) j  A,C.① 应用范围      ② 内部逻辑  
* m, Y! K5 @/ l) d/ Y6 }" n     ③ 功能        ④ 输入数据
* k) }( Q! s8 R% b; C  B,D.① 编码        ② 软件详细设计 
8 L# x1 h  \! o8 p0 D  \+ G7 c     ③ 软件总体设计    ④ 需求分析) L, Q8 O* J- q( R; Y! r# X

, s0 J& y8 J. |% @12.        从供选择的资料中选出应该填入下列关于软件测试的叙述的( )内的正确资料。: _3 \# I& P- n/ c
  软件测试中常用的静态分析方法是( A )和( B )。( B )用于检查模块或子程序间的调用是否正确。分析方法(白盒方法)中常用的方法是( C )方法。非分析方法(黑盒方法)中常用的方法是( D )方法和( E )方法。( E )方法根据输出对输入的依赖关系设计测试用例。
) K( i# A4 x0 u  E  供选择的资料:
0 k  o* D5 s: x& \  g0 a  A~B. ① 引用分析   ② 算法分析   ③ 可靠性分析
. u8 Y& t( ^6 s+ p, W0 N7 M      ④ 效率分析   ⑤ 接口分析   ⑥ 操作分析
. O/ o: Y2 [4 ?+ x3 g  C~E. ① 路径测试   ② 等价类    ③ 因果图 * A9 t0 I: T2 [" Y' z; f( s
     ④ 归纳测试   ⑤ 综合测试   ⑥ 追踪 * z2 v0 v5 @) n4 ]0 n$ D5 F& K
     ⑦ 深度优先   ⑧ 调试     ⑨ 相对图
" N# U  p& z3 W! O' K$ X- U/ d! L1 \, g
13.        对于软件产品来说,有4个方面影响着产品的质量,即( A )、( B )、( C )及成本、时间和进度等条件。重视软件过程的质量是近年来质量管理理论和实践的新发展。重视软件过程质量的控制,其部分原因可能是:相对于产品质量的控制来说,过程质量的控制是( D )、( E )、( F ),而产品质量的控制是( G )、( H )、( I )。
2 F  D  N5 B! E) a9 ~0 I: z
9 I% G- T8 f$ j, Z% ]9 _4 o2 b  供选择的资料:
2 V) Y1 D0 s8 u1 C# ^( ~# l: w  A~C. ① 开发时间  ② 开发技术  ③ 过程质量
" g! r& W7 a; e# [* h5 Y3 i     ④ 风险控制  ⑤ 质量控制  ⑥ 人员素质
7 b" N* |9 p3 z2 |. H     ⑦ 项目管理  ⑧ 配置管理 " F: ^2 {# K1 d% X, n* A5 |
  D~I. ① 主动的  ② 被动的  ③ 整体的  ④ 系统的
% a: o, u) b& x( A     ⑤ 先期的  ⑥ 事后的  ⑦ 个别的  ⑧ 部分的% V+ r( u; R7 @

# n# I; R0 f# @" `0 Z$ @14.        McCall提出了表明软件质量的11个质量特性。它们是( A )、( B )、( C )、( D )、( E )、( F )、( G )、( H )、效率、可测试性和互连性。我们把这11个特性分为3组,使其分别隶属于产品修正、产品转移和产品运行等3个方面,如图所示。
/ ]3 @+ w( L$ |% u1 d ) G% y1 J* y* G% q
  供选择的资料:
/ Q8 e0 A( o6 p1 w/ G/ [# J. u  A~H. ① 可读性  ② 正确性  ③ 功能性  ④ 完整性
! |+ J$ V3 N, j2 O7 X) o     ⑤ 可靠性  ⑥ 可移植性 ⑦ 可复用性 ⑧ 灵活性
+ V; U) @% h, X! B" d1 t( G     ⑨ 可维护性        ⑩ 可使用性
! o, m) i) P/ `
) n9 r9 a* ]: D* u1 L15.        在软件维护的实施过程中,为了正确、有效地修改,需要经历以下3个步骤:( A )、( B )、( C )。( A )是决定维护成败和质量好坏的关键。( C )包括( D )确认、计算机确认和维护后的( E )。& F; X7 Y, `! i  a+ i# |: A* p/ N
  供选择的资料:
, @$ T& b  \, D9 s/ z  A~C. ① 修改程序  ② 建立目标程序 ③ 分析和理解程序( I- a; F$ O* m2 K) ?5 r6 O
     ④ 重新验证程序     ⑤ 验收程序 8 u$ B: u' h/ h# v* B7 y. D
  D. ① 动态   ② 静态   ③ 人工   ④ 自动  \" r0 i# f6 p/ B
E. ① 验证   ② 验收   ③ 检验   ④ 存档, Q% T4 r; c7 B* I! ^& w% J! p5 \! T

$ b! k1 e5 Y% Y( O16.        从供选择的资料中选出同下列各叙述关系最密切的字句。$ f" q' |6 G" s0 F# E  N  Z" P
  A.软件从一个计算机系统或环境转移到另一个计算系统或环境的容易程度。9 X9 A% _4 g( m& Q/ a1 g4 `
  B.软件在需要它投入使用时能实现其指定的功能的概率。# j$ A0 B+ q6 h/ P8 S4 C6 z7 Q; Q
  C.软件使不同的系统约束条件和用户需求得到满足的容易程度。 
& q( Q" c- s- z7 C$ H  D.在规定的条件下和规定的一段期间内,实现所指定的功能的概率。
5 q1 M) q5 P! R$ K3 x. c( U2 h$ y  E.尽管有不合法的输入,软件仍能继续正常工作的能力。
5 \/ L% c' ^0 \/ R; }6 b: m  供选择的资料:1 Z& a' c0 b- c* k+ V) P
  ① 可测试性  ② 可理解性  ③ 可靠性  ④ 可移植性+ g! F& v$ m! s% {. q2 x/ j
  ⑤ 可使用性  ⑥ 兼容性   ⑦ 容错性  ⑧ 可修改性; n  e  f: n0 Z7 x- x
⑨ 可接近性 ? ⑩ 一致性) q: q0 D. V3 ~3 k6 T; H! Q

$ A2 l7 v  R1 X( q( A; x17.        软件可移植性是用来衡量软件的( A )的重要尺度之一。为了提高软件的可移植性,应注意提高软件的( B )。采用( C )有助于提高( B )。为了提高可移植性,还应( D )。使用( E )语言开发的系统软件具有较好的可移植性。
$ t  y4 [% Z8 v, {' i- a/ J  供选择的资料:0 ~3 z9 `" q1 `% j
  A. ① 通用性  ② 效率  ③ 质量  ④ 人机界面% h+ x0 r. a" A7 A5 C
  B. ① 使用的方便性    ② 简洁性
% ^1 K2 l" Q3 G    ③ 可靠性       ④ 设备独立性
, f8 D" X; I; b& P$ U  C. ① 优化算法      ② 专用设备   e. y) ~6 p- l7 [/ o- p( Q1 X4 W
    ③ 表格驱动方式    ④ 树型文件目录3 }/ r4 R( a- q
  D. ① 有完备的文件资料  ② 选择好的宿主计算机 7 p0 |) R' |' B! M5 q) M1 Q, Q
    ③ 减少输入输出次数  ④ 选择好的操作系统+ H: x' F6 [" I" B
E. ① COBOL  ② APL   ③ C    ④ SQL
+ b% j5 p  ^# e2 k  X! I8 V& d" u6 Z8 o% t
18.        下面有关软件维护的叙述有些是不准确的,请列举5个正确的叙述。! b5 w8 Q1 T5 T1 G
  供选择的资料:, L5 n; I* q( Z$ ?
  ① 要维护一个软件,必须先理解这个软件。* _. d: s# C+ s. ~* b  O; \$ m
  ② 阅读别人写的程序并不困难。9 U) Y5 g# c, |
  ③ 如果文档不齐全也可以维护一个软件。
: b6 l% F' A+ @7 d& K7 ~  ④ 谁写的软件就得由谁来维护这个软件。
/ \6 G) R$ W" `' a* r9 P$ g  ⑤ 设计软件时就应考虑到将来的可修改性。
0 o/ l( e  s4 _0 T  ⑥ 维护软件时一件很吸引人的创造性工作。, }5 N# @5 \& r
  ⑦ 维护软件就是改正软件中的错误。
5 f( I6 B# P; @5 e⑧ 维护好一个软件是一件很难的事情。. ^: M" q' j% t1 ?; `# j

  h) b5 i; `' a  w) C/ P: ]19.        软件再工程是一类软件工程活动,它能够使我们:ⅰ)增进对软件的理解;ⅱ)准备或直接提高软件自身的( A )、( B )或演化性。第ⅱ部分旨在改善软件的( C ),使得软件更容易为人们服务。纯粹是出于改善性能的代码优化( D )软件再工程。逆向工程属于上述软件再工程的第( E )部分。' B# k4 [% ^; R
供选择的资料:* W, A1 W* H$ @' ?/ O7 f$ Z' c2 c- R
  A,B. ① 可靠性    ② 灵活性   ③ 可维护性
. {, _5 i3 h+ \2 o: i9 H& o     ④ 可复用性   ⑤ 可修改性
- {! c/ R1 |4 y- u/ `  C. ① 静态质量  ② 动态质量  ③ 性能  ④ 功能
, c- o) K* d& |- E  M2 X2 @+ Q3 I& s  D. ① 属于       ② 不属于$ O. y. d+ W- }, ]) `
E. ① ⅱ        ② ⅰ
$ @3 G( g1 j% p$ V' K0 b9 ]  ?4 m9 S
! ?8 c4 ?5 P& O20.        ( A )是软件的一种表达形式,或是有关软件的一种报告。( A )可分为4类:软件的规格说明属于( B ),PDL或DFD属于( C ),规格说明文本的图索引属于( D ),程序和程序段属于( E )。( A )得到工具支持时,就成为( F ),可用其支持加入、变更或浏览信息。* |/ F% r, ?. `8 w: x
  供选择的资料:, [# i( v1 q% N% i
  A,F. ① 软件说明   ② 概要设计   ③ 软件视图 ! R1 E& N$ Q8 U0 `$ Q% N
     ④ 信息库    ⑤ 视图编辑器  ⑥ 软件设计
' g) y- d1 z. v% W4 |& t  B~E. ① A类视图 9 t. g) h+ U  U5 u3 Q
     ② 1类视图(非过程性描述和∕或元描述)  I& z) z, j2 P2 _
     ③ 2类视图(伪过程性描述和∕或面向体系结构的描述)- y* v: _- G2 R5 Q: d- y2 ]7 a
     ④ 3类视图(纯过程性描述或直接导出的信息)
# a( E; Q% |( Z. R" v, ^- C3 t- B1 C* i! w
21.        由于软件工程有如下的特点,使软件管理比其他工程的管理更为困难。软件产品( A )。( B )标准的过程。大型软件项目往往是( C )项目。( D )的作用是为有效地定量地进行管理,把握软件工程过程的实际情况和它所产生的产品质量。在制定计划时,应当对人力、项目持续时间、成本作出( E );( H )实际上就是贯穿于软件工程过程中一系列风险管理步骤。最后,每一个软件项目都要制定一个( F ),一旦( G )制定出来,就可以开始着手( H )。
- P- _( ~8 h8 }7 P3 w, J  供选择的资料:8 {- Z) Y2 L3 F% d
  A~C. ① 可见的   ② 不可见的   ③ “一次性”
& m' C: ?1 y' i! Y+ b. \3 t      ④ “多次”  ⑤ 存在     ⑥ 不存在
; o- I2 [) o/ ^. w  s3 s6 K3 ?6 T  D~H. ① 进度安排  ② 度量     ③ 风险分析
! b' R6 |* M' b  R8 a      ④ 估算    ⑤ 追踪和控制  ⑥ 开发计划
2 A5 B# N8 O- }$ S3 q3 j; @9 m% O) h  a/ i% W. }3 z: [* S  s' I
22.        在软件项目估算时,将代码行LOC和功能点FP数据在两个方面使用:一是作为一个估算变量,度量软件每一个( A )的大小;一是联合使用从过去的项目中收集到的( B )和其他估算变量,进行成本和( C )估算。LOC和FP是两种不同的估算技术,但两者有许多共同的特征,只是LOC和FP技术对于分解所需要的( D )不同。当用( E )作为估算变量时,功能分解是绝对必要且应达到很详细的程度,而用( F )作为估算变量时,分解程度可以不很详细。( E )是直接估算,( F )是间接估算。若计划人员对每个功能分别按最佳的、可能的、悲观的3种情况给出LOC或FP估计值,记作a, m, b,则LOC或FP 的期望值E的公式为( G ),m是加权的最可能的估计值,遵循( H )。( p( s1 l3 ^9 _" s. w6 e$ ^; c
& S6 B9 Z, R# f3 A& J4 Y/ x
供选择的资料:% v" ], L% q6 q( w5 T2 p1 v& N: F
  A~C. ① 模块     ② 软件项目    ③ 分量  N' v2 {) N3 X- s' f3 G/ j
     ④ 持续时间   ⑤ 工作量     ⑥ 进度5 X3 n( }' \# o: x6 j8 u- P; |
     ⑦ 基线数据   ⑧ 改进数据
+ L6 [% p' `& \7 c     D. ① 详细程度     ② 分解要求  Q8 B  W- n' a
    ③ 改进过程     ④ 使用方法7 j" U) ^: u8 w. h! F5 r4 v. i, [
  E, F. ① FP      ② LOC
% l: k1 }2 Q2 l, N5 H4 r7 u) D  G.①      ②  5 y* N" b# g6 J6 t& v" ~" s
   ③     ④  % E: R5 ^$ |* n9 {9 B- O
H.① χ概率  ② γ概率  ③ β概率  ④ 泊松5 k1 ^3 k; R% Y& _' {

6 P- p& n# J9 J: ^0 T23.        定义一个人参加劳动时间的长短为( A ),其度量单位为PM(人月)或PY(人年)。而定义完成一个软件项目(或软件任务)所需的( A )为( B ),其度量单位是人月/项目(任务),记作PM(人月)。进一步地,定义单位( A )所能完成的软件( C )的数量为软件( D ),其度量单位为LOC/PM。它表明一般指( E )的一个平均值。例如,一个软件的开发工作量如下表所示。该软件共有源代码2900行,其中,500行用于测试,2400行是执行( F )的源代码。则劳动生产率是( G )(LOC/PM)。
( F/ y' t, T( U2 x表 软件开发所需工作量例
4 @8 d" ]0 A. u7 Q
3 A4 |( `9 [4 \% P) T# ^  供选择的资料:
% w: L1 a0 d1 Z2 q  A, B, D.① 生产率  ② 工作量  ③ 成本  ④ 劳动量
1 y- X: ~& Z0 c; u; l  E.① 开发全过程      ② 某开发阶段
  C! X& y, |  t2 H* i   ③ 软件生存期      ④ 某开发任务+ y) {$ h6 h  f5 l# ?
  F, C.① 软件     ② 程序   ③ 进程  ④ 产品+ K5 |/ R0 i3 t: ~
G.① 520       ② 120    ③ 320   ④ 240! H" }; N) K; I9 m! Q
, _' w+ O7 B# v
24.        对于一个大型的软件项目,由于项目的复杂性,需要进行一系列的估算处理。主要按( A )和( B )手段进行。估算的方法分为三类:从项目的整体出发,进行( B )的方法称为( C )估算法。把待开发的软件细分,直到每一个子任务都已经明确所需要的开发工作量,然后把它们加起来,得到软件开发总工作量的方法称为( D )估算法。而把待开发的软件项目与过去已完成的软件项目做类比,区分出类似部分和不同部分分别处理的方法称为( E )估算法。( F )是由多位专家进行成本估算的方法。
7 R, P3 D' S2 N( d+ C# I8 S  供选择的资料:0 x5 Y- \* g! K5 }, g: _
  A, B.① 类推   ② 类比   ③ 分解   ④ 综合
* {2 d- X' [0 M# ]" i0 A- i0 j. h  C~F.① 差别      ② 自顶向下   ③ 自底向上 7 j+ O0 q/ r. Z# O
     ④ 专家判定技术  ⑤ 循序渐进   ⑥ 比较
+ v9 U5 @  l/ F. F1 h$ K% v8 [3 r/ N. h$ v$ ~. G
25.        Putnam模型是一种( A )模型。需要建立一条连续的( B ),称为Rayleigh-Norden曲线。可以由此导出一个( C ),把已交付的源代码(源语句)行数与工作量和开发时间联系起来。请选择合适的资料完成下面大型软件项目的开发工作量分布图。
- t1 W) k  m" i, [   U' F; c  N# J/ v) L
  供选择的资料:
$ Q4 I5 i7 z/ Y1 A8 J  A.① 单值     ② 多值     ③ 静态多变量
5 A: x  c! f' h& ]& Y" c   ④ 动态多变量       ⑤ 静态单变量- i( p3 t  `: m/ k/ f! W2 @
  B, C.① 软件方程     ② 函数曲线 % q9 G$ N; H$ h( C$ U+ E
     ③ 资源需求曲线   ④ 工作量分布 9 N( F6 _2 o. ]! \
  D~H.① 安装    ② 系统定义   ③ 测试与确认
! w2 N# R( j! Q1 |: f0 ~2 y     ④ 设计与编码      ⑤ 功能设计∕规格说明
5 I& X; Y  t# Y# \: z- u& g( s  V9 k* B3 q5 {, h. L& D- g
26.        一个规模为10KDSI的商用微机远程通信的嵌入型软件,使用中间COCOMO模型进行软件成本估算。程序的名义工作量MM = ( A );程序实际工作量MM = ( B );开发所用的时间TDEV = ( C );如果软件开发人员的工资都按每月6000美元计算,则该软件项目的开发人员的工资总额 = ( D )。# K$ U1 M0 W4 l$ @6 Q2 N7 T
表1 中间COCOMO模型的名义工作量与进度公式4 X2 f# t: }' P- h5 }# A+ ~1 E: g
. v0 g- `' R7 @$ h  C
表2 影响工作量的因素fi的取值, r  {& K, N8 ]( \' I
6 g- o: F, S: M! f1 q% p
  供选择的资料:
7 m9 {  x5 [4 l' [" M  A, B.① 45.8   ② 51.5   ③ 44.38   ④ 54.22 s( }2 _- F* l4 ]5 X- J! n; C
  C.① 8.9月    ② 9.8月   ③ 7.8月   ④ 10.9月
  @, I" f3 Y- G$ [" y& d/ Q  D.① 26.4万美元        ② 36万美元 # e" s9 k- w4 O3 z2 t
   ③ 20.96万美元       ④ 30.9万美元4 a. |# t9 y% |8 z( E' k2 j
8 Y0 Y9 s7 c- D2 V
27.        假设开发某个计算机应用系统的投资额为3000元,该计算机应用系统投入使用后,每年可以节约1000元,5年内可能节约5000元。3000元是现在投资的钱,5000元是5年内节省的钱,两者不能简单地比较。7 V% C8 x- A! `( L2 D, x0 H
假定年利率为12%,利用计算货币现在价值的公式,可以算出该计算机应用系统投入使用后每年预计节省的金额的现在价值。
, @$ T/ y9 H4 c' H 7 `7 W+ e$ I8 {. d% \, p) w1 S& Q
则该系统的纯收入是( A ),投资回收期是( B ),投资回收率为( C )。/ e- T3 P; x( l+ Z& ]/ G

5 {4 Y9 v  |1 ^1 z$ ~' U; B: e  供选择的资料:
8 o7 J$ L3 n" K  A.① 512.3元  ② 729.28元  ③ 602.4元  ④ 612.27元. P7 }8 [* m1 @# q. g; j
  B.① 2.4年   ② 3.93年   ③ 4.25年   ④ 2.78元
( L0 Y7 a& T1 p( SC.① 25%    ② 30%    ③ 20%    ④ 15%3 s0 Z' p0 M1 C$ h; K

% t6 s: m+ S, J2 n+ f. R28.        质量保证是为了保证产品和服务充分满足消费者要求的质量而进行的有计划、有组织的活动。质量保证是面向( A )的活动,是为了使产品实现( B )的功能。
2 p" C0 K1 }# W5 ?0 m4 q* D软件质量保证活动即为了确定、达到和( C )需要的软件质量而进行的所有有计划、有系统的管理活动。为了提高软件的( D )和( E ),软件质量保证的主要任务主要有:正确定义用户要求;力争不重复劳动;掌握开发新软件的软件工程学方法和工具;组织外部力量协作开发;排除( F );发挥每个开发者的能力;提高软件开发的( G );提高( H ),即将评价、评审工作在工程实施之前就列入整个开发工程的工程计划之中。! C- P$ S$ Y$ y" p, H' m8 G& v* ^

! f3 `# m6 {& p: f) w1 r2 t  供选择的资料:
  D0 _6 a0 b- Z  A, B.① 系统分析员   ② 开发者   ③ 消费者 - I- Y9 G# G3 v5 h* ~* [
     ④ 软件需求    ⑤ 用户要求
5 S* V8 o) b$ L- q( W& P6 t  ^  C~E.① 测试      ② 维护    ③ 质量) w1 F1 x# z( b! N: s
     ④ 价格       ⑤ 生产率   ⑥ 效率
8 R+ ~" g5 a) y- a  F~H.① 冗余      ② 无效劳动  ③ 开发方法
  z) [" ?( x+ q) ^; s3 I0 a5 l     ④ 工程过程能力  ⑤ 测试能力  ⑥ 计划和管理质量  n) i  @+ Y. J- u. |/ Z
     ⑦ 测试和维护的效率
! s2 j, |; t* ~6 _/ u; l3 F* Q5 [. a4 M+ _8 D" ^
29.        ( A )是以提高软件质量为目的的技术活动。把( B )定义为“用户的满意程度”。为使得用户满意,有两个必要条件:( i2 i9 ]) ^2 y. U) l4 {  a5 c
   (1)设计的规格说明要符合用户的要求;) C) Q& Z1 h/ ?" x4 L
   (2)程序要按照设计规格说明所规定的情况正确执行。8 k7 I8 ^/ M4 T+ z3 X
把上述条件(1)称为( C ),把条件(2)称为( D )。与上述观点相对应,软件的规格说明可以分为( E )和( F )。( E )是从用户角度来看的,包括硬件/软件系统设计(在( G )阶段进行)、功能设计(在需求分析阶段与概要设计阶段进行),而( F )是为了实现( E )的更详细的规格。: S* f+ z; g9 e" j/ y& m5 _
对( E )进行( A )时,( A )对象是在需求分析阶段产生的软件需求规格说明、数据要求规格说明,在软件概要设计阶段产生的软件概要设计规格说明等。
0 N5 ~, B7 p9 Z$ A2 C4 i1 `8 c0 N7 r) B4 h1 C3 H9 ?$ P7 H* q
  供选择的资料:4 Y. R; S/ b' w' x0 L; G! n
  A, B.① 技术创新    ② 管理评审    ③ 技术评审
1 ]/ w' x  `+ J. `" y     ④ 过程改进    ⑤ “质量”    ⑥ “数量”
" d) C* M# i. j8 R  C, D.① 程序流程      ② 程序质量2 x# X& s: z$ g! X+ }
     ③ 设计要求      ④ 设计质量8 ]( ^, b5 V; f' Z
  E~G.① 内部规格说明  ② 外部规格说明  ③ 概要设计
7 [% q7 ^6 @5 ~* `- A     ④ 详细设计    ⑤ 系统分析    ⑥ 需求分析
; g, B( ^7 z4 ~' Y  X( L" f
* R9 @" k1 q! o0 P* o' [, p30.        软件过程不断改进是( A )的基本原理之一,是( B )的基本过程之一。软件过程需要不断完善,首先从( C )的软件开发方式改变为( D )的软件开发方式,按照软件过程的系统方法进行软件的工程活动和管理活动,进而不断完善软件各个软件过程,从而不断提高( E )。/ v& ~, p# Z/ d$ {9 E) y/ u, J- C

- u  J0 S# m9 [9 z. m. }( |( M3 k  供选择的资料:! ~. a, `% A9 y- C9 k! k4 v
  A, B.① 软件过程      ② 软件工程七原理 4 `$ k" K6 u* [! Y
     ③ 软件生存期     ④ 软件需求* g# C8 @9 ^3 s) b
  C, D.① 工程化  ② 过程化 ③ 非过程化 ④ 非工程化5 B7 D1 P7 ], s' X- G, ?5 a# e
  E.① 软件工程能力 ② 软件过程能力 ③ 软件成熟度模型2 o- T) e4 ]1 h  T1 q" b; M
F.① 度量     ② 估算   ③ 评估    ④ 管理
$ }5 e  v: _. q1 W9 A
; W% _( q! x- q31.        CMM提供了一个框架,将软件过程改进的进化步骤组织成5个成熟度等级,为过程不断改进奠定了( A )的基础。这5个成熟度等级定义了一个( B )的尺度,用来衡量一个软件机构的( C )和评价其软件过程能力。每一个成熟度等级为继续改进过程提供了一个( D )。每一个等级包含了一组( E ),通过实施相应的一组( F )达到这一组( E )。5个成熟度等级各有其不同的行为特征,通过3个方面来表现,即一个机构为建立或改进软件过程所进行的活动,对每个项目所进行的活动和所产生的跨越各项目的过程能力。
0 [/ j* @( S8 s& x( N4 l+ e& L* }) Z2 U+ e  u5 W5 I
  供选择的资料:
% y4 D7 I4 \) e' |1 Q  A, B.① 无序   ② 有序   ③ 循环   ④ 循序渐进
* x; e" M! V8 X, u% ?4 x4 M- ~6 x  C~F.① 基本特征 ② 关键实践 ③ 关键过程域 ④ 台基
- Z' u0 N! }+ q4 c9 w& j$ L     ⑤ 过程目标 ⑥ 成熟度框架  ⑦ 软件过程成熟度$ y# ~, r0 @# s3 M
4 Y7 K1 z: x3 L
32.        从供选择的资料中选出同下列各条叙述关系最密切的字句。5 T5 z9 t4 S+ K" [5 b) O' J
  (1) 在软件开发中以下几方面的内容应分别在哪个文档中得到阐明:( z5 k& V+ ^; Z  t4 P" N0 e' K
  A. 软件总体结构  B. 运行环境  C. 出错处理设计
/ V* s1 D( r4 P6 J' V" `  (2) 以下两个文档应分别在哪两个阶段中开发:
( Q  S- i! @& ?2 A6 r/ X- _0 m0 b6 i  D. 初步的用户手册  E. 确认测试计划
- p2 y7 L7 A  Q% G& N  供选择的资料:
' `/ I2 d0 z' z0 a& M  A~C.① 可行性研究报告    ② 项目开发计划 , X4 _- D2 d& N. ^2 D
     ③ 软件需求规格说明   ④ 数据要求规格说明
7 }" v# U/ X5 q6 [' N0 |     ⑤ 概要设计规格说明   ⑥ 详细设计规格说明
8 A' s+ C* z  x6 P- l     ⑦ 测试计划   ⑧ 测试报告    ⑨ 用户手册( T5 C" T# W9 T6 t$ u; @' e) |
  D, E.① 可行性研究与计划  ② 需求分析   ③ 概要设计
. Y( R& }: ^1 n" `7 `     ④ 详细设计      ⑤ 测试     ⑥ 维护
% L" y: T) E9 ~( p0 Z
$ K  r5 W1 }) I# B# O7 x6 b! ~33.        基于软件人员能力成熟度模型的评估的依据是成熟度级别上的( A )。一个企业的成熟度级别是所有( A )被实施的( B )级别。软件企业通过评估结果可以了解( A )方面的强项和弱项,明确努力的方向。P-CMM模型并不禁止处于较低成熟度级别上的企业在需要的时候实施高一级关键过程域的内容。但是,由于每一级都是向上一级进化的基础,所以,跳越成熟度级别的进化是( C )。基于P-CMM 的改进工作和其他任何发展项目一样,第一要有( D ),第二要( E ),第三要有专人负责。卡内基―梅隆大学SEI的P-CMM顾问委员会建议:在软件工程小组内加入人力资源管理人员,以进行基于P-CMM的改进工作。这样,带给软件机构管理层的信息就是:一个致力于改善整个软件过程能力的项目强调的是( F ),缺一不可。6 g7 I2 S9 u2 t3 F1 j
  供选择的资料:/ i$ T5 p9 ^: I. B* B- Y4 u3 F
  A, B.① 最高     ② 最低   ③ 中间 9 y0 a' R) N, ?4 `  c
     ④ 关键过程域  ⑤ 实践   ⑥ 软件过程改进
! b- O- ^3 ]) ~/ f& T6 W* O/ F  C.① 无风险的  ② 有风险的  ③ 盲目的  ④ 可预测的
7 z' F$ G+ e' d# g  D, E.① 方法           ② 计划
$ I, L# A! j5 W     ③ 跟踪其发展       ④ 加速其进程
" v7 |3 }0 T8 q2 s  F.① 过程、技术和人员      ② 人力、软件和硬件1 k- [0 L! q. U( e
   ③ 目标、方法和过程      ④ 计划、测试和维护 / k8 g* t* {$ H, a5 S1 x: S
   ⑤ 过程、评估和检验! O5 h0 a( v' c% z2 r! W
  I5 h8 b$ H  ^1 j: F7 f
34.        质量体系是一种( A )。质量体系是通过若干( B )来实现的。( B )是将( C )转化为( D )的一组彼此相关的资源和活动。( B )本身具有( E )的效果,是一种有效益的行为。( F )是通过质量体系来实现的。一个组织机构建立自己的质量体系,并使之有效地运行,使达到( F )目标的重要手段。请选择合适的资料,完成下图的质量体系文件。
: ?. U6 I* Z* l" } # q! c# ^) P: k$ n& c
  供选择的资料:
% I, u  e, D; L  A.① 体系结构         ② 管理手段 / d* `0 C- J, D9 W2 ]  k* o
   ③ 质量改进过程       ④ 质量管理制度4 F3 D* M6 W2 y. V, B% U
  B~E.① 输出   ② 输入   ③ 接口   ④ 减少
; @- c/ s. R! Z! n: ~. o# E# g     ⑤ 增值   ⑥ 过程   ⑦ 扩充
4 S1 q& u) P# i( G1 b! Y0 M  F.① 质量保证         ② 质量管理. Q) v/ `; W9 d, a$ x) ~5 B
   ③ 质量检验         ④ 质量改进$ b: M  c, ^$ O4 p" G) X
  G~J.① 质量记录        ② 程序文件
6 E0 e& n" u. m5 N8 H     ③ 质量手册        ④ 作业指导书
( t& y' ^  H9 m7 P' @4 w2 J6 j- W6 j/ `1 h9 J
$ ?1 S: J8 T" ~% G
二、解答题) v4 |1 z4 h) l3 }! j$ b3 T4 A
1.        软件工程过程有哪几个基本过程活动?试说明之。
/ r9 k) L  e& a! t1 V2 v+ q- M" l+ _  G
2.        试说明“软件生存周期”的概念。( x" P5 T- e7 ?5 [& j

0 [- @( L0 m, G3.        试论述瀑布模型软件开发方法的基本过程。( _& w7 K* U3 i1 ]
4.        软件工程是开发、运行、维护和修复软件的系统化方法,它包含哪些要素?试说明之。
% p) O9 \+ Q/ U5.        软件工程学的基本原则有哪些?试说明之。 ; {+ T3 T  x* }6 A) O

* P3 P4 F. T7 N9 k6.        可行性研究的应从哪几个方面进行研究?
" u; B6 T6 T1 r/ r- U% H1 V7 o# @
& e# e+ J9 Z& D/ K% B6 r7.        可行性研究的目的是什么?
7 T  i0 B% V; ~$ R% C5 j: n  }
/ {+ c) [4 g# Q9 ?/ G8.        画出图书馆的借书的系统流图。& ~8 w+ v& z6 @. e  `) e2 O5 s

2 X! z& p1 z9 L  l9.        可行性研究报告的目的是什么?
. H0 a7 \- s9 J) k; J* ^$ R& u+ Z6 b% r1 y2 i% H' ^% ?8 x
10.        项目计划书的目的是什么?
+ ^1 j! j7 B5 n* d# Y8 X
% y! Y6 P: s" @: S5 t* w( l11.        在软件需求分析时,首先建立当前系统的物理模型,再根据物理模型建立当前系统的逻辑模型。试问:什么是当前系统?当前系统的物理模型与逻辑模型有什么差别? 2 ^- S7 p1 O6 e9 B( ^
1 H# b7 J4 I" W" A; G; @5 a
12.        软件需求分析是软件工程过程中交换意见最频繁的步骤。为什么交换意见的途径会经常阻塞?
$ L6 q: K* z1 }/ Z" O4 R3 U& n13.        你认为一个系统分析员的理想训练和基础知识是什么?请说明理由。
9 k7 [0 t6 s8 q. K$ O$ ]+ q6 V: z14.        软件需求分析说明书主要包括哪些内容? 5 M- E5 ~# f0 t) ]

0 a: q0 a, F! I; l+ p& B2 r) s15.        数据流图的作用是什么?它有哪些基本成份?, H8 F' E/ g& Q! H/ \
5 S  E- g: ^9 B0 n; F" z- u
16.        考务处理系统的分层数据流图如下图所示。
' v0 L' J; I0 [  o7 s/ c3 b' {! w4 ?
& z/ t9 S; P9 c(a)顶层数据流图  U3 C. b" ^2 y

8 f2 }: X& z! ?  B3 w. n/ Z1 [(b)第1层数据流图+ y; k. K$ ]$ J% f

1 B  m; w: k+ r(c)加工1的子图
7 A( ^  @" _$ T0 n& o( k/ C0 ~ * s' P8 w( g% H& l
(d)加工2的子图# K& v; ?6 T9 J' `+ e
  该考务处理系统有如下功能:- q0 ^* w8 N* Q0 K
  ①对考生送来的报名表进行检查;3 d, i# P5 L4 r5 b
  ②对合格的报名表编好准考证号码后将准考证送给考生,并将汇总后的考生名单送给阅卷站;; N- J0 c$ e) A+ q0 F- c
  ③对阅卷站送来的成绩表进行检查,并根据考试中心指定的合格标准审定合格者;
# r4 `& S2 @! j4 y, Z0 K: ^  ④填写考生通知单(内容包含考试成绩及合格∕不合格标志),送给考生;3 M  c8 r- k7 E
⑤按地区、年龄、文化程度、职业、考试级别等进行成绩分类统计及试题难度分析,产生统计分析表。
% H, F4 E; f- ^$ P. c. P  (1)图(c)中,加工1.1的输入数据流是( A ),输出数据流是( B ),图 (b) 中 ,加工2的输出数据流是( C ) ,它是由( D )和( E )组成。8 t5 q3 T5 w2 O% E) C6 z& S% v# O
  供选择的资料:
9 i% [* f; q% ~, [3 Q  A~E:① 统计分析表
( @. |* r+ s' A/ o, ]     ② 报名表
' ^* |7 Q5 z8 N6 ?     ③ 准考证# P: L0 Y+ C  w7 K  _! o, \9 Y: ~
     ④ 考生通知单  J' N/ m1 y3 u3 Y% B2 L4 o2 n* Y
     ⑤ 合格报名表
1 x" x7 q: j, w( ^) R; G     ⑥ 难度分析表
$ i3 t+ F2 O0 C     ⑦ 错误成绩表) E9 M+ v& e2 {6 ?; e1 w- G# s
     ⑧ 分类统计表
7 b8 ?6 t1 o: r5 |5 m7 O. f  (2) 图(d)中的文件“试题得分表”是否在图(b)中漏掉了? 回答是( F )。; [, i6 H' U: A1 _
  供选择的资料:, Y4 O. f- E" {  w2 T0 K7 G  G: k- f
  F: ① “试题得分表”没有在图(b)中画出,是错误的。! {/ d! M' w6 H- N7 H
    ② “试题得分表”是图(b)中加工的内部文件,不必在图1 a' ^/ g. m% V: w2 G, R
      (b)中画出。1 J8 f# E, T; a& t
    ③ “试题得分表”是多余的。; C8 }5 q" l) j  e& [
6 Y) c+ y2 S7 ?& c' ?
17.        数据词典的作用是什么?它有哪些基本词条?
& y+ h/ ]0 ]- _  Z
& Y& l# m3 h/ }+ P5 C) Z18.        阅读下列关于开发人事管理系统的交互式工作方式的叙述,再回答问题。* A, l' ], D/ J" j+ l
  某大企业最近决定采用高性能微机开发人事管理系统,将4台联机终端分置于人事处的3个科室。该系统可供操作员和程序员使用,也可供人事处负责人和主管人事的副厂长等查询人事信息用。人事管理系统通过录入人事数据和修改、删除等操作,产生和更新各类人事文件,通过搜索这些文件进行各类人事信息的查询。+ c1 ^  `( x3 P0 W! M
  该企业有3000多个工人 、干部和技术人员 ,大体可分成机关科室、生产车间、后勤服务和开发研制部门等几类部门。厂领导决定由计算机应用科来负责协调和开发应用系统。计算机应用科科长指示系统工程师张某负责进行系统分析。
  ^* E7 C% `/ `+ ^# M( V  考虑到人事处有大量的查询信息要求、频繁的人事信息修改和文件存档、查阅等特点,计算机应用科决定认真设计人机交互界面,首先设计好在终端上的交互式会话的方式。
5 }! }1 |! [0 w# E1 `& w! E  系统工程师张某通过调查收集到如下10条意见:& E6 f3 Z. @5 C$ m! q# i9 T
  (1) 某程序员认为:系统在屏幕格式、编码等方面应具有一致性和清晰性,否则会影响操作人员的工作效率。
/ z2 O/ B. \3 r  N; U) T% H  (2) 某操作人员认为:在交互式会话过程中,操作人员可能会忘记或记错某些事情,系统应当提供HELP功能。
( ^5 T0 K  y5 y9 O3 k) ~  (3) 某操作人员认为:既然是交互式会话,那么对所有的输入都应当作出响应,不应出现击键后计算机没有任何反应的情况。" B$ b2 i7 |8 q/ s
  (4) 某操作人员认为:在出错的时候,交互式会话系统应当给出出错信息,并且尽可能告诉我们出错的性质和错在什么地方。
0 K+ W% k0 t# O( X5 J; d  (5) 某程序员认为:终端会话也应当符合程序员编制程序时的习惯,这样可以更高效地维护人事管理系统。
) p9 m2 j+ `0 [  k: Q# P  (6) 教育科干部甲认为:应当对操作员进行一些必要的培训,让他们掌握交互式会话系统的设计技巧,有助于提高系统的使用效率。( O, b. B4 h2 z
  (7) 教育科干部乙认为:尽管操作人员的指法已经强化训练但在交互式会话时应尽可能缩短和减少操作员输入的信息,以降低出错概率。
# ], V) N2 ?0 e# U1 X  (8) 某程序员认为:由于本企业中有很多较大的文件,文件的查找很费时间,交互式会话系统在响应时间较长时应给予使用者以提示信息。
) U' K, N' x9 G3 ~  (9) 人事处干部丙认为:我们企业的人事资料相当复杂,格式非常之多,希望交互式系统使用十分清晰的格式,并容易对输入数据中的错误进行修改。" ~8 h" V! w+ a0 U, T6 a) g
  (10)人事处干部丁认为:人事管理系统应当具有相当的保密性和数据安全性 ,因此在屏幕上显示出的信息应该含混一些 ,以免泄密。
5 I) n7 Z0 }' I' c( w5 N+ Z系统工程师张某对上述调查情况和其他要求作了分析后,发现收集到的10条意见中有3条意见是不能接受的 ,写出编号并各用40字以内字数叙述理由。
! t. y( J$ I5 e3 r
3 `1 ]  [4 s0 r6 p' `6 |# g1.        建立分析和设计模型的一种重要方法是UML。试问UML是一种什么样的建模方法?它如何表示一个系统?
/ {( Y; U0 @; ]! C  
& J! X8 x- _, P+ Y" X' [2 x2.        在类的设计中需要遵循的方针是什么?三个主要的设计准则:抽象、信息隐蔽和模块化如何才能做到?
7 I7 N. E6 X* J% W/ x" {6 p% Q
2 [1 t* C' l3 N- [* r  L7 t; B7 u: [9 E3.        使用面向对象设计方法 进行高层设计 ,以建立系统的体系结构。这样的结构有哪几种主要的组成部分?每一部分所承担的职责是什么? , P8 h5 @$ c) s. t$ e
+ e; U7 t/ n5 h) m& m5 J- M
4.        写出“家庭保安系统”中“门窗监测”的场景
) a( u0 |- Y5 [! t- C
4 u  a% [7 x* i6 n7 X5.        画出“传感器监测”的用例的活动图。 " M: X5 c' W: R/ H+ o& H- a
. S6 v' B: Q/ {! t3 [
6.        逐步求精、分层过程与抽象等概念之间的相互关系如何?
1 B$ B5 c2 ~' s- Z) H) h* Q* j$ Q, n* U2 n- A2 `
7.        完成良好的软件设计应遵循哪些原则?
0 n5 s4 O: ~# p5 R  ~/ u3 Z5 U# i; F% e( Z, Y
8.        如何理解模块独立性?用什么指标来衡量模块独立性?
9 L- P( \  ?7 r* T. {3 ^: n
* Y7 i( b) P6 m, m4 Q8 |0 r9.        什么是变换流和事务流?
- c( G9 E6 Q+ ]
% k! w, |# ?; ^; ?5 L10.        面向数据流的体系结构设计时,如何运用变换映射进行转换?+ f3 @: e4 l  z5 k$ c  O

' ]4 h7 I" |' y! g+ l/ l6 R11.        面向数据流设计中的启发式设计策略是什么? 4 F4 m) t; J1 D! H& T

+ f$ c4 B( y$ W' Y! ~) j" ^; }* D5 W( l+ S# g7 t3 R
奥鹏作业答案,奥鹏在线作业答案
您需要登录后才可以回帖 登录 | 会员注册

本版积分规则

 
 
客服一
客服二
客服三
客服四
点这里给我发消息
点这里给我发消息
谋学网奥鹏同学群2
微信客服扫一扫

QQ|关于我们|联系方式|网站特点|加入VIP|加盟合作|投诉建议|法律申明|Archiver|小黑屋|奥鹏作业答案-谋学网 ( 湘ICP备2021015247号 )

GMT+8, 2024-4-25 19:47 , Processed in 0.134001 second(s), 23 queries .

Powered by Discuz! X3.5

Copyright © 2001-2023 Tencent Cloud.

快速回复 返回顶部 返回列表