国家开放大学电大本科《软件工程》期末试题及答案(试卷号:1260)
一、选择题,请从四个可选项中选择正确答案。(60分,每题3分)
1. 软件开发活动的顺序应该是( )。
A.  问题定义、可行性研究、需求分析、设计、编码和测试
B.  问题定义、设计、可行性研究、编码和测试
C.  需求分析、设计、编码和测试
D.  需求分析、编码和测试、试运行
2. 美国卡内基·梅隆大学制定的SWCMM是( )。
A.  软件工作规范
B.  软件工作流描述
C.  软件描述的一般方法
D.  软件成熟度模型
3. 假定银行的存款年利率是2%,请问现在存5000元,两年后价值应为( )元。
A.5202
B. 4500
C. 5100
D.4712
4. 系统物理模型用( )表示。
A. 系统流程图
B.  数据流程图
C.  程序流程图
D.  E - R 图
5. 关于软件需求特性不正确的描述是“软件需求具有( )”。
A.  多变性
B.  模糊性
C.  准确性
D.  主观性
6. 软件结构图中没有()元素。
A.  模块
B.  调用参数
C.返回参数
D. 判断
7. 程序流程图与数据流程图的关系(  )。
A. 不确定
B.  数据流程图可以转换成程序流程图
C.  数据调用关系
D. 程序流程图可以转换成数据流程图
8. 包含关系用于构造多个用例(  )。
A. 关系
B. 共性的部分
C. 角
D. 特殊活动
9. 如果说用例F被用例T扩展,意思是( )。
A. F是一个一般用例,T是一个特殊用例
B.  F是一个特殊用户,T是一个一般用例
C. 都是一般用例
D. 都是特殊用例
10. 用( )对需要长久保存的信息进行建模。
A. 实体类
B. 数据库表
C. E - R 图
D. 对象类
11. 面向对象程序设计的基本机制(  )。
A.  继承
B.  消息
C.  方法
D.  结构
12.面向对象分析和设计的界限是(  ),从分析到设计是一个逐渐扩充模型的过程。
A. 清晰的
B.  模糊的
C,非线性的
D.  确定的
13.动态模型描述系统的动态结构和对象之间的交互,表示瞬时的、行为化的系统“控制”特性。面向对象方法中,常用(  )实现。
A. 状态图
B.  交互图
C.  活动图
D.  以上全部
14.不适合作为数据处理与数据库应用的语言是(  )。
对象模型是什么A. soL
B. Cobol
C. 4GL
D.  Lisp
15. 程序设计语言的技术特性不应包括(  )。
A.  数据结构的描述性
B.  抽象类型的描述性
C.  数据库的易操作性
D.  软件的可移植性
16. 程序的三种基本控制结构,包括顺序结构、(  )和循环结构。
A. 条件/判断结构
B.  说明结构
C.  输入结构
D.  输出结构
17. 一般性的软件其测试工作量大约占整个开发工作量的(  )。
A.  小于10%
B.  40%
C.  90%
D.  大于100
18. 下面哪些测试方法属于黑盒测试(  )。
A.  路径测试
B.  等价类划分
C.条件判断
D.  循环测试
19. 不属于软件项目管理的是( )。
A. 开发机构能力评估
B.  项目风险评估
C.  质量监控
D. 软件销售利润
20.软件特性中,相互矛盾的是(  )。
A.  可理解性与可测试性
B.  效率与可修改性
C.  可修改性和可理解性
D. 可理解性与可读性
二、简答题(30分,每小题6分)
21.请给出软件工程七条基本原理中的任意6条基本原理。
答:原理1.用分阶段的生命周期计划严格管理
原理2.坚持进行阶段评审
原理3.实行严格的产品控制
原理4.采用现代程序设计技术
原理5.结果应能清楚地审查
原理6.开发小组的人员应该少而精
原理7.承认不断改进软件工程实践的必要性
评分标准:每个原理1分
22.试分析结构化方法存在的主要问题是什么?
答;(1)结构化方法分析和设计阶段所应用的模型之间存在鸿沟。分析阶段的主要模型是数据流程图,设计阶段的主要模型是软件模块结构图,数据流程图和软件模块结构图之间需要进行转换。不同的人转换出的模块图可能不同,有很大的随意性。
(2)需求分析的细化程度没有标准,只能凭惜分析人员的经验自己把握;需求分析的过程是在一种瀑布形式,当需求变更时,功能变化就会导致软件模块结构发生变化,造成了软件结构不稳定。
(3)结构化程序设计将数据定义与处理数据的过程相分离,不利于软件复用。
(4)结构化方法设计的软件结构不稳定,缺乏灵活性,可维护性差。
23.面向对象的分析通常要建立三个模型,请问三个模型的作用?
答:(a)功能模型:表达系统的详细需求.为软件的进一步分析和设计打下基础。在面向对象方法中.
由用例图和场景描述组成。
(b)对象模型:表示静态的、结构化的系统“数据”性质。描述现实世界中实体的对象以及它们之间的关系,表示目标系统的静态数据结构。在面向对象方法中,类图是构建对象模型的核心工具.
(c)动态模型:描述系统的动态结构和对象之间的交互,表示瞬时的.行为化的系统的“控制”特性。面向对象方法中,常用状态图、顺序图、合作图、活动图构建系统的动态模型。
24.软件需求可以分为业务需求、用户需求、功能需求和非功能需求,请分析业务需求与功能需求的区别?
答:业务需求是用户高层领导机构决定的,它确定软件的目标、规模和范围。业务需求一般在进行需求分析之前就应该确定,需求分析阶段要以此为参照制定需求调研计划、确定用户核心需求和软件功能需求。业务需求通常比较简洁,大约三~五页纸就可以描述清楚,也可以将它直接作为需求规格说明书中的--部分。
功能需求定义了软件开发人员必须实现的软件功能。用户从他们完成任务的角度对软件提出了用户需求,这些需求通常是凌乱的、非系统化的.有冗余的,开发人员不能据此编写程序。软件分析人员要充分理解用户需求,将用户需求整理成软件功能需求。开发人员根据功能需求进行软件设计和编码。
评分标准:业务需求和功能需求各占3分。
25.一个程序片段如下,请设计符合判定覆盖的测试用例。
if(a>=5)&&(b<0){
c=a+b;
else
c=a-b;
if(c>5)(c<1)
printf(“c不在计算区域\n”);
else
printf(“%d\n”,        c)};
答:判断覆盖标准为,不仅使每条语句都至少执行-.次,还要使程序中每个分支都至少执行一次。也就是说,设计的测试用例使每个判定都有一次取“真”和“假”的机会。
测试用例(不唯---):a=16 b=11 c=16;a=5 b=10 c=15
评分标准:分析2分,每个测试用例各占2分。
三、应用题(10分)
26.学校教师工资管理系统的需求描述如下:教师每月末将本月的工作量输入到系统中,学院负责人对教师输入的工作量进行审核,财务部门对审核后的工作量计算本月工资,本月工资2基本工资十各种补

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。