历年全国自学考试软件工程试题(简答题答案)

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

全国2011年10月自学考试软件工程试题简答题(本大题共6小题,每小题5分,共30分)31.什么是需求规约?简述需求规约的基本性质。答:需求规约是一个软件项/产品/系统所有需求陈述的正式文档,它表达了一个软件产品/系统的概念模型。需求规约一般需要满足一下4个基本性质:1.重要性和稳定性程度:按需求的重要性和稳定性,对需求进行分级;2.可修改性:在不影响其他需求的前提下可容易修改一个单一需求;3.完整性:设备被遗漏的需求;4.一致性:不存在互斥的需求。32.什么是模块耦合?简述常用的模块耦合类型及其设计原则。答:模块耦合:是指不同模块之间相互依赖程度的度量;几中常见模块耦合类型为:内容耦合、公共耦合、控制耦合、标记耦合、数据耦合等;设计原则:如果模块间必须存在耦合,就尽量使用数据耦合,少用控制耦合,限制公共耦合,避免内容耦合。33.UML给出了那些表达关系的术语?简述它们的概念。答:1.为了表达各类事物之间的关系,UML给出了表达关系的术语:关联、泛化、细化、依赖;2.关联是类目之间的一种结构关系,是对一组具有相同结构、相同链的描述;3.泛化是一般性类目和它的较为特殊类目之间的一种关系;4.细化是类目之间的语义关系,其中一个类目规约了保证另一个类目执行的契约;5.依赖是一种使用关系,用于描述一个类目使用另一类目的信息和服务。34.简述RUP的定义和特点。答:RUP是基于一种过程框架,为软件开发,即为进行不同抽象层之间映射安排其开发活动的次序,制定任务和需求开发的制品,提供了指导;并为对项目中的制品和活动进行监督与度量,提供了相应的准则;RUP特点是:以用况为驱动,以体系结构为中心,迭代、增量式开发。35.简述软件测试步骤及关注的内容。答:软件测试步骤及关注的内容有以下几点:1.由于软件错误的复杂性,在软件工程测试中应综合运用测试技术,实施合理的测试步骤:单元测试、集成测试、有效性测试和系统测试;2.单元测试关注每个独立的模块;3.集成测试关注模块的组装;4.有效性测试福按住检验是否符合用户所见的文档;5.系统测试关注检验系统中所有元素之间的协作是否合适,整个系统的性能。功能是否达到。36.简述瀑布模型以及可适应的情况。答:1.瀑布模型将软件生存周期的各项活动规定为按固定顺序而连接的若干阶段工作,形如瀑布流水,最终得到软件产品;2.瀑布模型在支持结构化软件开发的复杂性、促进软件开发工程化等方面起着很大作用;3.该模型适应的情况、需求已被很好的理解,切开发组织非常熟悉为实现这一模型所需要的过程。全国2012年1月自学考试软件工程试题简答题(本大题共6小题,每小题5分,共30分)31.简述软件需求的分类及其关系。(P23-24)答:软件需求可以分为功能需求和非功能需求2大类;功能需求规定了系统及构件必须执行的功能;非功能需求又可以分为性能需求、外部接口需求、设计约束和质量属性需求。功能需求是整个软件需求的主体,没有工鞥需求就没有性能、外部接口、设计约束和质量的需求;一个非功能需求可以用于1个功能需求。32.什么是模块?什么是模块内聚?请列出从低到高的常见内聚类型。(P56,57,58,59)答:模块是执行一个特殊任务的过程以及相关的数据结构。内聚是指一个模块内部各个成分之间相互关联程度的度量。从低到高的内聚类型:偶然内聚;逻辑内聚;时间内聚;过程内聚;通信内聚;顺序内聚;功能内聚。33.什么是状态?什么是状态图?简述实际应用中只用状态图的作用。(P107-108-113)答:状态是类目的一个实例在其生存中的一种条件或情况;期间该实例满足这一条件,就执行某一活动或等待一个消息。状态图是现实状态机的图,强调从一个状态到另一个状态的控制流。从实际使用中状态图的作用:创建一个系统的动态图和创建一个场景的模型。34.简述RUP中需求获取的基本步骤和相关制品。(P132)答:需求获取的步骤和相关制品:1.列出候选的特征,相关制品是特征表;2.理解系统语境,相关制品是领域模型或业务模型;3.捕获系统功能需求,相关制品是用况模型;4.捕获非功能需求,相关制品是补充的需求过针对特殊需求的用况。35.简述黑盒测试技术的要点。(P186)答:黑盒测试技术的要点:1.支持测试工程模型的中间部分;2.事务流测试技术是将路径测试技术用于功能测试的产物,是一种实用的功能测试技术,通过事务的操作逻辑发现软件中的错误;3.事务流测试技术是基于软件规约的,对错误的假定是软件通过了与预想不同的事务路径;4.基于事务的基本操作;事务流测试技术的最大问题和最大代价是获取事务流程图及用例设计;5.事务处理流程测试要达到基本的测试覆盖。36.简述增量模型以及可适应的情况。(P224)答:增量模型意指需求可以机构化分组,形成一个个增量,并形成一个结构,之后对每一个增量进行瀑布开发。用增量模型开发的前提是需求的节后花,模型适合“技术驱动”的软件产品开发。全国2012年10月自学考试软件工程试题简答题(本大题共6小题,每小题5分,共30分)31.简述需求的基本性质。答:需求的基本性质:1.必要性,该需求是用户所要求的;2.无歧义性,该需求只能用一种方式解释;3.可测性,该需求是可进行测试的;4.可跟踪性,该需求可从一个开发阶段跟踪到另一个阶段;5.可测量性,该需求是可测量的;32.简述在进行软件系统/产品的需求工作中所面临的挑战和应对方法。答:面临的挑战:1.问题空间解释;2.人与人之间的通信;3.需求的变化性;应对方法:为了应对三大挑战,提出了系列软件开发方法,面向数据结构方法,面向对象方法等。33.什么是类?什么是对象?什么是类的构成成分?答:类:类是一组具有相同属性、操作、关系和语义的对象的描述;对象:对象是类的一个实例;类的构成成分:类名、属性、操作。34.什么是RUP?它有什么特点?答:RUP:即统一软件开发过程,它是基于UML的一种过程框架,为软件开发,即为进行不同抽象层之间映射安排其开发活动的次序,制定任务和需要开发的制品,提供了指导;并为对项目;并为对项目中的制品和活动进行监控与度量,提供了相应的准则;RUP的特点是:1.以用况为驱动;2.以体系结构为中心;3.迭代、增量式开发。35.简述人们关于软件测试目的的认识所经历的几个阶段。答:软件测试的几个阶段:1.第一阶段认为软件测试和软件调试没有什么区别;2.第二阶段认为测试是为了表明软件能正常工作;3.第三阶段认为测试是为了表明不能正常工作;4.第四阶段认为测试仅是为了将已察觉的错误风险减少到一个可接受的程度;5.第五阶段认为测试不仅仅是一种行为,而是一种理念,即测试是产生低风险软件的一种训练。36.简述喷泉模型以及可适应的情况。答:喷泉模型以及可适应的情况有以下几点:1.喷泉模型体现了软件创建所固有的迭代和无间隙的特征;2.喷泉模型说明了软件活动需要多次重复;3.喷泉模型还说明活动之间没有明显的间隙;4.该模型主要适应于面向对象技术的软件开发。全国2013年1月自学考试软件工程试题简答题(本大题共6小题,每小题5分,共30分)31.什么是需求规约?简述需求规约的作用。答:需求规约是一个软件项/产品/系统所有需求陈述的正式文档,它表达了一个软件产品/系统的概念模型。需求规约的作用:1.需求规约是软件开发组织和用户之间一份事实上的技术合同书,是产品功能及其环境的体现;2.对于项目的其余大多数工作,需求规约是一个管理控制点;3.对于产品/系统的设计,需求规约是一个正式的、受控的起始点;4.需求毁约是创建产品验收测试计划和用户指南的基础。32.通过长期的软件开发实践,人们总结出了哪些模块设计的启发式规则?答:通过长期的软件开发实践,总结出了实现模块“高内聚低耦合”的启发式规则:1.改进软件结构,提高模块独立性;2.力求模块规模适中;3.力求深度、宽度、扇出和扇入适中;4.尽力使模块的作用域在其控制域之内;5.尽力降低模块接口的复杂度;6.力求模块功能可以预测。33.什么是类?什么是对象?简述类在建模中的主要用途。答:类是一组具有相同属性、操作、关系和语义的对象的描述。对象是类的一个实例。类在建模中的主要用途:1.模型化问题域中的概念。使抽象模型中的概念模型转化为系统模型中的类;2.建立系统职责分布模型;3.模型化建模中使用的基本类型。34.为什么RUP要与UML一起才称得上是一种面向对象开发的方法学?答:RUP和UML事一堆“姐妹”,它们构成了一种特定的软件开发方法学。其中,UML作为一种可视化建模语言,给出了表达事物和事物之间关系的基本术语,给出了多种模型的表达工具;而RUP利用UML提供的术语和工具定义了需求获取层、系统分析层、设计层和实现层,并给出了实现各层模型之间映射的基本活动以及相关指导。35.简述软件测试和软件调试之间的区别。答:软件测试和软件调试之间的区别有如下几点:1.测试从一个侧面证明程序员的“失败”,调试是为了说明程序员的正确;2.测试已知条件开始,使用预先定义的程序且有预知的结果,不可预见的仅是程序是否通过。调试是以不可知的内部条件开始,除统计性调试外、结果不可预见的;3.测试是有计划的,并要进行测试设计。调试不受时间约束的;4.测试是一个发现错误、改正错误、重新测试的过程,调试是一个推理过程;5.测试执行时是有规程的。调试的执行往往要求程序员进行必要的推理;6.测试经常是独立测试组在不了解软件设计的条件下完成的。调试必须有了解详细设计的程序员完成;7.大多数测试的执行和设计可有工具支持。调试时,程序员能利用的工具主要是调试器。36.简述演化模型以及可适应的情况。答:演化模型表达了一种弹性的过程模式,由一些小的开发步组成的,每一步经历需求分析、设计、实现和验证,产生软件产品的一个增量。通过这些迭代,最终完成软件产品的开发。可适应的情况:只要针对事先不能完整定义的软件开发的。2013年10月自学考试软件工程试题简答题(本大题共6小题,每小题5分,共30分)31.简述初始需求发现的常用技术。答:初始需求发现的常用技术有以下几点:1.自悟:需求人员把自己作为系统的最终用户,审视该系统并提出问题;2.交谈:为了确定系统应该提供的功能,需求人员通过问答方式,直接询问用户需求的是一个什么样的系统;3.观察:通过观察用户执行其现行的任务和过程,了解系统运行的环境,特别是了解要建立的新系统与现存系统、过程及工作方法间必须进行的交互;4.小组会:举行客户和开发人员的联席会议,与客户代表共同开发需求;5.提炼:复审技术文档,并提取相关的信息。32.什么是模块的控制域?什么是模块的作用域?并对分析题32图中3个模块结构图的优劣。TopABCDFETopABCDEFTopABCDEF答:模块的控制域:是指这个模块本身以所有直接或间接从属于它的模块的集合;模块的作用域:是指受该模块内一个判定所影响的所有模块的集合;按照启发式规则:应尽力使模块的作用域在其控制域内。可知,C最好,作用域在控制域中,而且判定的位置恰当。B较好,作用域在控制域中,但是判定所在的位置过高。A最差,作用域在控制域之外。33.什么是用况(UseCase)?什么是用况图?一个用况图通常包含哪些模型元素?答:用况(UseCase):从外延上说它表达了参与者使用系统的一种方式,从内涵上说它规约了系统可以执行的一个动作序列,并对特定的参与者产生可见的、有值的结果;用况图:是一种表达系统功能模型的图形化工具;一个用况图通常包含的模型元素是:主题、用况、参与者、关联、泛化、依赖。34.简述演化模型,及其与RUP迭代、增量式开发之间的关系。答:演化模型主要针对事先不能完整定义需求定义软件开发的,在用户提出待开发系统的核心需求的基础上,软件开发人员按照这一需求,首先开发一个核心系统并投入运行,以便用户能够有效提出反馈,接着软件开发人员根据用户反馈,实施开发的迭代过程,每次迭代均由需求、设计、编码、测试、集成等阶段组成,通过增加或修正,产生软件产品的增量,最终完成软件产品的开发;由此可见,RUP的迭代、增量式开发是演化模型的一个变体,它规定了软件开发“大的”阶

1 / 26
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功