1、(完整word)软件工程复习试题(有答案版)一、 单选题可行性分析研究的目的是(B)A.争取项目 B.项目值得开发否 C.开发项目 D。规划项目具有风险分析的软件生存周期模型是(C)A。瀑布模型 B.喷泉模型 C。螺旋模型 D.增量模型需求分析阶段的任务是确定(D)A软件开发方法 B软件开发工具 C软件开发 D软件系统的功能数据字典是用来定义(D)中的各个成份的具体含义的。A流程图 B功能结构图 C系统结构图 D数据流图程序的三种基本控制结构的共同特点是(C)A只能用来描述简单程序 B不能嵌套使用 C单入口,单出口 D仅用于自动控制系统软件设计的方法有多种,(A)方法不属于面向数据流的设计方法
2、。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。共享性当一个模块直接使用另一个模块的内部数据,这种模块之间的耦合为(D)A数据耦合 B公共耦合 C标记耦合
3、D内容耦合需求规格说明书的作用不包括(C)A软件验收的依据 B用户与开发人员对软件要做什么的共同理解 C软件可行性研究的依据 D软件设计的依据为使得开发人员对软件产品的各个阶段工作都进行周密的思考,从而减少返工,所以( C )的编制是很重要的。A、需求说明B、概要说明C、软件文档D、测试计划软件部件的内部实现与外部可访问性的分离,是指软件的( C )。A、继承性B、共享性C、封装性D、抽象性单元测试是发现编码错误,集成测试是发现模块的接口错误,确认测试是为了发现功能错误,那么系统测试是为了发现( C )的错误。A、接口错误B、编码错误C、性能、质量不合要求D、功能错误软件工程管理对软件项目的开
4、发管理,即对整个软件( D )的一切活动的管理.A、软件项目B、生存期C、软件开发计划D、软件开发软件测试中根据测试用例设计的方法的不同可分为黑盒测试和白盒测试两种,它们(D)A前者属于静态测试,后者属于动态测试 B都属于静态测试 C前者属于动态测试,后者属于静态测试 D都属于动态测试软件工程管理的具体内容不包括对(D)管理。A开发人员 B组织机构 C控制 D设备软件调试技术包括(C)A。错误推断 B.集成测试 C。回溯法 D。边界值分析ISO的软件质量评价模型由3层组成,其中用于评价设计质量的准则是( D )ASQIC BSQMC CSQRC DSQDC软件复杂性度量的参数包括(B)A效率
5、B规模 C完整性 D容错性模块的耦合性最强的是( D )A。数据耦合B.控制耦合 C.公共耦合 D.内容耦合在SD方法中全面指导模块划分的最重要的原则是( D )A。程序模块化B.模块高内聚 C.模块低耦合D.模块独立性软件详细设计主要采用的方法是( C )A.模块设计B。结构化设计 C.PDL语言 D.结构化程序设计黑盒测试在设计测试用例时,主要需要研究( A )A。需求规格说明与概要设计说明B。详细设计说明C。项目开发计划D。概要设计说明与详细设计说明若有一个计算类型的程序,它的输入量只有一个X,其范围是-1。0,1.0,现从输入的角度考虑一组测试用例:1。001,1.0,1。0,1。00
6、1.设计这组测试用例的方法是( C ) A.条件覆盖法B.等价分类法 C.边界值分析法D。错误推测法下列属于维护阶段的文档是( D )A.软件规格说明 B。用户操作手册 C。软件问题报告D.软件测试分析报告快速原型模型的主要特点之一是( D ) A。开发完毕才见到产品B.及早提供全部完整的软件产品 C.开发完毕后才见到工作软件D.及早提供工作软件因计算机硬件和软件环境的变化而作出的修改软件的过程称为( B )A。教正性维护B.适应性维护 C。完善性维护D。预防性维护软件按照设计的要求,在规定时间和条件下达到不出故障,持续运行的要求的质量特性称为( B )A.可用性B。可靠性 C.正确性 D.完
7、整性下列文档与维护人员有关的有( C ) A。软件需求说明书 B.项目开发计划 C.概要设计说明书 D.操作手册下列模型属于成本估算方法的有( A )A.COCOMO模型 B.McCall模型 C.McCabe度量法 D.时间估算法对象实现了数据和操作的结合,使数据和操作( C )于对象的统一体中。(第九章)A结合 B隐藏 C封装 D抽象软件调试技术包括( B )A边界值分析 B演绎法 C循环覆盖 D集成测试概要设计是软件系统结构的总体设计,以下选项中不属于概要设计的是( D )A.把软件划分成模块 B。确定模块之间的调用关系C.确定各个模块的功能 D.设计每个模块的伪代码软件生命周期中所花费
8、用最多的阶段是( D )A详细设计 B软件编码 C软件测试 D软件维护“软件危机”是指( C)A。计算机病毒的出现 B.利用计算机进行经济犯罪活动C。软件开发和维护中出现的一系列问题 D.人们过分迷恋计算机系统确认软件的功能是否与需求规格说明书中所要求的功能相符的测试属于( C )A、集成测试B、恢复测试C、验收测试D、单元测试盒图(N-S图)为( A )提供了有力的工具。A、系统分析B、软件的自动化生成C、自动分析数据D、测试软件程序的三种基本控制结构是( B )A、过程、子程序和分程序B、顺序、选择和重复C、递归、堆栈和队列D、调用、返回和转移具有风险分析的软件生存周期模型是(C)A。瀑布
9、模型 B。喷泉模型 C。螺旋模型 D.增量模型下列有关软件工程的标准,属于行业标准的是(D) A。GB B。DIN C.ISO D.IEEEDFD中的每个加工至少需要( D ) A.一个输入流 B.一个输出流 C。一个输入或输出流 D。一个输入流和一个输出流为了提高模块的独立性,模块之间最好是( D ) A。控制耦合 B。公共耦合 C。内容耦合 D。数据耦合软件设计的方法有多种,(A)方法不属于面向数据流的设计方法。A基于Jackson图的设计 B基于IDEF0图的设计 C交换分析设计 D事务分析设计当一个模块直接使用另一个模块的内部数据,这种模块之间的耦合为(D)A数据耦合B公共耦合 C标记
10、耦合 D内容耦合详细设计与概要设计衔接的图形工具是( D )A.DFD图 B.程序图 C。PAD图 D.SC图测试的关键问题是( D )A。如何组织对软件的评审 B。如何验证程序的正确性 C.如何采用综合策略 D.如何选择测试用例开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做(C ) A.软件工程B.软件周期 C。软件危机D。软件产生模块的内聚性最高的是( D )A。逻辑内聚B。时间内聚 C.偶然内聚D.功能内聚软件详细设计主要采用的方法是( C )A。模块设计B。结构化设计 C。PDL语言 D。结构化程序设计结构化程序设计主要强调的是( D )A 程序的规模 B 程序的效率
11、 C 程序设计语言的先进性 D 程序易读性下列关于功能性注释不正确的说法是( B )A。功能性注释嵌在源程序中,用于说明程序段或语句的功能以及数据的状态B。注释用来说明程序段,需要在每一行都要加注释C.可使用空行或缩进,以便很容易区分注释和程序D。修改程序也应修改注释下列关于效率的说法不正确的是( D )A.效率是一个性能要求,其目标应该在需求分析时给出B。提高程序效率的根本途径在于选择良好的设计方法,数据结构与算法C。效率主要指处理机时间和存储器容量两个方面D.程序的效率与程序的简单性无关可维护性的特性中,相互矛盾的是( B )A.可理解性与可测试性 B。效率与可修改性C。可修改性和可理解性
12、 D。可理解性与可读性快速原型是利用原型辅助软件开发的一种新思想,它是在研究( A )的方法和技术中产生的.A。需求阶段 B.设计阶段 C。测试阶段 D。软件开发的各个阶段从目前情况来看,增量模型存在的主要问题是(C)A.用户很难适应这种系统开发方法B.该方法的成功率很低C.缺乏丰富而强有力的软件工具和开发环境D.缺乏对开发过程中的问题和错误具有应付变化的机制可行性分析研究的目的是(A)A。项目是否值得开发 B 。争取项目 C.开发项目 D。规划项目描述复杂系统时,最好采用( B)的描绘方法。A.按系统流程描述 B.分层次 C。分阶段 D.对系统数据分类下述方法中,属于形式化说明方法的是( )
13、。A. Petri网 B. 数据流图 C. PDL D. PAD图需求分析阶段的基本任务是准确地回答( D ).A. 系统的规模有多大 B。 系统如何实现 C。 系统有些什么输入信息 D. 系统必须做什么在软件结构设计时,下面哪一项不是应该遵循(C )的原则.A信息隐蔽 B抽象 C数据共享 D逐步求精软件详细设计的主要任务是确定每个模块的( A )A、算法和使用的数据结构B、外部接口C、功能D、编程软件是一种( C )A、程序B、数据C、逻辑产品D、物理产品研究开发所需要的成本和资源是属于可行性研究中的( B )研究的一方面。A。技术可行性 B.经济可行性 C.社会可行性 D.法律可行性中级结
14、构性成本模型COCOMO是一个( C )A、静态单变量模型B、动态单变量模型C、静态多变量模型D、动态多变量模型PAD图为( 详细设计 )提供了有力的工具.在软件结构设计完成后,对于下列说法,正确的是( C )A软件层数过多,可能是因为各管理子模块功能过于复杂的原因。B对软件宽度影响最大的因素是扇入。C一个模块的扇出太多,说明该模块过分复杂,缺少中间层D一个模块的扇入太多,说明该模块过分复杂,缺少中间层源程序的效率与( D )阶段确定的算法的效率直接有关。A概要设计 B. 总体设计 C. 单元设计 D. 详细设计关于软件测试,下面说法正确的是( C )。A软件测试只能依靠手工进行 B子模块并入
15、系统时,只要此子模块是经过单元测试,且没有问题的,就不用再对系统进行测试了。C软件不能进行“穷举”测试 D测试计划是在软件测试开始之初制定的.关于白盒法覆盖程度的论述中正确的是( A )。A语句覆盖:选择测试用例使程序中每条语句至少被执行一次B条件覆盖:选择测试用例使每个条件都满足C判定覆盖:选择测试用例使程序中每个判定和判定中的条件至少都获得一次“真”值和一次“假”值。D条件组合覆盖:将所有的判定条件都组合起来执行黑盒测试着重测试软件的( C)A设计 B。 模块 C. 功能 D。 数据( B )发现错误能力最弱 。A判定覆盖 B。语句覆盖 C。 条件覆盖 D. 条件组合覆盖在进行软件测试时,
16、首先应当进行( D ),然后再进行组装测试,最后再进行有效性测试。A组织测试 B集成测试 C确认测试 D单元测试由软件预发行的最终客户们在一个或多个客户场所对软件进行的测试,称为(D)。A测试 B集成测试 C平行运行 D测试以下说法正确的是(B )。A等价划分法是一种有效的白盒测试方法。B在等价划分法中,为了提高测试效率,一个测试用例可以覆盖多个有效等价类.C等价划分法的关键是按照用例来确定等价类。D设计测试方案时,要么采用等价划分法,要么采用边界值分析法.从现存的程序代码中抽取有关数据、体现结构和处理过程的设计信息,以便恢复设计结果的过程,称为(B)A代码重构 B逆向工程 C数据重构 D正向
17、工程决定软件可维护性的因素有5个,即可理解性、( C)、可修改性、可移植性、可重用性。A 完备性 B 安全性 C可测试性 D 灵活性软件维护工作过程中,第一步是先确认( B )A维护环境 B维护类型 C 维护要求 D 维护者以下哪种不属于用面向对象方法建立的分析模型( B )A.动态模型 B.功能模型 C。对象模型 D.状态模型可维护性的特性中,相互矛盾的是( B )A。可理解性与可测试性 B。效率与可修改性C。可修改性和可理解性 D.可理解性与可读性软件详细设计的主要任务是确定每个模块的( A )A、算法和使用的数据结构B、外部接口C、功能D、编程软件是一种( C )A、程序B、数据C、逻辑
18、产品D、物理产品研究开发所需要的成本和资源是属于可行性研究中的( B )研究的一方面。A.技术可行性 B.经济可行性 C。社会可行性 D.法律可行性中级结构性成本模型COCOMO是一个( C )A、静态单变量模型B、动态单变量模型C、静态多变量模型D、动态多变量模型PAD图为( A)提供了有力的工具.A、系统分析B、软件的自动化生成C、自动分析数据D、测试软件二、填空题在面向对象方法中,对象实现了数据和操作的结合,使数据和操作_封装_于对象的统一体中.如果知道软件的规格说明书描述的程序功能,那么就可以采用_确认测试_进行测试。软件可维护性度量的七个质量特性是可理解性、可测试性、可修改性、可靠性
19、、 可移植性 、 可使用性和效率。当A模块调用B模块时,若两个模块之间传递的是数值型参数,则这两个模块的耦合方式是_数据耦合_.向对象发出服务请求称为_接口_,类对象上的各种操作称为_方法_.提高软件质量和可靠性的技术主要有两类_避开错误技术_和_容错技术_。大型软件测试包括_单元测试_、_集成测试_确认测试和_系统测试_四个步骤。软件结构图的宽度是指一层中_最大_的模块个数.软件生存周期是指一个软件从提出开发要求开始直到_该软件报废_为止的整个时期.McCall提出的软件质量模型包括_11_个软件质量特性。对大信息系统的需求,DFD应与数据库技术中_ER_图结合起来。瀑布模型是以文档为驱动、
20、适合于_需求很明确的_的软件项目的模型。在结构化分析中,用于描述加工逻辑的主要工具有三种,即:结构化语言、判定表、 判定树 。数据项是指_不可再分的_数据单元。基于计算机的系统通常包含6个元素是硬件、软件、过程、文档、数据库和_。软件开发是一个自顶向下逐步细化和求精过程,而软件测试是一个_自底向上或相反顺序_集成的过程.软件维护的内容包括校正性维持,适应性维护、_完善性维护_和预防性维护。CMM将软件过程的成熟度分为5个等级是初始级、可重复级、 已定义级 、己管理级和优化级。软件结构是以 模块 为基础而组成的一种控制层次结构.结构化语言是介于自然语言和 形式语言 之间的一种半形式语言。在面向对
21、象方法中,对象实现了数据和操作的结合,使数据和操作_封装_于对象的统一体中。作为计算机科学技术领域中的一门新兴学科,软件工程主要是为了解决_问题.划分模块时尽量做到_高内聚、低耦合_,保持模块的独立性.瀑布模型是以文档为驱动、适合于_需求很明确的_的软件项目的模型。软件可维护性度量的七个质量特性是可理解性、可测试性、可修改性、可靠性 、可移植性 、 可使用性和效率。基于计算机的系统通常包含6个元素是硬件、软件、过程、文档、数据库和_。软件开发模型用于指导软件的开发。演化模型是在快速开发一个_可运行的软件原型_的基础上,逐步演化成最终的软件。软件工程包括的三个要素是 _方法、工具和过程_。常用的
22、成本估计技术有: 和自动估计成本技术三种.结构化分析方法常用的两种工具是_和_。模块的分解和合并应力求_降低耦合提高内聚_。程序的效率包括两个方面的内容_时间复杂度_和_空间复杂度_。形式化方法是一种基于 数学的方法来描述目标软件系统属性的 的技术。在需求分析时,常采用 数据流图 来描绘系统的行为。实体联系图包括: 实体关系属性 3种相互关联的信息。软件设计包括 制定计划和需求分析 两个阶段。基本路径测试是在程序流图的基础上,通过分析控制构造的环路复杂性 ,从而导出基本路径的集合,而设计测试用例,保证这些路径至少通过一次。软件维护活动主要包括完善性维护、 适应性维护 、改正性维护和预防性维护等
23、四种. 继承 是子类自动共享父类属性和操作的机制。IEEE定义 基线 是:已经通过了正式复审的规格说明或中间产品,它可以作为进一步开发的基础,并且只有通过正式的变化控制过程才能改变它。 软件生存周期是指软件从_定义_、_开发_、_维护_直到最终被废弃的全过程.瀑布模型的核心思想是_按工序将问题化简,将功能的实现与设计分开,便于分工协作,即采用结构化的分析与设计方法将逻辑实现与物理实现分开_。在可行性研究中,_是最关键的因素。软件生命周期由软件定义、软件开发和_软件维护_三个时期组成.一般来说,可行性研究应该从技术、经济和_社会_三个方面研究每种解法的可行性。软件_可靠性_是程序在给定的时间间隔
24、内,按照规格说明书的规定成功地运行地概率。常用的软件成本估计方法有_、任务分解技术和自动估计成本技术。软件需求分析时,应建立数据模型、功能模型和_行为模型_。所谓形式化方法,是描述系统性质的基于_数学_的技术。_信息隐藏_原理指出:应该这样设计和确定模块,使得一个模块内包含的信息对于不需要这些信息的模块来说,是不能访问的.如果一个程序的代码块仅仅通过顺序、选择和循环这三种基本控制结构进行连接,并且每个代码块只有一个入口和一个出口,则称这个程序是_结构化_的。软件的维护一般经过提出维护或修改要求、 领导复审并作出答复,如同意修改则列入维护计划、 领导分配人物维护人员执行修改三个步骤.三、 简答题
25、软件项目估算内容与步骤面向对象设计的准则是什么?有哪5个层次和4个部分?准则:模块化、抽象、信息隐蔽、高内聚、低耦合、可重用简述软件工程目标和面临的主要问题。目标:支付较低的开发成本、达到要求的软件功能、获取较好的软件性能、开发的软件易于移植、需要较低的维护费用、能按时完成开发任务,几时交付使用、开发的软件可靠性高面临的主要问题是:软件费用 软件可靠性 软件维护 软件生产率 软件重用。简述软件工程过程。软件工程过程是为获得软件产品,在软件工具支持下由软件工程师完成的一系列软件工程活动。软件工程过程通常包含四种基本的过程活动: P(Plan):软件规格说明.规定软件的功能及其运行的限制; D(D
26、o):软件开发。产生满足规格说明的软件; C(Check):软件确认。确认软件能够完成客户提出的要求; A(Action):软件演进。为满足客户的变更要求,软件必须在使用的过程中演进. 事实上,软件工程过程是一个软件开发机构针对某一类软件产品为自己规定的工作步骤,它应当是科学的、合理的,否则必将影响到软件产品的质量。 简述模块独立性的原则。模块独立性是指软件系统中每个模块只涉及软件要求的具体子功能,而和软件系统中其他的模块接口是简单的模块独立性的概念是模块化、抽象、信息隐蔽和局部话概念的直接结果由耦合和内聚2个标准度量简述结构化程序设计方法的基本要点1. 采用自顶向下,逐步求精的程序设计方法
27、在需求分析,概要设计中,都采用了自顶向下,逐层细化的方法。 2. 使用三种基本控制结构构造程序 任何程序都可由顺序、选择、重复三种基本控制结构构造.1)用顺序方式对过程分解,确定各部分的执行顺序。2)用选择方式对过程分解,确定某个部分的执行条件。 3)用循环方式对过程分解,确定某个部分进行重复的开始和结束的条件. 4)对处理过程仍然模糊的部分反复使用以上分解方法,最终可将所有细节确定下来。 3。 主程序员组的组织形式 简述软件生命周期开发方法的基本过程及每个阶段的任务。(1)问题定义阶段,尽可能清楚地描述问题,搞清楚要解决的问题是什么;(2)可行性研究阶段,主要是确定待解的问题是否有可行的解决
28、办法。需要做经济可行性分析、技术可行性分析、操作可行性分析和法律可行性分析;(3)需求分析阶段,主要是确定目标系统必须具备的功能。通常用数据流图、数据字典和简要的算法表示系统的逻辑模型.(4)总体设计阶段,从总体上解决问题,确定可实现的方案,并设计出软件的层次结构图;(5)详细设计,把解法具体化,确定如何具体地实现这个系统。针对每个模块设计相应的算法;(6)编码和单元测试阶段,把详细设计的结果翻译成选定的语言所写的程序,并对每个模块进行单元测试。(7)测试阶段,系统地设计测试用例,尽可能多地发现软件中的错误,并调试改正软件中的错误;(8)软件维护阶段,主要目的是通过修改软件使所开发的软件能够持
29、久地满足用户的需要。复印机的工作流程大致如下:未接到复印命令时处于闲置状态,一旦接到复印命令则进入复印状态,完成一个复印命令规定的工作后又回到闲置状态,等待下一个复印命令:如果执行复印命令时发现没纸,则进入缺纸状态,发出警告,等待装纸,装满纸后进入闲置状态,准备接收复印命令;如果复印时发生卡纸故障,则进入卡纸状态,发出警告,等待维修人员来排除故障,故障排除后回到闲置状态。试用状态转换图描绘复印机的行为。从问题陈述可知,复印机的状态主要有闲置、复印、缺纸和卡纸.引起状态转换的事件主要是复印命令、完成复印命令、发现缺纸、装满纸、发生卡纸故障和排除了卡纸故障简述文档在软件工程中的作用.1、提高软件开
30、发过程的能见度2、实现对软件开发的工程管理3、提高开发效率4、作为开发人员在一定阶段的工作成果和结束标志5、提供软件运行、维护和培训有关资料6、记录开发过程中有关信息便于协调以后的软件开发使用和维护7、便于用户了解软件功能、性能.简述软件项目管理过程。简述系统分析员应该具备的主要知识结构和基本素质。系统分析员应该既是信息系统专家,又是企业管理专家,同时还应该是优秀的领导者。系统分析员应该具有的知识结构为:首先应该具有深入扎实的信息系统方面的专业知识和实践经验,即他们必须具有计算机软硬件的知识和开发应用的实践经验,以及信息处理,包括IS、网络、通讯、数据库等方面的知识和实践经验;其次,应该具有经
31、济管理或企业管理方面较丰富的理论知识和实践经验;同时应该具有优秀领导者的素质、才能和领导艺术,在信息系统开发的实践中不断丰富自己、提高自己,使自己的知识结构更趋于合理。简述何谓软件开发方法?请列举四种主要方法。软件开发方法是一中使用定义好的技术集和符号表示组织软件生产的过程。结构化方法 jackson方法 维也纳开发方法 面向对象开发方法简述单元测试的基本内容。测试构造软件系统的模块(对象和子系统)模块接口主要检查数据能否正确通过模块;属性及对应关系是否一致局部数据结构说明不正确或不一致;初始化或缺省值错误;变量名未定义或拼写错误;数据类型不相容;上溢下溢或地址错误等重要的执行路径 重要模块要
32、进行基本路径测试,仔细地选择测试路径是单元测试的一项基本任务错误处理 主要测试程序对错误处理的能力,应检查是否不能正确处理外部输入错误或内部处理引起的错误;对发生的错误不能正确描述的内容,难以理解;在错误处理之前,系统已经进行干预等边界条件 程序最容易在边界上出错,如输入输出数据的等价类边界,选择条件和循环条件的边界,复杂数据结构的边界等都应进行测试什么是软件生存周期模型?请至少列举四种主要模型?软件生存周期模型是描述软件开发过程中各种活动如何执行的模型.软件生存周期模型确立了软件开发和演绎中各阶段的次序限制以及各阶段或机动的准则,确立开发过程所遵守的规定和限制,便于各种活动的协调,便于各种人
33、员的有效通信,有利于活动重用,有利于活动管理.常见的软件生存周期模型有瀑布模型、演化模型、螺旋模型、喷泉模型等.衡量模块独立的两个标准是什么?它们各表示什么含义?(网上)两个定性的度量标准:耦合与内聚性耦合性:也称块间联系.指软件系统结构中各模块间相互联系紧密程度的一种度量.模块之间联系越紧密,其耦合性就 越强,模块的独立性则越差. 内聚性:也称块内联系。指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。模块内元素联系越紧密,内聚性越高.简述白盒测试的思想,并列举两种典型的测试技术.白盒测试又称结构测试,它把测试对象看作一个透明的盒子。测试人员须了解程序的内部结构和处理过
34、程,以检查处理过程的细节为基础,对程序中尽可能多的逻辑路径进行测试,检查内部控制结构和数据结构是否有错,实际的运行状态和预期的状态是否一致典型测试技术:逻辑驱动、基本路径测试等简述CMM(软件能力成熟度模型)5个等级的含义第一级 基本集 软件工程是混乱无序的,对工程几乎没有定义,成功依靠的是个人的才能和经验,管理方式属于反应式第二级 重复级 建立了基本的项目管理来跟踪进度。费用和功能特征,制定了必要的项目管理,能够利用以前类似的项目应用取得成功第三级 确定级 已经将软件管理和过程文档化,标准化,同时综合成该组织的标准软件过程,所有的软件开发都使用该标准软件第四级 管理级 收集软件过程和产品质量
35、的详细度量,对软件过程和产品质量有定量的理解和控制。第五级 优化级 软件过程的量化反馈和新的思想和技术促进过程的不断改进简述软件维护的定义在软件运行或维护阶段对软件产品所进行的修改,这些修改可能是改正软件中的错误,也可能是增加新的功能以适应新的需求,但一般不包括软件系统结构上的重大改变简述软件测试的定义广义:软件产品生存周期内所有的检查评审和确认活动狭义:对软件产品质量的检验和评价,一方面检查软件产品质量中存在的质量问题同时对产品质量进行客观的评价。UML建模中主要包括哪九种图?并说明类图的定义及其中常见的关系有哪些?用例图 类图 对象图 状态图 顺序图 协作图 活动图 组件图 分布图 类图描
36、述系统的的静态结构.表示系统中类、类与类之间的关系以及类的属性和操作。常见关系:关联(分为聚合和组合)、范化、依赖、实现 什么是字据字典?其作用是什么?它有哪些条目?数据字典是用于定义数据流图中的各个成分的具体含义.它以一种准确的无二义的说明方式为系统的分析设计及维护提供了有关元素的一致的定义和详细的描述有4类条目:数据流、数据存储、数据项和加工四、分析题根据下面给出的规格说明,利用等价类划分的方法,给出足够的测试用例。 “一个程序读入三个整数。把此三个数值看成是一个三角形的三个边。这个程序要打印出信息,说明这个三角形是三边不等的、是等腰的、还是等边的。”1。分析三角形应满足:(1)输入3个数
37、(2)a,b,c整数(3)a0,b0,c0(4)a+bc,a+cb,b+ca等腰三角形除了满足三角形的条件外,还应满足:(5)a=b或a=c或b=c等边三角形除了满足三角形的条件外,还应满足:(6)a=b=c2.等价类表有效等价类编号无效等价类编号输入三个数(1)只输入a(10)只输入b(11)只输入c(12)只输入a,b(13)只输入a,c(14)只输入b,c(15)输入超过3个数(16)a,b,c整数(2)a非整(17)b非整(18)c非整(19)a,b非整(20)b,c非整(21)a,c非整(22)a,b,c非整(23)a0,b0,c0,b0,c0(4)a0(31)b0(32)c0(33
38、)a0,b0(34)a0,c0(35)b0,c0(36)a0,bb,b+ca(5)a+bc(38)a+b=c(39)a+cb(40)a+c=b(41)b+ca(42)b+c=a(43)a=b(6)ab且ac且bc(44)a=c(7)b=c(8)a=b=c(9)ab(45)bc(46)ac(47)覆盖有效等价类的测试用例覆盖有效等价类的测试用例等价类编号3,4,5(1)-(5)4,4,5(1)(5),(6)4,5,4(1)-(5),(7)5,4,4(1)-(5),(8)5,5,5(1)(5),(9)覆盖无效等价类的测试用例覆盖无效等价类的测试用例 等价类编号 3,, (10) ,3,* (11)
39、 ,3 (12) 3,4,* (13) 3,,4 (14) ,3,4 (15) 3,4,5,6,7 (16) 2.1,3,4 (17) 3,2.1,4 (18) 3,4,2。1 (19) 2.1,2。2,4 (20) 4,2。1,2。2 (21) 2.1,4,2.2 (22) 2。1,2。2,2.3 (23) 0,3,4 (24) 3,0,4 (25) 3,4,0 (26) 0,0,3 (27) 0,3,0 (28) 3,0,0 (29) 0,0,0 (30) -1,2,3 (31) 2,-1,3 (32) 2,3,-1 (33) 1,-2,3 (34) -1,3,2 (35) 3,-1,2 (36) 1,2,3 (37) 1,2,4 (38) 1,2,3 (39) 1,4,2 (40) 1,3,2 (41) 4,1,2 (42) 3,1,2 (43) 2,3,4 (44) 2,3,3 (45) 3,2,3 (46) 3,3,2 (47) 图书馆的预定图书子