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