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

合集下载

软工历年考题(加答案)

软工历年考题(加答案)

试卷一中南大学考试试卷2006--2006 学年学期时间110分钟软件工程课程48 学时 3 学分考试形式:闭卷专业年级:总分100分,占总评成绩100 %注:此页不作答题纸,请将答案写在答题纸上1.填空题(本题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. 客观世界中的若干类,通常有两种主要的结构关系:即分类结构和( 整体与部分结构)。

8. IDEF1X图用来描述系统的(数据)模型,主要有实体、联系和(属性)三种成分,其中实体可分为独立实体和(依赖实体),且一个实体只能在图中出现一次。

二、简答题(本题30分,每小题5分)1. 什么是软件工程?软件工程和计算机科学有何区别?答:软件工程是指导软件开发和维护的工程性学科;计算机科学着重于原理和理论,软件工程与计算机科学不同,软件工程着重于如何建造软件系统,软件是计算机中看不见摸不着的逻辑部分,以程序、数据和文档的形式出现。

2. 面向对象方法和结构化方法有何区别与联系?答:区别:面向对象从所处理的数据入手,以数据为中心来描述系统,其基本思想是尽可能模拟人类习惯的思维方式,使开发软件的方法与过程尽可能接近人类认识世界的方法与过程,基本原则为:对象+类+继承+消息通信结构化方法首先关心的是功能,强调以模块为中心,其基本思想是自顶向下,逐步求精,单入口,单出口,基本原则为:抽象与功能的分解联系:软件开发过程中,在需求分析和规格说明阶段采用结构化方法,在设计和实现阶段采用面向对象方法。

《软件工程》试卷参考答案

《软件工程》试卷参考答案

考试试卷课程名称:软件工程一、选择题1、软件是一种实体。

A.有形的C.虚拟的答案:D 2、在一个用面向对象编程语言实现的软件系统中,当一个对象内的一个方法被激活,则称之为向该对象发送-A.命令B.代码C.消息D.数据答案:C 3、在整个软件过程中,哪个阶段花费最长的时间和最多的成本?A.分析B.设计C.实现D.维护答案:D 4、是语义上相连的、由边界符号界定的、由一个聚合标识符标识的一系列程序语句。

A.for 循环B.模块C.if 语句D.文件答案:B 5、好的软件设计,模块应该是。

A.低内聚、高耦合B.低内聚、低耦合C.r¾内聚、低耦合D.高内聚、高耦合答案:C6、针对下面这个用例图,哪个说法是错误的?B.物理 D.逻辑A.学生能够与系统中的用例A交互。

B.用例A的成功执行必须包括用例B的成功执行。

C.如果用例A执行,用例C也必须执行。

D,用例C可能不被激活。

答案:C7、顺序图与协作图都是图。

A.交互B.状态C.协作D.顺序答案:C8、以下关于软件系统中的实体的说法,哪个是正确的?A.实体类必须有属性。

B.实体类必须是实实在在的物理实体。

C.实体类不与逻辑类和边界类打交道。

D,用例图中的参与者是系统的外部,所以参与者肯定不能成为软件系统内部的实体类。

答案:A9、以下哪个是自顶向下实现与集成的缺点?A.逻辑模块得不到充分的测试。

B.操作模块得不到充分的测试。

C.主要设计错误发现的晚。

D.故障隔离。

答案:B10、软件测试oA.谁都能做,不需要计划和技术B.对于高水平的软件开发团队来说是不需要的,或可有可无的C.是紧接在实现阶段后面的一个阶段D.包括可执行测试和非执行测试答案:D11、使软件系统适应新的操作系统而做的维护是维护。

A.纠错性维护B.完善性维护C.适应性维护D.哪个也不是答案:C128、以下哪个软件生命周期模型是最好的?A.瀑布模型B.快速原型模型C,增量模型D.不能简单地比较优劣,要具体情况具体分析答案:D13、多态与动态绑定是所特有的。

软件工程学试题及答案

软件工程学试题及答案

软件工程学试题及答案一、单项选择题(每题2分,共10分)1. 软件工程的目的是()。

A. 提高软件的生产率B. 提高软件的运行效率C. 降低软件的生产成本D. 提高软件的可维护性答案:A2. 下列哪项不是软件需求分析的任务?()。

A. 确定软件的功能需求B. 确定软件的性能需求C. 确定软件的界面需求D. 确定软件的测试需求答案:D3. 软件生命周期中,()阶段是确定软件需求的阶段。

A. 需求分析B. 系统设计C. 编码D. 测试答案:A4. 软件测试的目的是()。

A. 证明软件是正确的B. 证明软件存在错误C. 发现软件中的错误D. 证明软件不存在错误答案:C5. 软件危机主要表现在()。

A. 软件成本B. 软件质量C. 软件进度D. 所有选项答案:D二、多项选择题(每题3分,共15分)1. 软件工程的基本原理包括()。

A. 用分阶段的生命周期计划严格管理B. 强调开发过程的迭代性质C. 采用合适的编程规范D. 强调软件工具的使用答案:ABD2. 软件需求分析的常用方法包括()。

A. 数据流图B. 用例图C. 状态转换图D. 流程图答案:ABC3. 软件测试的类型包括()。

A. 单元测试B. 集成测试C. 系统测试D. 验收测试答案:ABCD4. 软件维护的类型包括()。

A. 校正性维护B. 适应性维护C. 完善性维护D. 预防性维护答案:ABCD5. 软件工程中常用的设计模式包括()。

A. 单例模式B. 工厂模式C. 观察者模式D. 策略模式答案:ABCD三、简答题(每题5分,共20分)1. 简述软件工程中的模块化设计原则。

答案:模块化设计原则要求将系统分解成若干个模块,每个模块具有高内聚、低耦合的特点,以便于系统的开发、测试、维护和理解。

2. 描述软件需求分析的重要性。

答案:软件需求分析是软件开发过程中的关键步骤,它确保了开发团队对用户需求有清晰的理解,有助于避免开发出不符合用户需求的软件,减少返工和成本。

2022年中南大学软件工程专业《操作系统》科目期末试卷B(有答案)

2022年中南大学软件工程专业《操作系统》科目期末试卷B(有答案)

2022年中南大学软件工程专业《操作系统》科目期末试卷B(有答案)一、选择题1、()是操作系统中采用的以空间换取时间的技术。

A.Spooling 技术B.虚拟存储技术C.覆盖与交换技术D.通道技术2、为了使多个进程能有效地同时处理输入和输出,最好使用()结构的缓冲技术。

A.缓冲池B.循环缓冲C.单缓冲D.双缓冲3、考虑页面替换算法,系统有m个页帧(Frame)供调度,初始时全空:引用串(Reference String)长度为p.包含了n个不同的页号,无论用什么算法,缺页次数不会少于()A.mB.pC.nD.min(m,n)4、作业在执行中发生缺页中断,经操作系统处理后应让其执行()指令。

A.被中断的前一条B.被中断的那一条C.被中断的后·条D.启动时的第一条5、当系统发生抖动(Trashing)时,可以采取的有效措施是()。

I.撤销部分进程 II.增大磁做交换区的容量 III.提高用户进程的优先级A. 仅IB.仅IIC.仅IIID.仅I,II6、设计实时操作系统时,首先应该考虑系统的()。

A.可靠性和灵活性B.实时性和可靠性C.分配性和可靠性D.灵活性和实时性7、下列选项中,会导致用户进程从用户态切换到内核态的操作是()I.整数除以零 II.sin函数调用 III.read系统调用A.仅I、IIB.仅I、IIIC.仅II、IIID. I、II和II8、驱动调度算法中,()算法可能会随时改变移动臂的运动方向。

A.电梯调度B.最短寻道时间优先C.扫描D.单向扫描9、下列算法中,用于磁盘调度的是(),A.时间片轮转法B.LRU算法C.最短寻道时间优先算法D.高优先级算法10、进程调度算法中,可以设计成可抢占式的算法有()。

A.先来先服务调度算法B.最高响应比优先调度算法C.最短作业优先调度算法D.时间片轮转调度算法11、有两个并发执行的进程P1和P2,共享初值为1的变量x。

P1对x加1,P2对x减1。

2、软件工程复习题及答案

2、软件工程复习题及答案

中南大学现代远程教育课程考试(专科)复习题及参考答案软件工程一、单项选择题1、下列哪个阶段不是软件生存期三个阶段中的内容()。

A、计划阶段B、开发阶段C、编码阶段D、维护阶段2、软件按照设计的要求,在规定时间和条件下达到不出故障,持续运行的要求的质量特性称为 ( )A、可用性B、可靠性C、正确性D、完整性3、需求分析阶段结束后,应交出的文档中不包括()。

A、数据流图B、数据字典C、简明的算法描述D、项目的经费预算4、关于数据流图不正确的描述是()。

A、数据流图是结构化系统分析的主要工具。

B、在数据流图中,*号标识相邻的数据流只取其一。

C、加工是以数据结构或数据内容作为加工对象的。

D、数据流图的主图中必须包括全部四种基本元素。

5、瀑布模型的存在问题是()A、用户容易参与开发B、缺乏灵活性C、用户与开发者易沟通D、适用可变需求6、软件调试技术包括()A、边界值分析B、演绎法C、循环覆盖D、集成测试7、软件维护产生的副作用,是指()A、开发时的错误B、隐含的错误C、因修改软件而造成的错误D、运行时误操作8、软件测试不包括()方面的差错和纠错。

A、软件计划B、软件设计C、软件编码D、软件价格9、在快速原型模型的开发过程中,仅作为需求说明的补充形式的原型是()A、探索型模型B、演化型模型C、实验型模型D、提交型模型10、数据字典是软件需求分析阶段的最重要的工具之一,其最基本的功能是()A、数据控制B、数据定义C、数据操纵D、数据约束11、软件文档是软件工程实施中的重要成分,它不仅是软件开发各阶段的重要依据而且也影响软件的()A、可使用性B、可操作性C、可维护性D、可开发性12、在瀑布模型中,将软件开发划分为若干个时期,软件项目的可行性研究一般被归属于()A、定义时期B、分析论证时期C、调研时期D、初始阶段13、结构化分析方法是一种预先严格定义需求的方法,它在实施时强调的是分析对象的()A、数据流B、数据元素C、数据结构D、数据约束14、软件维护是软件得以正常运行的重要环节,按照软件工程方法的理解,一般软件维护应该开始于()A、修改源代码B、阅读设计文档C、阅读源代码D、修改设计文档15、以实体、联系和属性等基本概念为基础的实体联系图是基本实体联系图。

软件工程期末试卷(十套含答案)

软件工程期末试卷(十套含答案)

软件工程期末试卷(十套含答案)一、选择题(每题1分,共5分)A. 方法论B. 工具C. 过程D. 人员2. 下列哪一项不是软件生命周期的阶段?A. 需求分析B. 设计C. 编码D. 销售与市场A. 瀑布模型B. 喷泉模型C. 增量模型D. 敏捷模型4. 下列哪种方法不是软件需求获取的方法?A. 问卷调查B. 访谈C. 观察D. 编码A. 单一职责原则B. 开放封闭原则C. 里氏替换原则D. 依赖倒置原则二、判断题(每题1分,共5分)1. 软件工程的目标是生产出高质量的软件产品。

(√/×)2. 在软件开发过程中,需求分析阶段是最重要的阶段。

(√/×)3. 软件开发模型只有瀑布模型和喷泉模型两种。

(√/×)4. 在面向对象方法中,类是现实世界中实体的抽象。

(√/×)5. 软件测试的目的是证明软件的正确性。

(√/×)三、填空题(每题1分,共5分)1. 软件工程的三要素包括方法论、工具和______。

2. 软件生命周期包括需求分析、设计、编码、测试和______。

3. 在面向对象方法中,对象是现实世界中实体的______。

4. 软件开发模型包括瀑布模型、喷泉模型、增量模型和______。

5. 软件测试的目的是发现软件中的______。

四、简答题(每题2分,共10分)1. 简述软件工程的目标。

2. 简述软件生命周期的阶段。

3. 简述面向对象方法的基本概念。

4. 简述软件开发模型的作用。

5. 简述软件测试的目的。

五、应用题(每题2分,共10分)1. 假设你是一个软件开发人员,你需要为一个图书馆开发一个图书管理系统。

请列出该系统的需求。

2. 请解释瀑布模型和喷泉模型的区别。

3. 请解释面向对象方法中的继承和多态的概念。

4. 请解释软件测试中的黑盒测试和白盒测试的区别。

5. 请解释软件维护的类型。

六、分析题(每题5分,共10分)1. 假设你是一个软件开发人员,你需要为一个在线购物网站开发一个支付系统。

中南大学软件测试技术考试试卷

中南大学软件测试技术考试试卷
C . 9
D 12
12.针对程序段:IF ( X > 10 ) AND ( Y < 20 ) THEN W = W / A,对于(X , Y)的取值,以下组测试用例能够满足判定覆盖的要求。D
A . ( 30 , 15 ) ( 40 , 10 )
B . ( 5 , 25 ) ( 10 , 20 )
C . ( 3 , O ) ( 30 , 30 )

1.在进行性能测试时,我们通常会进行压力测试和负载测试,请简述什么是压力测试和负载测试,主要区别是什么。(10分)
负载测试是模拟实际软件系统所承受的负载条件的系统负荷,通过不断加载(如逐渐增加模拟用户的数量)或其它加载方式来观察不同负载下系统的响应时间和数据吞吐量、系统占用的资源(如CPU、内存)等,以检验系统的行为和特性,以发现系统可能存在的性能瓶颈、内存泄漏、不能实时同步等问题。负载测试更多地体现了一种方法或一种技术。
详细设计阶段:数据结构,算法是否正确,编码规范
编码阶段:单元测试,集成测试
系统验收阶段:测试系统是否完成了需求规格说明书中的所有内容
9.简述LOADRUNNER作用,描述其在实践中的基本操作步骤(10分)
答出主要步骤,并有说明即可得分
a.选择协议:LOADRUNNER在录制的过程中就可以通过脚本语言将通信过程录制下来。所以只要明确了被测软件的通信过程和所使用的协议,LOADRUNNER才能正确的录制脚本。
1.软件文档按照其产生和使用的范围可分为开发文档、管理文档和用户文档。其中开发文档不包括(B)。
A.软件需求说明B.可行性研究报告
C.维护修改建议D.工程开发计划
2.软件维护成本在软件成本中占较大比重。为降低维护的难度,可采取的措施有D

中南大学软件工程复习题及参考答案

中南大学软件工程复习题及参考答案

中南大学复习题及参照答案软件工程一、选择题:1.下面哪些UML图描述系统行为( A )A.用例图B.类图C.对象图2.属于概要设计活动旳是( A )A.软件构造设计B.数据构造设计C.算法设计3.属行为型设计模式旳是(C)A.组合模式B.工厂措施模式C.观测者模式4.下列说法对旳旳是( B )A.UML是软件开发措施B.UML是系统描述语言C.UML是软件开发过程5. 根据程序流程图划分旳模块一般是( B )A. 信息内聚旳模块B. 过程内聚旳模块C.逻辑内聚旳模块6.假如某程序中旳比较个数是m,则其McCabe环形复杂度为( C )A.m-1B.mC.m+17.按ISO9000-3旳阐明,下列属软件配置项旳是( C )A.软件开发措施B.软件开发组织管理制度C.软件开发协议8. 软件测试旳目旳是( C )A.证明软件无错B.发现软件中旳所有错误C.尽量发现软件系统中旳错误9.软件重构关注旳是( B )A. 软件体系构造B. 模块细节C.软件性能10.软件项目开发计划旳内容有( B )A. 数据分析B.风险分析C.功能分析11.在UML旳类图中,描述整体与部分关系旳有( B )A.泛化关系B.聚合关系C.依赖关系12.软件过程能力成熟度模型CMM用以评价(A)A.软件过程能力B.组织能力C.学习能力13. 因计算机硬件和软件环境旳变化而作出旳修改软件旳过程称为( C )A. 完善性维护B. 改正性维护C.适应性维护14. 对项目软件而言,软件功能需求信息重要由谁提供( A )A.软件顾客B.软件开发人员C.软件项目管理人员15. IDEF0图反应不出(C)A.系统做什么B.系统功能由谁做C.系统怎样做16. 原型模型是一种什么开发过程模型(B)A.自顶向上B. 由外至内C.增量式17. 系统流程图描述(A)A.物理系统B.逻辑系统C.软件体系构造18.需求规格阐明书旳内容不应当包括( C )A.软件确认准则B.软件旳性能描述C.算法过程旳详细描述19.适合需求模糊或需求不确定系统开发旳软件开发模型有( C )A. 瀑布模型B. RAD模型C.原型模型20.UML图中描述系统构造旳有( A )A. 组件图B. 次序图C.状态图21.面向对象措施是一种什么软件开发措施( B )A.层次化B.迭代增量式C.逐渐求精22.不可以用来衡量软件可维护性旳有()A.可靠性B.可用性C.可行性23. 系统分析员在需求分析最终负责编写()A.顾客手册B. 概要设计阐明书C.可行性研究汇报24.为了提高软件旳可靠性、可维护性等而对软件旳修改称为()A.改正性维护B.适应性维护C.防止性维护25.在构造化措施中,为使需求变化对软件影响较小,应当使软件构造()A. 与问题构造对应B. 与问题构造独立C.与顾客界面对应26.单元测试旳计划应当在什么阶段完毕()A. 需求分析B. 概要设计C.详细设计27. 下列属面向对象软件开发措施旳有()A. LCP措施B. OMT措施C.IDEF0措施28.强调信息隐藏旳软件工程设计措施有()A.Jackson措施B.Parnas措施C.SA/SD措施29.描述系统动态行为旳模型有()A.包图B.软件构造图C.状态图30.考虑输入条件组合旳测试用例设计措施有()A.等价分类法B.语句覆盖法C. 因果图法31. 下列能减少支援性维护活动旳有()A.运用软件包B.进行配置管理C.对顾客进行合适培训32. 只支持单重继承旳程序设计语言有()A.C++B.DelphiC. C33. IDEF0图旳顶层图是()A. A0图B.A-0图C.A-1图34. 在UML旳用例图中,扩展关系是一种()A. 泛化关系B.依赖关系C.关联关系35.独立测试小组开始介入测试是在()A.模块测试阶段B.集成测试阶段C.确认测试阶段36. 在成本估计中轻易低估局部问题旳措施是()A. 基于经验模型旳估计B. 自底向上估计C. 自顶向下估计37.在IDEF1X图中,假如子实体与父实体存在联络,则子实体将继承父实体旳()A.所有属性B.主关键字属性C.非主关键字属性38. 构造化分析措施使用旳工具有()A. 数据流图B.类图C.软件构造图39. 白盒测试设计用例旳措施是()A. 等价分类法B.基本途径覆盖法C.因果图法40. 在衡量软件质量时,最重要旳原则是()A. 可维护性好B. 可用性好C. 满足顾客功能需求41. 瀑布模型是一种()A. 演化模型B. 次序模型C. 增量模型42. 模块旳独立程度可以由什么定性原则度量()A. 耦合度B. 复杂度C.可靠性43.如下选项中,不属于对象旳特点有()A. 继承B. 多态C. 封闭44. 面向数据构造旳设计措施有()A.Parnas措施B.Jackson措施C. IDEF0措施45. 与UML配合最佳旳软件开发措施是()A.RUP措施B.Coad/Yourdon措施C.IDEF4措施二、填空题:1.统一建模语言UML提供了两种描述整体/部分关系旳措施,分别是和。

软件工程试卷及答案(多套精品试卷 )

软件工程试卷及答案(多套精品试卷 )

软件工程试题及答案第一部分选择题一、单项选择题每小题1分,共20分。

(在每小题的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内)1.在下列工具与环境中()属于较早期的CASE。

A.基于信息工程CASE B.人工智能CASEC.结构的基于图形CASE D.集成的CASE环境2.Putnam成本估算模型是一个()模型。

A.静态单变量B.动态单变量C.静态多变量D.动态多变量3.在McCall软件质量度量模型中,()属于面向软件产品修改。

A.可靠性B.可重用性C.适应性D.可移植性4.ISO的软件质量评价模型由3层组成,其中用于评价设计质量的准则是()A.SQIC B.SQMC C.SQRC D.SQDC5.软件复杂性度量的参数包括()A.效率B.规模C.完整性D.容错性6.对象实现了数据和操作的结合,使数据和操作()于对象的统一体中。

A.结合B.隐藏C.封装D.抽象7.软件调试技术包括()A.边界值分析B.演绎法C.循环覆盖D.集成测试8.瀑布模型的存在问题是()A.用户容易参与开发B.缺乏灵活性C.用户与开发者易沟通D.适用可变需求9.软件测试方法中的静态测试方法之一为()A.计算机辅助静态分析B.黑盒法C.路径覆盖D.边界值分析10.软件生命周期中所花费用最多的阶段是()A.详细设计B.软件编码C.软件测试D.软件维护11.第一个体现结构化编程思想的程序设计语言是()A.FORTRAN语言B.Pascal语言C.C语言D.PL/1语言12.程序的三种基本控制结构是()A.过程、子程序和分程序B.顺序、选择和重复C.递归、堆栈和队列D.调用、返回和转移13.在详细设计阶段,经常采用的工具有()A.PAD B.SA C.SC D.DFD14.详细设计的结果基本决定了最终程序的()A.代码的规模B.运行速度C.质量D.可维护性15.需求分析中开发人员要从用户那里了解()A.软件做什么B.用户使用界面C.输入的信息D.软件的规模16.结构化程序设计主要强调的是()A.程序的规模B.程序的效率C.程序设计语言的先进性D.程序易读性17.IDEF。

软件工程模拟题4

软件工程模拟题4

中南大学复习题及参考答案软件工程一、选择题:1.下面哪些UML图描述系统行为( a )A.用例图B.类图C.对象图2.属于概要设计活动的是( a )A.软件结构设计B.数据结构设计C.算法设计3.属行为型设计模式的是( c )A.组合模式B.工厂方法模式C.观察者模式4.下列说法正确的是( b )A.UML是软件开发方法B.UML是系统描述语言C.UML是软件开发过程5. 根据程序流程图划分的模块通常是( b )A. 信息内聚的模块B. 过程内聚的模块C.逻辑内聚的模块6.如果某程序中的比较个数是m,则其McCabe环形复杂度为( c )A.m-1B.mC.m+17.按ISO9000-3的说明,下列属软件配置项的是( c )A.软件开发方法B.软件开发组织管理制度C.软件开发合同8. 软件测试的目的是( c )A.证明软件无错B.发现软件中的所有错误C.尽可能发现软件系统中的错误9.软件重构关注的是( b )A. 软件体系结构B. 模块细节C.软件性能10.软件项目开发计划的内容有( b )A. 数据分析B.风险分析C.功能分析11.在UML的类图中,描述整体与部分关系的有( b )A.泛化关系B.聚合关系C.依赖关系12.软件过程能力成熟度模型CMM用以评价( a )A.软件过程能力B.组织能力C.学习能力13. 因计算机硬件和软件环境的变化而作出的修改软件的过程称为( c )A. 完善性维护B. 改正性维护C.适应性维护14. 对项目软件而言,软件功能需求信息主要由谁提供( a )A.软件用户B.软件开发人员C.软件项目管理人员15. IDEF0图反映不出( c )A.系统做什么B.系统功能由谁做C.系统如何做16. 原型模型是一种什么开发过程模型( b )A.自顶向上B. 由外至内C.增量式17. 系统流程图描述( a )A.物理系统B.逻辑系统C.软件体系结构18.需求规格说明书的内容不应该包括( c )A.软件确认准则B.软件的性能描述C.算法过程的详细描述19.适合需求模糊或需求不确定系统开发的软件开发模型有( c )A. 瀑布模型B. RAD模型C.原型模型20.UML图中描述系统结构的有( a )A. 组件图B. 顺序图C.状态图21.面向对象方法是一种什么软件开发方法( b )A.层次化B.迭代增量式C.逐步求精22.不可以用来衡量软件可维护性的有( c )A.可靠性B.可用性C.可行性23. 系统分析员在需求分析最后负责编写( a )A.用户手册B. 概要设计说明书C.可行性研究报告24.为了提高软件的可靠性、可维护性等而对软件的修改称为( c )A.改正性维护B.适应性维护C.预防性维护25.在结构化方法中,为使需求改变对软件影响较小,应该使软件结构( a )A. 与问题结构对应B. 与问题结构独立C.与用户界面对应26.单元测试的计划应该在什么阶段完成( c )A. 需求分析B. 概要设计C.详细设计27. 下列属面向对象软件开发方法的有( b )A. LCP方法B. OMT方法C.IDEF0方法28.强调信息隐藏的软件工程设计方法有( b )A.Jackson方法B.Parnas方法C.SA/SD方法29.描述系统动态行为的模型有( c )A.包图B.软件结构图C.状态图30.考虑输入条件组合的测试用例设计方法有( c )A.等价分类法B.语句覆盖法C. 因果图法31. 下列能减少支援性维护活动的有( c )A.利用软件包B.进行配置管理C.对用户进行适当培训32. 只支持单重继承的程序设计语言有( b )A.C++B.DelphiC. C33. IDEF0图的顶层图是( a )A. A0图B.A-0图C.A-1图34. 在UML的用例图中,扩展关系是一种( b )A. 泛化关系B.依赖关系C.关联关系35.独立测试小组开始介入测试是在( c )A.模块测试阶段B.集成测试阶段C.确认测试阶段36. 在成本估计中容易低估局部问题的方法是( c )A. 基于经验模型的估计B. 自底向上估计C. 自顶向下估计37.在IDEF1X图中,如果子实体与父实体存在联系,则子实体将继承父实体的( b )A.全部属性B.主关键字属性C.非主关键字属性38. 结构化分析方法使用的工具有( a )A. 数据流图B.类图C.软件结构图39. 白盒测试设计用例的方法是( b )A. 等价分类法B.基本路径覆盖法C.因果图法40. 在衡量软件质量时,最重要的标准是( c )A. 可维护性好B. 可用性好C. 满足用户功能需求41. 瀑布模型是一种( b )A. 演化模型B. 顺序模型C. 增量模型42. 模块的独立程度可以由什么定性标准度量( a )A. 耦合度B. 复杂度C.可靠性43.以下选项中,不属于对象的特点有( c )A. 继承B. 多态C. 封闭44. 面向数据结构的设计方法有( b )A.Parnas方法B.Jackson方法C. IDEF0方法45. 与UML配合最好的软件开发方法是( a )A.RUP方法B.Coad/Yourdon方法C.IDEF4方法二、填空题:1.统一建模语言UML提供了两种描述整体/部分关系的方法,分别是聚合和组合。

(完整版)软件工程试卷及答案(多套精品试卷)

(完整版)软件工程试卷及答案(多套精品试卷)

软件工程试题及答案第一部分选择题一、单项选择题每小题1分,共20分。

(在每小题的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内)1.在下列工具与环境中()属于较早期的CASE。

A.基于信息工程CASE B.人工智能CASEC.结构的基于图形CASE D.集成的CASE环境2.Putnam成本估算模型是一个()模型。

A.静态单变量 B.动态单变量 C.静态多变量 D.动态多变量3.在McCall软件质量度量模型中,()属于面向软件产品修改。

A.可靠性 B.可重用性C.适应性 D.可移植性4.ISO的软件质量评价模型由3层组成,其中用于评价设计质量的准则是()A.SQIC B.SQMC C.SQRC D.SQDC5.软件复杂性度量的参数包括()A.效率 B.规模 C.完整性 D.容错性6.对象实现了数据和操作的结合,使数据和操作()于对象的统一体中。

A.结合 B.隐藏C.封装 D.抽象7.软件调试技术包括()A.边界值分析 B.演绎法 C.循环覆盖 D.集成测试8.瀑布模型的存在问题是()A.用户容易参与开发B.缺乏灵活性 C.用户与开发者易沟通 D.适用可变需求9.软件测试方法中的静态测试方法之一为()A.计算机辅助静态分析 B.黑盒法 C.路径覆盖 D.边界值分析10.软件生命周期中所花费用最多的阶段是()A.详细设计 B.软件编码 C.软件测试D.软件维护11.第一个体现结构化编程思想的程序设计语言是()A.FORTRAN语言B.Pascal语言 C.C语言D.PL/1语言12.程序的三种基本控制结构是()A.过程、子程序和分程序B.顺序、选择和重复 C.递归、堆栈和队列 D.调用、返回和转移13.在详细设计阶段,经常采用的工具有()A.PAD B.SA C.SC D.DFD14.详细设计的结果基本决定了最终程序的()A.代码的规模 B.运行速度 C.质量 D.可维护性15.需求分析中开发人员要从用户那里了解()A.软件做什么 B.用户使用界面 C.输入的信息 D.软件的规模16.结构化程序设计主要强调的是()A.程序的规模 B.程序的效率C.程序设计语言的先进性D.程序易读性17.IDEF。

软件工程试题及答案(较详细)

软件工程试题及答案(较详细)

软件工程试题及答案(较详细)软件工程试题及答案 (较详细)一、简答题1. 什么是软件工程?软件工程是一门综合应用计算机科学与工程学、管理学等知识的学科,它致力于开发和维护高质量的软件系统。

它包括需求分析、设计、编码、测试和维护等各个阶段,以确保软件项目能够按时交付、高效运行,并满足用户需求。

2. 请解释什么是软件生命周期?软件生命周期是指软件从构思、开发、使用到废弃的整个过程。

它包括需求分析、设计、编码、测试、部署和维护等多个阶段。

软件生命周期管理的目标是确保软件产品按时、按质量要求交付,并提供后续的支持与维护。

3. 请解释什么是需求工程?需求工程是软件工程中的一个重要阶段,它主要涉及对用户需求的调研、分析、规划和文档化。

通过需求工程,开发人员能够更好地理解用户需求,并将其转化为具体的软件需求规格说明书,为后续的设计和开发提供基础。

4. 什么是软件设计模式?软件设计模式是一套在软件设计过程中重复出现的解决方案。

它们被广泛接受,并被认为是开发高质量、可维护和可扩展软件的有效方法。

常见的软件设计模式包括单例模式、工厂模式、观察者模式等。

二、分析题1. 请说明面向对象和面向过程的编程范式的区别。

面向对象编程(OOP)和面向过程编程(POP)是两种不同的编程范式。

面向过程编程更侧重于任务的步骤和流程,它将问题分解为多个步骤,通过一系列函数或过程的调用来完成任务。

面向过程编程更加注重解决问题的步骤和执行过程。

面向对象编程更注重数据和对象的定义和封装,它将问题看作是一组对象的交互。

面向对象编程通过定义类、创建对象以及对象之间的协作来解决问题。

2. 什么是软件架构?软件架构是指软件系统的基本结构和组织方式。

它定义了软件系统中各个组件的职责、交互方式和部署方式。

常见的软件架构模式包括分层架构、客户端-服务器架构、微服务架构等。

3. 解释软件测试中的黑盒测试和白盒测试。

黑盒测试是一种测试方法,它基于对软件系统的功能需求进行测试,而不考虑内部的实现细节。

2022年中南大学软件工程专业《操作系统》科目期末试卷A(有答案)

2022年中南大学软件工程专业《操作系统》科目期末试卷A(有答案)

2022年中南大学软件工程专业《操作系统》科目期末试卷A(有答案)一、选择题1、实时操作系统必须在()内处理完来白外部的事件。

A.一个机器周期B.被控对象规定时间C.周转时间D.时间片2、处理外部中断时,应该山操作系统保存的是()A.程序计数器(PC)的内容B.通用寄存器的内容C.快表(TLB)中的内容D.Cache中的内容3、一个进程被唤醒意味着()。

A.该进程可以重新占用CPUB.优先级变为最大C.PCB移到就绪队列之首D.进程变为运行态4、在单处理器的多进程系统中,进程切换时,何时占用处理器和占用多长时间取决于()A.进程响应程序段的长度B.进程总共需要运行时间的长短C.进程自身和进程调度策略D.进程完成什么功能5、若系统S1采用死锁避免方法,S2采用死锁检测方法。

下列叙述中,正确的是()。

I.S1会限制用户申请资源的顺序,而S2不会II.S1需要进程运行所需资源总最信息,而S2不需要III.SI不会给可能导致死锁的进程分配资源,而S2会A.仅I、IIB.仅II、IIIC. 仅I、IID. I、II、III6、如果I/O设备与存储设备间的数据交换不经过CPU来完成,则这种数据交换方式是()。

A.程序查询方式B.中断方式C.DMA方式D.外部总线方式7、 CPU输出数据的速度远远高于打印机的速度,为解决这一矛盾,可采用()。

A.并行技术B.通道技术C.缓冲技术D.虚存技术8、在一个文件被用户进程首次打开的过程中,操作系统需做的是()A.将文件内容读到内存中B.将文件控制块读到内存中C.修改文件控制块中的读写权限D.将文件的数据缓冲区首指针返回给用户进程9、为支持CD-ROM小视频文件的快速随机播放,播放性能最好的文件数据块组织方式是()。

A.连续结构B.链式结构C.直接索引结构D.多级索引结钩10、下列措施巾,能加快虚实地址转换的是()I.增大快表(TLB)容量II.让页表常驻内存III.增大交换区(swap)A.仅IB.仅IIC. 仅I、IID. 仅II、III11、产生内存抖动的主要原因是()A.内存空间太小B.CPU运行速度太慢C.CPU调度算法不合理D.页面置换算法不合理12、当系统发生抖动(Trashing)时,可以采取的有效措施是()。

软件工程试卷及参考答案

软件工程试卷及参考答案

试卷(一)一、单项选择题1、在结构化设计(SD)方法中全面指导模块划分的最重要的原则是( )A、程序模块化B、模块高内聚C、模块低耦合D、模块独立性2、软件维护产生的副作用,是指()A、开发时的错误B、隐含的错误C、因修改软件而造成的错误D、运行时误操作3、软件详细设计的主要任务是确定每个模块的()A、算法和使用的数据结构B、外部接口C、功能D、编程4、为了提高模块的独立性,模块内部最好是()A、逻辑内聚B、时间内聚C、功能内聚D、通信内聚5、软件是一种()A、程序B、数据C、逻辑产品D、物理产品6、因计算机硬件和软件环境的变化而作出的修改软件的过程称为( )A、纠正性维护B、适应性维护C、完善性维护D、预防性维护7、只有单重继承的类层次结构是( )层次结构。

A、网状型B、星型C、树型D、环型8、下列属于维护阶段的文档是( )A、软件规格说明B、用户操作手册C、软件问题报告D、软件测试分析报告9、不适合作为科学工程计算的语言是( )A、PascalB、CC、FortranD、 Prolog10、研究开发所需要的成本和资源是属于可行性研究中的( )研究的一方面。

A. 技术可行性B. 经济可行性C. 社会可行性D. 法律可行性11、中级结构性成本模型COCOMO是一个( )A、静态单变量模型B、动态单变量模型C、静态多变量模型D、动态多变量模型12、PAD图为()提供了有力的工具。

A、系统分析B、软件的自动化生成C、自动分析数据D、测试软件13、下列关于JSP方法不正确的说法是( )A、JSP方法主要用于规模不大的数据处理系统B、JSP方法不明确的划分软件概要设计和详细设计的两个阶段C、JSP方法适用于输入数据和输出数据之间有对应关系的问题求解D、JSP方法根据输入、输出的数据结构,按一定的规则映射成软件的体系结构。

因此它只适用于详细设计阶段14、在详细设计阶段,经常采用的工具有()A、PADB、SAC、SCD、DFD15、确认软件的功能是否与需求规格说明书中所要求的功能相符的测试属于()A、集成测试B、恢复测试C、验收测试D、单元测试16、盒图(N-S图)为()提供了有力的工具。

软件工程(期末试题及答案)

软件工程(期末试题及答案)

软件工程霄末试题及答案)软件工程佴末试题及答案)一、选择题(共20题,每题2分,共40分)1. 在软件工程中,以下哪一项不是七大工程()。

