软件工程复习试题(有答案版)

发布时间:   来源:文档文库   
字号:

一、单选题
可行性分析研究的目的是(B
A.争取项目B.项目值得开发否C.开发项目D.规划项目
具有风险分析的软件生存周期模型是(C
A.瀑布模型B.喷泉模型C.螺旋模型D.增量模型
需求分析阶段的任务是确定(D
A.软件开发方法B.软件开发工具C.软件开发D.软件系统的功能
数据字典是用来定义(D)中的各个成份的具体含义的。
A.流程图B.功能结构图C.系统结构图D.数据流图程序的三种基本控制结构的共同特点是(CA.只能用来描述简单程序B.不能嵌套使用C.单入口,单出口D.仅用于自动控制系统软件设计的方法有多种,A)方法不属于面向数据流的设计方法。A.基于Jackson图的设计B.基于IDEF0图的设计C.交换分析设计D.事务分析设计
为高质量地开发软件项目,在软件结构设计时,必须遵循(A)原则。A.信息隐蔽B.质量控制C.程序优化D.数据共
软件复杂性主要体现在(B
A.数据的复杂性B.程序的复杂性C.控制的复杂性D.问题的复杂性为了提高软件的可维护性,在编码阶段应注意(D
A.保存测试用例和数据B.提高模块的独立性C.文档的副作用D.养成好的程序设计风格面向对象的特征之一是(A
A、对象的唯一性B.抽象C.封装性D.享性
当一个模块直接使用另一个模块的内部数据,这种模块之间的耦合为DA.数据耦合B.公共耦合C.标记耦合D.内容耦
需求规格说明书的作用不包括(CA软件验收的依据B用户与开发人员对软件要做什么的共同理解C.软件可行性研究的依据D.软件设计的依据
为使得开发人员对软件产品的各个阶段工作都进行周密的思考,从而减少返工,所以(C)的编制是很重要的。
A、需求说明B、概要说明C、软件文档D、测试计划
软件部件的内部实现与外部可访问性的分离,是指软件的(CA、继承性B、共享性C、封装性D、抽象性
单元测试是发现编码错误,集成测试是发现模块的接口错误,确认测试是为了发现功能错误,那么系统测试是为了发现(C)的错误。



A、接口错误B、编码错误C、性能、质量不合要求D、功能错误
软件工程管理对软件项目的开发管理,即对整个软件D的一切活动的管理。A、软件项目B、生存期C、软件开发计划D、软件开发
软件测试中根据测试用例设计的方法的不同可分为黑盒测试和白盒测试两种,们(D
A.前者属于静态测试,后者属于动态测试B.都属于静态测试C.前者属于动态测试,后者属于静态测试D.都属于动态测试软件工程管理的具体内容不包括对(D)管理。
A.开发人员B.组织机构C.控制D.设备软件调试技术包括(C
A.错误推断B.集成测试C.回溯法D.边界值分析
ISO的软件质量评价模型由3层组成,其中用于评价设计质量的准则是(DASQICBSQMCCSQRCDSQDC软件复杂性度量的参数包括(B
A.效率B.规模C.完整性D.容错性
模块的耦合性最强的是(DA.数据耦合B.控制耦合C.公共耦合D.内容耦合SD方法中全面指导模块划分的最重要的原则是(D
A.程序模块化B.模块高内聚C.模块低耦合D.模块独立性软件详细设计主要采用的方法是(CA.模块设计B.结构化设计C.PDL语言D.结构化程序设
黑盒测试在设计测试用例时,主要需要研究(A
A.需求规格说明与概要设计说明B.详细设计说明
C.项目开发计划D.概要设计说明与详细设计说
若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.01.0,现从输入的角度考虑一组测试用例:-1.001-1.01.01.001。设计这组测试用例的方法是(C
A.条件覆盖法B.等价分类法C.边界值分析法D.错误推测法
下列属于维护阶段的文档是(D
A.软件规格说明B.用户操作手册C.软件问题报告D.软件测试分析报告
快速原型模型的主要特点之一是(D
A.开发完毕才见到产品B.及早提供全部完整的软件产品C.开发完毕后才见到工作软件D.及早提供工作软件
因计算机硬件和软件环境的变化而作出的修改软件的过程称为(BA.教正性维护B.适应性维护C.完善性维护D.预防性维护
软件按照设计的要求,在规定时间和条件下达到不出故障,持续运行的要求的质量特性称为(B



A.可用性B.可靠性C.正确性D.完整性下列文档与维护人员有关的有(C
A.软件需求说明书B.项目开发计划C.概要设计说明书D.操作手册下列模型属于成本估算方法的有(A
A.COCOMO模型B.McCall模型C.McCabe度量法D.估算法
对象实现了数据和操作的结合,使数据和操作(C)于对象的统一体中。(第九章)
A.结合B.隐藏C.封装D.抽象软件调试技术包括(B
A.边界值分析B.演绎法C.循环覆盖D.集成测试概要设计是软件系统结构的总体设计,以下选项中不属于概要设计的是(DA.把软件划分成模块B.确定模块之间的调用关系C.确定各个模块的功能D.设计每个模块的伪代码软件生命周期中所花费用最多的阶段是(D
A.详细设计B.软件编码C.软件测试D.软件维护“软件危机”是指(C
A.计算机病毒的出现B.利用计算机进行经济犯罪活动C.软件开发和维护中出现的一系列问题D.人们过分迷恋计算机系统
确认软件的功能是否与需求规格说明书中所要求的功能相符的测试属于(CA、集成测试B、恢复测试C、验收测试D、单元测试盒图(N-S图)为(A)提供了有力的工具。
A、系统分析B、软件的自动化生成C、自动分析数据D、测试软件程序的三种基本控制结构是(B
A、过程、子程序和分程序B、顺序、选择和重复
C、递归、堆栈和队列D、调用、返回和转移
具有风险分析的软件生存周期模型是(C
A.瀑布模型B.喷泉模型C.螺旋模型D.增量模型下列有关软件工程的标准,属于行业标准的是(D
A.GBB.DINC.ISOD.IEEEDFD中的每个加工至少需要(D
A.一个输入流B.一个输出流
C.一个输入或输出流D.一个输入流和一个输出流为了提高模块的独立性,模块之间最好是(D
A.控制耦合B.公共耦合C.内容耦合D.数据耦合
软件设计的方法有多种,(A)方法不属于面向数据流的设计方法。A.基于Jackson图的设计B.基于IDEF0图的设计C.交换分析设计D.事务分析设计
当一个模块直接使用另一个模块的内部数据,这种模块之间的耦合为(DA.数据耦合B.公共耦合C.标记耦合D.内容耦合详细设计与概要设计衔接的图形工具是(D
A.DFDB.程序图C.PADD.SC



测试的关键问题是(D
A.如何组织对软件的评审B.如何验证程序的正确性C.如何采用综合策略D.如何选择测试用例
开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做(CA.软件工程B.软件周期C.软件危机D.软件产生
模块的内聚性最高的是(DA.逻辑内聚B.时间内聚C.偶然内聚D.功能内聚软件详细设计主要采用的方法是(CA.模块设计B.结构化设计C.PDL语言D.设计
结构化程序设计主要强调的是(D
A程序的规模B程序的效率C程序设计语言的先进性D程序易读性下列关于功能性注释不正确的说法是(B
A.功能性注释嵌在源程序中,用于说明程序段或语句的功能以及数据的状态B.注释用来说明程序段,需要在每一行都要加注释C.可使用空行或缩进,以便很容易区分注释和程序D.修改程序也应修改注释
下列关于效率的说法不正确的是(D
A.效率是一个性能要求,其目标应该在需求分析时给出
B.提高程序效率的根本途径在于选择良好的设计方法,数据结构与算法C.效率主要指处理机时间和存储器容量两个方面D.程序的效率与程序的简单性无关
可维护性的特性中,相互矛盾的是(B
A.可理解性与可测试性B.效率与可修改性C.可修改性和可理解性D.可理解性与可读性
快速原型是利用原型辅助软件开发的一种新思想,它是在研究(A的方法和技术中产生的。
A.需求阶段B.设计阶段C.测试阶段D.软件开发的各个阶段从目前情况来看,增量模型存在的主要问题是(CA.用户很难适应这种系统开发方法B.该方法的成功率很低
C.缺乏丰富而强有力的软件工具和开发环境
D.缺乏对开发过程中的问题和错误具有应付变化的机制可行性分析研究的目的是(A
A.项目是否值得开发B.争取项目C.开发项目D.规划项目
描述复杂系统时,最好采用(B)的描绘方法。
A.按系统流程描述B.分层次C.分阶段D.对系统数据分类
下述方法中,属于形式化说明方法的是()。
A.PetriB.数据流图C.PDLD.PAD需求分析阶段的基本任务是准确地回答(D)。



A.系统的规模有多大B.系统如何实现C.系统有些什么输入信息D.系统必须做什么
在软件结构设计时,下面哪一项不是应该遵循(C)的原则。
A.信息隐蔽B.抽象C.数据共享D.逐步求精软件详细设计的主要任务是确定每个模块的(AA、算法和使用的数据结构B、外部接口C、功能D、编程软件是一种(C
A、程序B、数据C、逻辑产品D、物理产品
研究开发所需要的成本和资源是属于可行性研究中的(B研究的一方面。A.技术可行性B.经济可行性C.社会可行性D.法律可行性中级结构性成本模型COCOMO是一个(C
A、静态单变量模型B、动态单变量模型C、静态多变量模型D、动态多变量模型PAD图为(详细设计)提供了有力的工具。
在软件结构设计完成后,对于下列说法,正确的是(C
A.软件层数过多,可能是因为各管理子模块功能过于复杂的原因。B.对软件宽度影响最大的因素是扇入。
C.一个模块的扇出太多,说明该模块过分复杂,缺少中间层D.一个模块的扇入太多,说明该模块过分复杂,缺少中间层源程序的效率与(D阶段确定的算法的效率直接有关。
A.概要设计B.总体设计C.单元设计D.详细设计关于软件测试,下面说法正确的是(CA.软件测试只能依靠手工进行
B.子模块并入系统时,只要此子模块是经过单元测试,且没有问题的,就不用再对系统进行测试了。
C.软件不能进行“穷举”测试
D.测试计划是在软件测试开始之初制定的。
关于白盒法覆盖程度的论述中正确的是(A
A.语句覆盖:选择测试用例使程序中每条语句至少被执行一次B.条件覆盖:选择测试用例使每个条件都满足
C.判定覆盖:选择测试用例使程序中每个判定和判定中的条件至少都获得一次“真”值和一次“假”值。
D.条件组合覆盖:将所有的判定条件都组合起来执行黑盒测试着重测试软件的(C
A.设计B.模块C.功能D.数据B)发现错误能力最弱A.判定覆盖B.语句覆盖C.条件覆盖D.条件组合覆盖在进行软件测试时,首先应当进行(D),然后再进行组装测试,最后再进行有效性测试。
A.组织测试B.集成测试C.确认测试D.单元测试由软件预发行的最终客户们在一个或多个客户场所对软件进行的测试,称为DA.α测试B.集成测试C.平行运行D.β测试



以下说法正确的是(B)。
A.等价划分法是一种有效的白盒测试方法。
B.在等价划分法中,为了提高测试效率,一个测试用例可以覆盖多个有效等价类。
C.等价划分法的关键是按照用例来确定等价类。
D.设计测试方案时,要么采用等价划分法,要么采用边界值分析法。
从现存的程序代码中抽取有关数据、体现结构和处理过程的设计信息,以便恢复设计结果的过程,称为(B
A.代码重构B.逆向工程C.数据重构D.正向工程决定软件可维护性的因素有5个,即可理解性、C)、可修改性、可移植性、可重用性。
A完备性B安全性C.可测试性D灵活性软件维护工作过程中,第一步是先确认(B
A.维护环境B.维护类型C维护要求D维护者以下哪种不属于用面向对象方法建立的分析模型(B
A.动态模型B.功能模型C.对象模型D.状态模型可维护性的特性中,相互矛盾的是(B
A.可理解性与可测试性B.效率与可修改性C.可修改性和可理解性D.可理解性与可读性软件详细设计的主要任务是确定每个模块的(AA、算法和使用的数据结构B、外部接口C、功能D、编程软件是一种(C
A、程序B、数据C、逻辑产品D、物理产品
研究开发所需要的成本和资源是属于可行性研究中的(B研究的一方面。A.技术可行性B.经济可行性C.社会可行性D.法律可行性中级结构性成本模型COCOMO是一个(C
A、静态单变量模型B、动态单变量模型C、静态多变量模型D、动态多变量模型PAD图为(A)提供了有力的工具。
A、系统分析B、软件的自动化生成C、自动分析数据D、测试软件

二、填空题
在面向对象方法中,对象实现了数据和操作的结合,使数据和操作__封装___对象的统一体中。
如果知道软件的规格说明书描述的程序功能,那么就可以采用__确认测试_进行测试。
软件可维护性度量的七个质量特性是可理解性、可测试性、可修改性、可靠性、可移植性可使用性和效率。A模块调用B模块时,若两个模块之间传递的是数值型参数,则这两个模块的耦合方式是_______数据耦合_________向对象发出服务请求称为____接口___类对象上的各种操作称为____方法____提高软件质量和可靠性的技术主要有两类__避开错误技术___容错技术___大型软件测试包括____单元测试_______集成测试_____确认测试和____系统测



__四个步骤。
软件结构图的宽度是指一层中__最大___的模块个数。
软件生存周期是指一个软件从提出开发要求开始直到_____该软件报废___为止的整个时期。
McCall提出的软件质量模型包括_______11_________个软件质量特性。对大信息系统的需求,DFD应与数据库技术中______ER______图结合起来。瀑布模型是以文档为驱动、适合于____需求很明确的____的软件项目的模型。在结构化分析中,用于描述加工逻辑的主要工具有三种,即:结构化语言、判定表、判定树
数据项是指____不可再分的____数据单元。
基于计算机的系统通常包含6个元素是硬件、软件、过程、文档、数据库和________
软件开发是一个自顶向下逐步细化和求精过程,而软件测试是一个_自底向上或相反顺序__集成的过程。
软件维护的内容包括校正性维持,适应性维护、__完善性维护___和预防性维护。CMM将软件过程的成熟度分为5个等级是初始级、可重复级、已定义级、己管理级和优化级。
软件结构是以模块为基础而组成的一种控制层次结构。
结构化语言是介于自然语言和形式语言之间的一种半形式语言。
在面向对象方法中,对象实现了数据和操作的结合,使数据和操作__封装___对象的统一体中。
作为计算机科学技术领域中的一门新兴学科,软件工程主要是为了解决________问题。
划分模块时尽量做到_高内聚、低耦合___,保持模块的独立性。
瀑布模型是以文档为驱动、适合于___需求很明确的_____的软件项目的模型。软件可维护性度量的七个质量特性是可理解性、可测试性、可修改性、可靠性
可移植性可使用性和效率。
基于计算机的系统通常包含6个元素是硬件、软件、过程、文档、数据库和________
软件开发模型用于指导软件的开发。演化模型是在快速开发一个_可运行的软件原型_的基础上,逐步演化成最终的软件。
软件工程包括的三个要素是___方法、工具和过程_____
常用的成本估计技术有:和自动估计成本技术三种。
结构化分析方法常用的两种工具是________________模块的分解和合并应力求___降低耦合提高内聚_____
程序的效率包括两个方面的内容___时间复杂度________空间复杂度_____形式化方法是一种基于数学的方法来描述目标软件系统属性的的技术。在需求分析时,常采用数据流图来描绘系统的行为。实体-联系图包括:实体关系属性3种相互关联的信息。软件设计包括制定计划和需求分析两个阶段。
基本路径测试是在程序流图的基础上,通过分析控制构造的环路复杂性,从而导出基本路径的集合,而设计测试用例,保证这些路径至少通过一次。



软件维护活动主要包括完善性维护、适应性维护改正性维护和预防性维护等四种。
继承是子类自动共享父类属性和操作的机制。
IEEE定义基线是:已经通过了正式复审的规格说明或中间产品,它可以作为进一步开发的基础,并且只有通过正式的变化控制过程才能改变它。软件生存周期是指软件从_定义___开发__维护_直到最终被废弃的全过程。瀑布模型的核心思想是_按工序将问题化简,将功能的实现与设计分开,便于分工协作,即采用结构化的分析与设计方法将逻辑实现与物理实现分开__在可行性研究中,________是最关键的因素。
软件生命周期由软件定义、软件开发和__软件维护___三个时期组成。
一般来说,可行性研究应该从技术、经济和_社会__三个方面研究每种解法的可行性。
软件_可靠性__是程序在给定的时间间隔内,按照规格说明书的规定成功地运行地概率。
常用的软件成本估计方法有________、任务分解技术和自动估计成本技术。软件需求分析时,应建立数据模型、功能模型和_行为模型__所谓形式化方法,是描述系统性质的基于__数学__的技术。_信息隐藏_原理指出:应该这样设计和确定模块,使得一个模块内包含的信息对于不需要这些信息的模块来说,是不能访问的。
如果一个程序的代码块仅仅通过顺序、选择和循环这三种基本控制结构进行连接,并且每个代码块只有一个入口和一个出口,则称这个程序是_结构化_的。软件的维护一般经过提出维护或修改要求、领导复审并作出答复,如同意修改则列入维护计划、领导分配人物维护人员执行修改三个步骤。
三、简答题
软件项目估算内容与步骤
面向对象设计的准则是什么?有哪5个层次和4个部分?
准则:模块化、抽象、信息隐蔽、高内聚、低耦合、可重用

简述软件工程目标和面临的主要问题。
目标:支付较低的开发成本、达到要求的软件功能、获取较好的软件性能、开发的软件易于移植、需要较低的维护费用、能按时完成开发任务,几时交付使用、开发的软件可靠性
面临的主要问题是:软件费用软件可靠性软件维护软件生产率软件重用。

简述软件工程过程。
软件工程过程是为获得软件产品,在软件工具支持下由软件工程师完成的一系列软件工程活动。软件工程过程通常包含四种基本的过程活动:
P(Plan:软件规格说明。规定软件的功能及其运行的限制;D(Do:软件开发。产生满足规格说明的软件;
C(Check:软件确认。确认软件能够完成客户提出的要求;
A(Action:软件演进。为满足客户的变更要求,软件必须在使用的过程中演进。事实上,软件工程过程是一个软件开发机构针对某一类软件产品为自己规定的工作步骤,它应当是科学的、合理的,否则必将影响到软件产品的质量。




简述模块独立性的原则。
模块独立性是指软件系统中每个模块只涉及软件要求的具体子功能,而和软件系统中其他的模块接口是简单的
模块独立性的概念是模块化、抽象、信息隐蔽和局部话概念的直接结果由耦合和内聚2个标准度量

简述结构化程序设计方法的基本要点
1.采用自顶向下,逐步求精的程序设计方法在需求分析,概要设计中,都采用了自顶向下,逐层细化的方法。
2.使用三种基本控制结构构造程序任何程序都可由顺序、选择、重复三种基本控制结构构造。
1用顺序方式对过程分解,确定各部分的执行顺序。2用选择方式对过程分解,确定某个部分的执行条件。
3用循环方式对过程分解,确定某个部分进行重复的开始和结束的条件。
4对处理过程仍然模糊的部分反复使用以上分解方法,最终可将所有细节确定下来。3.主程序员组的组织形式

简述软件生命周期开发方法的基本过程及每个阶段的任务。
1)问题定义阶段,尽可能清楚地描述问题,搞清楚要解决的问题是什么;
2)可行性研究阶段,主要是确定待解的问题是否有可行的解决办法。需要做经济可行性分析、技术可行性分析、操作可行性分析和法律可行性分析;
3)需求分析阶段,主要是确定目标系统必须具备的功能。通常用数据流图、数据字典和简要的算法表示系统的逻辑模型。
4总体设计阶段,从总体上解决问题,确定可实现的方案,并设计出软件的层次结构图;5)详细设计,把解法具体化,确定如何具体地实现这个系统。针对每个模块设计相应的算法;
6)编码和单元测试阶段,把详细设计的结果翻译成选定的语言所写的程序,并对每个模块进行单元测试。
7)测试阶段,系统地设计测试用例,尽可能多地发现软件中的错误,并调试改正软件中的错误;8软件维护阶段,主要目的是通过修改软件使所开发的软件能够持久地满足用户的需要。

复印机的工作流程大致如下:未接到复印命令时处于闲置状态,一旦接到复印命令则进入复印状态,完成一个复印命令规定的工作后又回到闲置状态,等待下一个复印命令:如果执行复印命令时发现没纸,则进入缺纸状态,发出警告,等待装纸,装满纸后进入闲置状态,准备接收复印命令;如果复印时发生卡纸故障,则进入卡纸状态,发出警告,等待维修人员来排除故障,故障排除后回到闲置状态。试用状态转换图描绘复印机的行为。
从问题陈述可知,复印机的状态主要有闲置、复印、缺纸和卡纸。引起状态转换的事件主要是复印命令、完成复印命令、发现缺纸、装满纸、发生卡纸故障和排除了卡纸故障




简述文档在软件工程中的作用。
1、提高软件开发过程的能见度2、实现对软件开发的工程管理3、提高开发效率
4、作为开发人员在一定阶段的工作成果和结束标志5、提供软件运行、维护和培训有关资料
6、记录开发过程中有关信息便于协调以后的软件开发使用和维护7、便于用户了解软件功能、性能。


简述软件项目管理过程。
简述系统分析员应该具备的主要知识结构和基本素质。
系统分析员应该既是信息系统专家,又是企业管理专家,同时还应该是优秀的领导者。系统分析员应该具有的知识结构为:首先应该具有深入扎实的信息系统方面的专业知识和实践经验,即他们必须具有计算机软硬件的知识和开发应用的实践经验,以及信息处理,包括MIS、网络、通讯、数据库等方面的知识和实践经验;其次,应该具有经济管理或企业管理方面较丰富的理论知识和实践经验;同时应该具有优秀领导者的素质、才能和领导艺术,在信息系统开发的实践中不断丰富自己、提高自己,使自己的知识结构更趋于合理。

简述何谓软件开发方法?请列举四种主要方法。
软件开发方法是一中使用定义好的技术集和符号表示组织软件生产的过程。结构化方法jackson方法维也纳开发方法面向对象开发方法

简述单元测试的基本内容。
测试构造软件系统的模块(对象和子系统)模块接口主要检查数据能否正确通过模块;属性及对应关系是否一致
局部数据结构说明不正确或不一致;初始化或缺省值错误;变量名未定义或拼写错误;
数据类型不相容;上溢下溢或地址错误等

重要的执行路径重要模块要进行基本路径测试,仔细地选择测试路径是单元测试的一项
基本任务




错误处理
要测试程序对错误处理的能力,应检查是否不能正确处理外部输入错误或内部处理引起的错误;对发生的错误不能正确描述的内容,难以理解;在错误处理之前,系统已经进行干预等
序最容易在边界上出错,如输入输出数据的等价类边界,选择条件和循环条件的边界,复杂数据结构的边界等都应进行测试

边界条件

什么是软件生存周期模型?请至少列举四种主要模型?
软件生存周期模型是描述软件开发过程中各种活动如何执行的模型。软件生存周期模型确立了软件开发和演绎中各阶段的次序限制以及各阶段或机动的准则,确立开发过程所遵守的规定和限制,便于各种活动的协调,便于各种人员的有效通信,有利于活动重用,有利于活动管理。
常见的软件生存周期模型有瀑布模型、演化模型、螺旋模型、喷泉模型等。

衡量模块独立的两个标准是什么?它们各表示什么含义?(网上)
两个定性的度量标准:耦合与内聚性
耦合性:也称块间联系。指软件系统结构中各模块间相互联系紧密程度的一种度量。模块之间联系越紧密,其耦合性就越强,模块的独立性则越差。
内聚性:也称块内联系。指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。模块内元素联系越紧密,内聚性越高。

简述白盒测试的思想,并列举两种典型的测试技术。
白盒测试又称结构测试,它把测试对象看作一个透明的盒子。测试人员须了解程序的内部结构和处理过程,以检查处理过程的细节为基础,对程序中尽可能多的逻辑路径进行测试,检查内部控制结构和数据结构是否有错,实际的运行状态和预期的状态是否一致典型测试技术:逻辑驱动、基本路径测试等

简述CMM(软件能力成熟度模型)5个等级的含义
第一级基本集软件工程是混乱无序的,对工程几乎没有定义,成功依靠的是个人的才能和经验,管理方式属于反应式
第二级重复级建立了基本的项目管理来跟踪进度。费用和功能特征,制定了必要的项目管理,能够利用以前类似的项目应用取得成功
第三级确定级已经将软件管理和过程文档化,标准化,同时综合成该组织的标准软件过程,所有的软件开发都使用该标准软件
第四级管理级收集软件过程和产品质量的详细度量,对软件过程和产品质量有定量的理解和控制。
第五级优化级软件过程的量化反馈和新的思想和技术促进过程的不断改进

简述软件维护的定义
在软件运行或维护阶段对软件产品所进行的修改,这些修改可能是改正软件中的错误,也可能是增加新的功能以适应新的需求,但一般不包括软件系统结构上的重大改变

简述软件测试的定义
广义:软件产品生存周期内所有的检查评审和确认活动
狭义:对软件产品质量的检验和评价,一方面检查软件产品质量中存在的质量问题同时对



产品质量进行客观的评价。

UML建模中主要包括哪九种图?并说明类图的定义及其中常见的关系有哪些?
用例图类图对象图状态图顺序图协作图活动图组件图分布图
类图描述系统的的静态结构。表示系统中类、类与类之间的关系以及类的属性和操作。常见关系:关联(分为聚合和组合)、范化、依赖、实现

什么是字据字典?其作用是什么?它有哪些条目?
数据字典是用于定义数据流图中的各个成分的具体含义。它以一种准确的无二义的说明方式为系统的分析设计及维护提供了有关元素的一致的定义和详细的描述4类条目:数据流、数据存储、数据项和加工

四、分析题
根据下面给出的规格说明,利用等价类划分的方法,给出足够的测试用例。“一个程序读入三个整数。把此三个数值看成是一个三角形的三个边。这个程序要打印出信息,说明这个三角形是三边不等的、是等腰的、还是等边的。”1.分析
三角形应满足:
(1输入3个数(2a,b,c整数(3a>0,b>0,c>0(4a+b>c,a+c>b,b+c>a等腰三角形除了满足三角形的条件外,还应满足:(5a=ba=cb=c
等边三角形除了满足三角形的条件外,还应满足:(6a=b=c2.等价类表有效等价类
编号无效等价类
只输入a只输入b只输入c(1只输入a,b
只输入a,c只输入b,c
输入超过3个数a非整b非整c非整(2a,b非整
b,c非整a,c非整a,b,c非整(3a=0
编号(10(11(12(13(14(15(16(17(18(19(20(21(22(23(24
输入三个数
a,b,c整数
a<>0,b<>0,c<>0



b=0(25c=0(26a=0,b=0(27a=0,c=0(28b=0,c=0(29a=0,b=0,c=0(30a<0(31b<0(32c<0(33
a>0,b>0,c>0(4a<0,b<0(34
a<0,c<0(35b<0,c<0(36a<0,b<0,c<0(37a+b(38a+b=c(39a+c(40
a+b>c,a+c>b,b+c>a(5
a+c=b(41b+c(42b+c=a(43
a=b(6a=c(7a<>ba<>cb<>c(44b=c(8
a<>b(45
a=b=c(9b<>c(46
a<>c(47覆盖有效等价类的测试用例
覆盖有效等价类的测试用例等价类编号
3,4,5(1-(54,4,5(1-(5,(64,5,4(1-(5,(75,4,4(1-(5,(85,5,5(1-(5,(9覆盖无效等价类的测试用例
覆盖无效等价类的测试用例等价类编号3**(10*3*(11**3(1234*(133*4(14*34(15



34567(162.1,3,4(173,2.1,4(183,4,2.1(192.1,2.2,4(204,2.1,2.2(212.1,4,2.2(222.1,2.2,2.3(230,3,4(243,0,4(253,4,0(260,0,3(270,3,0(283,0,0(290,0,0(30-1,2,3(312,-1,3(322,3,-1(33-1,-2,3(34-1,3,-2(353,-1,-2(36-1,-2,-3(371,2,4(381,2,3(391,4,2(401,3,2(414,1,2(423,1,2(432,3,4(442,3,3(453,2,3(463,3,2(47

图书馆的预定图书子系统有如下功能:1)由供书部门提供书目给订购组;2)订书组从各单位取得要订的书目;
3)根据供书目录和订书书目产生订书文档留底;
4)将订书信息(包括数目,数量等)反馈给供书单位;5)将未订书目通知订书者;
6)对于重复订购的书目由系统自动检查,并把结果反馈给订书者。试根据要求画出该问题的数据流图,并把其转换为软件结构图。




已知被测试模块流程图如下,按照“条件覆盖”法,在表格中填入满足测试要求的数据。





假设几种可能的条件是:
T1:A>2F1:A<=2T2:B=1F2:B1T3:A=1F3:A1T4:Y>1F4:Y<=1填写下表
数据覆盖路径覆盖条件Y
A=3,B=1,Y=1A=1,B=0,Y=2
cdbe
T1,T2,F3,F4F1,F2,T3,T4
-47

设计一个简化的网上个人银行查询系统,用户可以通过Internet查询自己帐户的收支明细、余额和修改密码。采用面向对象方法:
1)请画出系统的用例图;
2识别出系统的主要类,并画其中的二个类图(包含主要属性和操作)3)画一个UML时序图,描述一次通过网上银行查询余额的具体交互。
(二)采用面向对象方法:8
1)请画出系统的用例图;2



系统查询
修改密码
储户

2)识别出系统的主要类2UserAccountDetailItem
主要要包括用户、帐户、收支明细等类。
并画其中的二个类图(包含主要属性和操作)2

3)画一个UML时序图,描述一次通过网上银行查询余额的具体交互。2
:SearchGUI
SearchDialog
Search(
:Account
deatilItem
-account-time-amount
-terminalNumber
account-balance
-accountNumber-username-password+getBalance(+getDetailItem(+getPassword(+setPassword(
GetAccout(Id
CheckPassword(Id
GetBalance


用等价类划分方法进行如下测试:城市电话号码有3部分组成:地区:空白或3位数字;
前缀:非‘0’或‘1’开头的3位数字;后缀:任意4位。
程序应接受符合条件的号码,拒绝不符合条件的号码。



解:第一步:划分等价类,包括4个有效等价类,11个无效等价类。表721列出了划分的结果。在每一等价类之后加有编号,以便识别。7-2-1电话号码程序的等价划分
输入条件有效等价类无效等价类
地区码空白(1,3位数字(2有非数字字符(5,少于3位数字(6,多于三位数字(7
有非数字字符(8,起始位为"0"(9,起始位为
200999之间的3位数
前缀
(3
"1"(10,少于3位数字(11,多于3位数字(12
有非数字字符(13,少于4位数字(14,多于4
后缀4位数字(4
位数字(15
第二步:确定调试用例。表721中有4个有效等价类,可以公用以下两个次数用例:
调试数据(2762345(6358059321
范围期望结果
等价类(1(3(4有效等价类(2(3(4有效
11个无效等价类,要选择11调试用例,如下所示:
调试数据
(20A1234567(332345678(77773456789(77734A6789

范围期望结果
无效等价类(5无效无效等价类(6无效无效等价类(7无效无效等价类(8无效


(2340456789(7771456789(777346789(77723456789(777345678A(777345678(77734556789
无效等价类(9无效无效等价类(10无效等价类(11无效无效等价类(12无效无效等价类(13无效等价类(14无效无效等价类(15


某单位要研制一个计算机管理系统。它的业务是:将学员发来的信件收集分类后,按几种不同的情况处理。1如果是报名的,则将报名数据送给负责报名事务的职员,他们将查阅课程文件,检查该课程是否额满,然后在学生文件、课程文件上登记,并开出报告单交财务部门,财务人员开出发票给学生。
2如果是想注销原来已选修的课程,则由注销人员在课程文件、学生文件和帐目文件上做相应的修改,并给学生注销单。
3如果是付款的,则由财务人员在帐目文件上登记,也给学生一张收费收据。要求:1.对以上问题画出数据流程图。2.画出该培训管理的软件结构图。





某报表处理系统要求用户输入处理报表的日期,日期限制在20031月至200812月,即系统只能对该段期间内的报表进行处理,如日期不在此范围内,则显示输入错误信息。系统日期规定由年、月的6位数字字符组成,前四位代表年,后两位代表月。现要求用黑盒测试法中的边界值法写出测试用例。
输入条件测试用例说明测试数据报表日期的1个数字字符5类型及长度5个数字字符200357个数字字符20030051个非数字字符2003.5全部是非数字字符MAY---6个数字字符200305
日期范围在有效范围200301边界上选取200812数据200300200813
月份范围月份为1200301月份为12200312月份<1200300月份>12200313


下图为一个被测程序流程图,试用条件覆盖方法为它设计足够的测试用例




T1:X>1,F1:X<=1,T2:X<2,F2:X>=2,T3:X<3,F3:X>=3,T4:X<4,F4:X>=4
数据X=1.5X=-PIX=4
覆盖路径覆盖条件abacdaceg
T1,T2,T3,T4F1,T2,T3,T4T1,F2,F3,F4
Y9.5-113


本文来源:https://www.2haoxitong.net/k/doc/ca0ce82fed630b1c59eeb5ef.html

《软件工程复习试题(有答案版).doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式