当前位置:
文档之家› 南昌大学《软件工程》期末考试试卷B答案
南昌大学《软件工程》期末考试试卷B答案
面向对象方法之所以特别有利于软件复用,是由于它的主要概念及原则与软件 复用的要求十分吻合。支持复用的 OO 概念与原则是:对象与类、抽象、封装、继 承与一般——特殊结构、整合与整体——部分结构、粒度控制、多态性。对象与类: OO 方法用对象描述问题域中的事务,并用类作为同种对象的抽象表示。类是系统 的基本构成单位,它符合可复用构件所应具备的那些特性:完整性、独立性、可标 识性、一般性、抽象、封装:尤其是 OO 方法的对象封装性,为软件复用技术提供 了良好的条件。(3 分) 4、面向对象分析有哪三类模型?每类模型的作用是什么? 答:对象模型,功能模型,动态模型。(2 分)
(1)?根据上述数据确定 MTTF 与测试时间之间的函数关系,画出 MTTF 与测试时间 τ 的关系曲线。在画这条曲线时做了什么假设?? (2)?为做到 MTTF=100h,必须进行多长时间的集成测试? (3)当集成测试结束时总共改正了多少个错误,还有多少个错误潜伏在程序中? 答: (1) 由题意,不妨假设平均无故障时间 MTTF 与测试时间 τ 之间存在线性关系, 即 MTTF=a+bτ,???? 由于:10=a+b,15=a+2b,???? 得到:a=5,b=5????? 所以平均无故障时间 MTTF 与测试时间 τ 之间存在线性关系为: MTTF=5+5τ
X=XX+7值 d
abdf 第一个判断为真,第二个判断 9
为真 f
abef
第一个判断为真,第EN二D个判断
-1
为假
第二组测试用例:
数据 A=4,B=2,X=4
覆盖路径
覆盖分支
X值
acdf 第一个判断为假,第二个判断 11
为真
A=4,B=2,X=1
acef 第一个判断为假,第二个判断 -1 为假
C)中级程序设计语言
D)低级程序设计语言
9、可行性研究实质上是进行了一次
(A)
A)大大压缩简化了的系统分析和设计过程 B)详尽的系统分析和设计过程 C)彻底的系统设计过程 D)深入的需求分析 10、软件开发和维护过程中出现的一系列严重问题称为(D) A)软件工程 B)软件开发 C)软件周期 D)软件危机
一.对象模型:描述系统的静态结构,包括类和对象,它们的属性和操作,以 及它们之间的关系。数据词典:用以描述类,属性和关系;二.动态模型:着重于 系统的控制逻辑,考察在任何时候对象及其关系的改变,描述这些涉及时序和改变 的状态。三.功能模型:着重于系统内部数据的传送和处理。数据流图从输入数据 能得到什么样的输出数据,不考虑参加计算的数据按什么时序执行。(3 分)
题分 20 10 20 20 30
人 100
签名
得分
考生姓名:
考生学
考 所属学院:
所号属:班
生 所属专业:
考级试:日
填
考生
1换、。请考生务必查看试卷中是否有缺期页:或破损。如有立即举手报告以便更
写
须知
2、严禁代考,违者双方均开除学籍;严禁舞弊,违者取消学位授予资格; 严禁带手机等有储存或传递信息功能的电子设备等入场(包括开卷考
—南昌大学考试试卷—
【适用时间:20~20 学年第学期试卷类型:[]卷】
课程编号:
试卷编
课程名称: 软件工程 教 师 开课学院: 信息工程学院
填 适用班级:
写
号:
考试形 考式试:时 间:
闭卷 120 分钟
栏
试卷说明:
1、本试卷共 8 页。 2、考试结束后,考生不得将试卷、答题纸和草稿纸带出考场。
题号 一 二 三 四 五 六 七 八 九 十 总分 累分
(2) 为做到 MTTF=100h,有方程:100=5+5τ,
故 τ=19????即必须进行 19 个月的集成测试。 (3) 由于经验:平均无故障时间与单位长度程序中剩余的错误数成反比, 故有:?MTTF=10000/(?K?*?(ET-EC(τ)?)?)????? 由于:10=10000/(?K?*?(ET-15)?),
(对象模型)、(动态模型)、(功能模型)。
三、简答题:(每题 5 分,共 20 分)
得分 评阅人
1、说明软件测试在软件开发阶段的地位和作用。比较测试和调试的异同点。 回答要点: 1、保证软件质量的关键步骤,是对软件规格说明、设计和编码的最后复审(3 分) 2、测试是为了发现错误、调试是为了改正错误(2 分) 2、什么是需求分析?在需求分析阶段,建立目标系统的逻辑模型的具体做法是什 么?
四、程序设计题:(每小题 10 分,共 20 分)
得分 评阅人
1、根据下列 NS 图画出其 PAD 图。
a
b
T
X1
F
f
X2
T
X4
F
=1
=2 =3
i DO_UNTILX5
DO_WHILEX3 g
c
de
h
DO_UNTILX6
j 参考答案:三个嵌套层次,每个 1 分,共三分;每个控制结构 1 分;
2、对一个包含 10000 条机器指令的程序进行一个月集成测试后,总共改正了 15 个错误,此时 MTTF=10h;经过两个月测试后,总共改正了 25 个错误(第二个月改 正了 10 个错误),MTTF=15h。
BEGIN IF(A>4)AND(B=2)THEN X=X/2 ENDIF IF(A=6)OR(X>1)THEN
BEGIN
a
F
T
A>4ANDB=2
X=X+7
c
X=X/2
b
ELSE
X=X-2
ENDIF END
F
T
A=6ORX>1
第一组测试用例:
数据 A=6,B=2,X=4
A=5,B=2,X=2
覆盖路径 e X=X-2 覆盖分支
栏
考生
试), 违 本者 人知按道舞考弊试处违理纪;、不作得弊自的备严草重稿性纸,。将严格遵守考场纪律,如若违反
则愿意接受学校按有关规定处分!
承诺
考生签名:
一、单项选择题:(每题 2 分,共 20 分)
得分 评阅人
1、软件开发瀑布模型中的软件定义时期各个阶段依次是:(A)
A)问题定义,可行性研究,需求分析。
A)系统设计
B)详细设计
C)软件设计
D)编码
6、软件设计阶段的输出主要是(D)
A)程序
B)模块
C)伪代码
D)设计规格说明书
7、在整个软件维护阶段所花费的全部工作中,(C)所占比例最大。
A)改正性维护
B)适应性维护
C)完善性维护
D)预防性维护
8、指出 PDL 是下列哪种语言(A)。
A)伪码
B)高级程序设计语言
五、应用题:(每小题 15 分,共 30 分)
得分 评阅人
1、 用 SA 方法画出下列问题的顶层和 0 层数据流图。
某运动会管理系统接受来自运动员的报名单、裁判的比赛项目及项目成绩,产生运 动员号码单发送给运动员,项目参加者发送给裁判,单项名次、团体名次发送给发 布台。该系统有两部分功能: (1)登记报名单:接受报名单、比赛项目,产生运动员号码单、项目参加者,形 成运动员名单及团体成绩表两种数据存储。 (2)统计成绩:接受项目成绩,查询运动员名单,产生单项名次,填写团体成绩, 最后产生团体 2、已知被测试模块伪代码如下,先画出程序流程图,再按照“判定”覆盖法,在 表格中填入满足测试要求的数据。
B)可行性研究,问题定义,需求分析。
C)可行性研究,需求分析,问题定义。
D)以上顺序都不对。
2、在设计测试用例时,(A)是用得最多的一种黑盒测试方法。
A)等价类划分
B)边界值分析
C)因果图
D)判定表
3、按照软件工程的原则,模块的作用域和模块的控制域之间的关系是:(C)
A)模块的控制域应在模块的作用域之内。
B)模块的控制域与模块的作用域互相独立。
C)模块的作用域应在模块的控制域之内。
D)以上说法都不对。
4、需求分析的主要任务是:
(B)
A)确定系统怎样完成工作。
B)确定系统必须完成哪些工作。
C)研究系统的软件结构。
D)确定软件开发费用。
5、面向数据结构的设计方法(Jackson 方法)是进行(B)的形式化的方法。
15?=?10000/(?K?*?(ET-25)?), 得到:ET=45,K=33.33????? 当集成测试结束时,MTTF=100h,有: 100?=?10000/(?33.33?*?(?45-EC(19)?)?)???? 故:EC(19)=42,即当集成测试结束时总共改正了 42 个错误,还有 45-42=3 个错误 潜伏在程序中。
答:需求分析是当前软件工程中的关键问题,需求分析阶段的任务是:在可行性分
析的基础上,进一步了解、确定用户需求。准确地回答“系统必须做什么?”的问题。
获得需求规格说明书。还涉及到软件系统的目标、软件系统提供的服务、软件系统
的约束和软件系统运行的环境。它还涉及到这些因素和系统的精确规格说明,以及
系统进化之间的关系。 (
2 分)
首先确定目标系统与当前系统的逻辑差别;然后将变化部分看作是新的处理步骤, 对功能图及对象图进行调整;最后由外及里对变化的部分进行分析,推断其结构, 获得目标系统的逻辑模型。通常用数据流图、数据字典和主要的处理算法描述这个 逻辑模型。(3 分) 3、什么是软件复用?分析说明为什么面向对象的开发方法为软件复用技术提供了 良好的环境? 答:软件复用是将已有的软件成分用于构造新的软件系统,以达到提高软件系统的 开发质量与效率,降低开发成本的目的。可复用的软件成分—称为可复用构件 (ReusableComponent),从旧软件中提取,也可以专门为复用而开发。(2 分)