A.软件需求B.软件设计C.软件开发D.软件维护答案:D2.软件需求分析的目的是()。

A.理解用户需求B.设计软件架构C.编写用户手册D.测试软件功能答案:A3软件开发过程中的迭代模型,不存在的是()。

A.瀑布模型B.敏捷开发模型C.螺旋模型D.喷泉模型答案:D4.以下哪个不是软件测试的目的()。

A.发现错误和缺陷B.验证软件是否满足需求C.评估软件的可靠性和质量D.优化软件的性能答案:D5.软件项目管理中,以下哪种方法适用于大型复杂项目()。

A.瀑布模型B.敏捷开发C.增量模型D螺旋模型答案:D6软件开发生命周期中,以下哪个过程不属于()。

A. 需求分析过程B. 设计过程C. 编码过程D. 运维过程答案:D7. 在软件工程中,什么是软件测试()。

A. 软件开发的最后阶段B. 发现软件缺陷的过程C. 确保软件质量的控制过程D. 软件最终验收的流程答案:C8. 以下哪种测试方法旨在评估软件在不同负载下的性能和稳定性()。

A. 单元测试B. 集成测试C系统测试D. 性能测试答案:D9.软件开发中,以下哪个活动不属于软件配置管理()。

A.版本控制B.配置变更控制C.缺陷管理D.代码评审答案:D10.以下哪个是敏捷开发的基本原则()。

