中南大学软件工程历届试卷

填空题(本题20分,每小题2分)
1. 瀑布模型是以文档为驱动、适合于(软件需求确定的)软件项目的开发。
2. 需求分析的基本任务是(确定用户需要软件做什么)。
3. 若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0,1.0],现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001。设计这组测试用例的方法是(边界值分析法)。
4. 根据程序流程图划分的模块通常是(过程)内聚的模块。
5. 软件的分类,按其功能可分为:系统软件、(支撑软件)和应用软件。
6. UML的定义包括UML语义和(UML表示法)两个部分。
7. 客观世界中的若干类,通常有两种主要的结构关系:即分类结构和( 整体与部分结构)。
四、测试题(本题16分,每小题8分)
某程序的程序流程图如下图所示,试据此回答下述问题:
1. 计算程序的环形复杂度;
2. 设计测试用例,满足基本路径覆盖。
四.(1)环路复杂性=判断数+1=6+1=7(个)
(2)路径1:(0)—①—(13)—(19)
路径2:(0)—②—③—(14)—(19)
路径3:(0)—②—④—⑤—(15)—(19)
路径4:(0)—②—④—⑥—⑦—(16)—(19)
路径5:(0)—②—④—⑥—⑧—⑨—(17)—(19)
路径6:(0)—②—④—⑥—⑧—⑩—(18)—(19)
路径7:(0)—②—④—⑥—⑧—⑩—(12)—(19)
一、填空题(本题30分,每小题1.5分)
1、软件是计算机程序、(描述计算机程序的文档)及(数据)的完整集合,将其统称为软件配置,这些项称为软件配置项。通过正式复审的软件配置项称为(基线),只有通过正式的变化控制过程才能改变它。
2、通常,将软件生命周期全过程中使用的一整套技术方法的集合称为方法学,包含三个要素,即方法、(工具)和(过程)。传统方法学采用(结构化)技术来自顶向下顺序地完成软件开发的各项任务,
而面向对象方法是一种以(数据)为主线,把数据和对数据的操作紧密地结合起来的方法,其开发过程是一个多次迭代的演化过程。
3、软件测试的目标是(暴露程序中的错误),因而从心理学角度来看,由程序作者对自己编写的程序进行测试是不恰当的。设计测试方案是测试阶段的关键技术问题,测试方案一般包括(测试目的)、输入的测试数据
和(预期的结果)。
4、模型是为了理解事物而对事物作出的一种抽象,由(一组图示符号一组图示符号)和(组织这些符号的规则)组成。对象模型描述了系统的静态结构,通常使用UML提供的(类图)图来描述。
5、需求分析的基本任务是(准确地回答系统必须做什么),在需求分析结束前,系统分析员应该写出(软件需求规格说明书),以书面的形式准确描述软件需求。
6、面向数据流的设计方法把(信息流)映射成软件结构,依据其类型的不同,有两种不同的映射方法,分别是(变换分析)和(事物分析)方法。
7、软件设计一般分为(概要设计 )和(概要设计 )两个阶段。
二、简答题(本题18分,每小题6分)
1、瀑布模型是软件工程中应用最广泛的过程模型,试述采用瀑布模型进行软件开发的基本过程,该过程有何特点?
答案:
1、瀑布模型规定了各项软件工程活动,包括需求分析、规格说明、设计、编码、测试和维护,并规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级而下。瀑布模型的特点是:阶段间具有顺序性和依赖性;清楚区分逻辑设计和物理设计,尽可能推迟程序的物理实现;每个阶段都必须完成规定的文档,且每阶段结束前需要对完成的文档进行评审。
2、什么是软件配置管理?软件配置管理和软件维护有何不同?
答案
2、软件配置管理是在软件生命周期内管理变化的一组活动,用来:标识变化、控制变化、确保适当地实现了变化、向相关人员报告变化。
软件配置管理和软件维护的区别是:软件配置管理是一组追踪和控制活动,在软件项目启动时就开始,并一直持续到软件被淘汰后才终止;软件维护是一组软件工程活动,发生于软件交付给用户并投入运行之后。
3、试举例说明聚集关系中共享聚集和组合聚集有何不同。
答案
3、如果在聚集关系中部分对象可同时参与多个整体对象的构成,则该聚集称为共享聚集。例如,一个课题组包含许多成员,每个成员又可以是另一个课题组的成员,则课题组和成员之间是一种共享聚集的关系。
如果部分对象完全隶属于整体对象,并与整体对象共存,则该聚集称为组合聚集。例如,在屏幕上一个窗口由文本框、列表框、按钮和菜单等构成,且一旦关闭了窗口,则各组成部分也消失,则窗口和它的组成部分之间的关系为组合聚集关系。
三、分析题(本题20分)
某住宅安全系统使用传感器(如红外探头等)来检测各种意外情况,如非法进入、火警等,其顶层DFD图如图3-1所示。房主可以在安装该系统时配置安全监控设备,如传感器、报警器等,也可在系统运行时修改配置,通过录像机和电视机监控与系统连接的所有传感器,并通过控制面板上的键盘与系统进行信息交互。在安装过程中,系统给每个传感器赋予一个编号和类型,并设置房主密码以启动和关闭系统,设置传感器事件发生时应该自动拨出的电话号码。当系统检测到一个传感器事件时,就激活报警,拨出预置的电话号码,并报告位置等有关信息。请回答以下问题:
(1)图3-1中A,B,C分别是什么?(6分)
(2)第0层DFD图如图3-2所示,则图中W,X,Y,Z分别是什么?(8分)
(3)请说明如何采用DFD图计算功能点数。(6分)
图3-1 住宅安全系统顶层DFD图
图3-2住宅安全系统第0层DFD图
答案(1)、A:控制面板 B、报警器 C、传感器
(2)、W: 用户配置请求 X: 用户密码 Y: 传感器状态 Z: 告警信息
(3)、利用DFD图计算功能点数的步骤如下:首先通过DFD图获取输入项数、输出项数、查询数、主文件数和外部接口数,然后计算未调整的功能点数,再计算技术复杂因子,最后计算功能点数。
四、设计题(本题15分)
某汽车租赁公司打算采用计算机系统来管理汽车租赁业务,其设计方案采用UML类图描述如图4-1所示。图4-1中的类有:Renter(租赁者)、Person(人)、Company(租赁公司)和Automobile(汽车)。租赁公司既可将汽车租给个人,也可将汽车租给其他租赁公司。在设计时暂不考虑未租出去的汽车。请回答以下问题:
(1)试说明图4-1设计方案存在的问题。(7分)
(2)针对图4-1设计方案中存在的问题,给出改进的设计方案,并用UML类图描述。(8分)
图4-1 汽车租赁业务管理系统设计方案
答案(1)图4-1设计方案存在的问题如下:1)未能完全反映租赁关系的内容,如租赁日期等;2)公司、被租赁汽车和租赁者三者之间的关系未能描述。
(2)改进后的类图如下图所示。
图中,Tenancy表示一次租赁对应的事项。
五、(1)程序流程图如下:
(2)MaCabe环形复杂度为7。
(3)满足基本路径覆盖的测试用例共7个,假定各节点的编号如下图示,则测试用例如下表所示。
序号基本路径输入:期末考试成绩输入:平时成绩预期结果:成绩
1a->b->c->d->l90优优
2a->b->c->g->l90差良
3a->b->e->f->g->l80优良
4a->b->e->f->j->l80差及格
5a->b->e->h->i->j->
70优及格
l
65差不及格
6a->b->e->h->i->k->
l
7a->b->e->h->k->l54优(或差)不及格
填空题(本题30分,每空2分)
1. 软件测试的目的是(发现错误)。
2. 软件按服务对象可分为项目软件和(产品软件)。
3. 在常见的软件生存期模型中,(螺旋)模型是风险驱动的。
4. UML通过三种扩展机制来扩充UML的建模能力,分别是(约束)、构造型和(标记值)。
5. 在软件测试用例的设计方法中,白盒法以(程序内部数据结构 )为依据设计测试用例,
6. 在面向对象设计原则中,(组装复用)原则要求在新的对象里尽量使用已有的类对应的对象,并通过(委派)达到复用已有功能的目的。
7. 状态图描述一个类对象所经历的( 各种状态)以及事件发生时状态的(转移条件 ).
8.SOFL软件开发方法学认为,在需求分析和规格说明阶段应该采用( 结构化)方法,而在设计和实现阶段则应该采用(面向对象)方法。
9. 可行性研究的内容包括(技术可行性)、经济可行性和(操作可行性 )。
10. IDEF0图的主要元素是简单的盒子及箭头,其中盒子代表系统的功能,而箭头表示系统处理的(数据约束 )。

本文发布于:2024-09-21 10:50:13,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/483023.html

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

标签:软件   系统   设计   程序   对象
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议