A.面对面交流胜过文档B.完全按照计划进行C.精确的需求分析是关键D.严格的变更控制是必要的答案:A11.下列哪个不属于软件配置管理的内容()。

A.变更控制B.版本控制C.缺陷管理D.运维管理12. 软件的可靠性是指()。

A. 软件是否能正常运行B. 软件是否符合用户需求C. 软件运行期间不出现故障的能力D. 软件功能的完善程度答案:C13. 下列哪个不属于软件开发的7大原则()。

A. 开放封闭原则B. 依赖倒置原则C. 单一职责原则D. 模块化编程原则答案:D14. 软件过程改进的指导框架是()。

历年软件工程复习题与答案

历年软件工程复习题与答案

历年软件工程复习题与答案一、单项选择题在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。

错选、多选或未选均无分。

1.在软件生存周期中,时间最长的阶段是( D )A.需求分析B.详细设计C.编码 D.维护2.以下最适合于面向对象的软件开发的软件生存周期模型是( D )A.瀑布模型 B.增量模型C.螺旋模型 D.喷泉模型3.以下不.适用于需求分析的工具是( C )A.数据流图 B.判定表C.PAD图 D.数据字典4.以下几种模块内聚类型中,内聚性最低的是( B )A.时间内聚 B.逻辑内聚C.顺序内聚D.功能内聚5.系统流程图中符号的名称是( A )A.联机存储 B.处理C.磁盘 D.文档6.数据流图中的每个加工至少有( D )A.一个输入流或一个输出流 B.一个输出流C.一个输入流 D.一个输入流和一个输出流7.HIPO图是软件工程中的一种描述工具,采用HIPO图进行描述的阶段是( C )A.可行性分析 B.需求分析C.概要设计 D.详细设计8.Jackson方法是软件开发过程中常用的方法,使用Jackson方法可以实现( A )A.从数据结构导出程序结构 B.从数据流图导出初始结构图C.从模块结构导出数据结构 D.从模块结构导出程序结构9.过程设计语言(PDL),又称为( A )A.伪码 B.高级程序设计语言C.中级程序语言 D.低级程序设计语言10.单元测试阶段主要涉及的文档为( B )A.需求设计 B.编码和详细设计C.详细设计D.概要设计11.软件维护会产生副作用,下面选项中不属于...维护副作用的是( B )A.编码副作用 B.测试副作用C.文档副作用 D.数据副作用l2.以下不.适合作为科学工程计算的语言是( B )A.Pascal B.CC.Fortran D.Prologl3.PAD图为下列哪个方面提供了有力的工具( A )A.系统分析B.软件的自动化生成C.自动分析数据 D.测试软件14.结构化软件设计是(C )A.面向数据结构的 B.面向数据库的C.面向数据流的 D.面向对象设计的15.在McCall软件质量度量模型中,面向软件产品修改的质量因素为( B )A.可用性 B.完整性C.适应性 D.互操作性C.系统测试D.单元测试29.下面关于详细设计的叙述中,错误..的是(B)A.程序流程图可以描述结构化程序B.程序流程图不能描述结构化程序C.NS图描述的程序一定是结构化的D.PAD图描述的程序一定是结构化的30.在整个软件维护阶段所花费的全部工作中,所占比例最大的是( C )A.校正性维护B.适应性维护C.完善性维护D.预防性维护31.以下不属于...序言性注释的有(C)A.模块设计者B.修改日期C.程序的整体说明D.语句功能32.集成测试是为了发现(A)A.接口错误B.编码错误C.性能、质量不合要求D.功能错误33.一个只有顺序结构的程序,其环形复杂度是(B)A.0 B.1C.3 D.534.结构化程序设计,主要强调的是(C)A.程序的执行效率B.模块的内聚C.程序的可理解性D.模块的耦合35.下面关于文档的叙述,错误..的是(A)A.文档是仅用于说明使用软件的操作命令,不包括软件设计和实现细节B.文档是软件产品的一部分,没有文档的软件就不成为软件C.高质量文档对于转让、变更、修改、扩充和使用有重要的意义D.软件文档的编制在软件开发工作中占有突出的地位和相当大的工作量36.在McCall软件质量度量模型中,面向软件产品操作的质量因素是(A)A.正确性B.可维护性C.适应性D.互操作性37.对度量法,叙述错误..的是(C)A.度量法是一种基于程序控制流的复杂性度量法B.度量法以图论为工具,用图的环路数作为程序复杂性的度量值C.度量法不能区分简单IF语句和循环语句的复杂性D.度量法对模块间的接口和简单IF语句区分对待38.在快速原型模型的开发过程中,仅用于代替设计阶段的原型是(C)A.探索型模型B.演化型模型C.实验型模型D.提交型模型39.对于构造原型的建议,下面说法错误..的是(D)A.暂不考虑错误恢复和处理,但应考虑速度、空间等性能效率方面的要求B.可降低可靠性和软件质量标准C.原型界面部分的设计,最好能与最终系统的界面相容D.根据不同的软件类型和应用领域,可使用不同风格的高级语言来构造原型40.面向对象开发方法中,将在面向对象技术领域内占主导地位的标准建模语言是(C)A.Booch方法B.Coad方法C.UML语言D.OMT方法4l.以下哪一项不.是软件产品所具有的特性( C )A.软件是逻辑产品B.软件产品不会用坏,不存在磨损、消耗问题C.随着技术的提高,软件开发的费用不断降低D.软件产品的成本主要体现在软件的开发与研制上42.“确定软件系统必须做什么”是哪个阶段的任务(B )A.可行性分析和项目开发计划B.需求分析C.概要设计D.详细设计43.以下哪一项不.是软件测试时需要的信息( B )A.软件配置B.软件结构C.测试工具D.测试配置44.结构化分析方法的分析策略是( B )A.自底向上的抽象B.自顶向下的分解C.用DFD建模D.用DD描述数据需求45.一组语句在程序中多处出现,为了节省存储,将这些语句组成一个新的模块,该模块的内聚性为( C )A.功能内聚B.顺序内聚C.偶然内聚D.逻辑内聚46.系统流程图是描绘以下哪一项的工具( C )A.软件结构B.逻辑系统C.物理系统D.软件功能47.数据库的设计一般要进行三个方面的设计:概念设计、逻辑设计和物理设计,其中逻辑设计对应于系统开发的什么部分( C )A.可行性分析B.需求分析C.概要设计D.详细设计48.以下哪种语言可用于描述模块算法设计和处理细节( B )A.UML语言B.过程设计语言C.FORTRAN语言D.Pascal语言49.软件维护是软件生命周期中的固有阶段,一般认为,以下哪种软件维护在整个维护活动中所占的比例最小( C )A.校正性维护B.适应性维护C.预防性维护D.完善性维护50.软件测试方法中,黑盒、白盒测试法是常用的方法,其中白盒测试主要用于测试( D )A.结构合理性B.软件外部功能C.程序正确性D.程序内部逻辑51.使用Jackson方法可以得到( D )A.程序流程图B.具体的语言程序C.模块结构图及模块的功能说明书D.分层数据流图52.以下哪种测试的任务是检查软件的功能与性能是否与需求规格说明书中确定的指标相符合( B )A.集成测试B.确认测试C.单元测试D.系统测试53.与编程风格有关的因素不.包括( B )A.源程序文档化B.语句构造C.输入输出D.模块间耦合性54.对于构造原型的建议,下面说法错误..的是( D )A. 暂不考虑速度、空间等性能效率方面的要求。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

填空题(本题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图的主要元素是简单的盒子及箭头,其中盒子代表系统的功能,而箭头表示系统处理的(数据约束 )。

相关文档
最新文档