软件工程考试摘要.doc_第1页
软件工程考试摘要.doc_第2页
软件工程考试摘要.doc_第3页
软件工程考试摘要.doc_第4页
软件工程考试摘要.doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

单选15分填空10分名词解析5*3判断15解答3*(5,3,7)综合3*10大部分判断题(部分题目不完整)1、 软件模块之间的耦合性越弱越好(对)2、 数据库设计说明书是一个软件配置项(对)3、 在面向对象的软件开发中每个类都存在其相应的对象,类是对象的实例(错)4、 快速原型模型可以有效的适应用户需求的动态变化(对)5、 过程描述语言可用于描述软件的系统结构(错)6、 如果对于软件测试没有发生错误,那就说明软件是正确的(错)7、 模块化信息隐藏对象和逐步求精的软件设计语言原则有助于提高高内聚,低耦合等隐藏屏体。(对)8、 软件概要设计包括软件系统结构设计以及数据结构和数据库设计(对)9、 没有方法学的指导和有效地开发工具的支持,这往往称之为软件危机的原因之一(对)10、 一个好的开发人员应具备的素质和能力不包括良好的书面语言和口头(错)11、 在用户需求分析时观察用户首观操作过程,不是围绕模拟首观操作的过程而是围绕获得第一手资料并从中提取有价值的需求(?)12、 面向数据设计方法一般包括下面任务 确定数据的结构特征、应顺序选择和重复三种基本形式、表示数据等步骤(对)13、 理想的人机界面应针对有典型特性和特定的用户设计(对)14、 数据输入的一般准则中包括尽量增加用户输入的动作(错)15、 用穷举法是较现实的测试方法(错)16、 在软件维护过程中改善性维护是围绕适应软件的变化而修改软件的维护(对)17、 快速原型技术的适应软件产品要求与大量的用户交互需要大量可视输出或涉及一些复杂的长度(对)18、 主要由用户完成集成测试(错)简答题:1.请简述黑盒测试和白盒测试有何区别,黑盒测试有哪些常用方法?黑盒测试和白盒测试的区别:前者基于功能,后者基于结构;黑盒测试常用方法有:边界值、等价类、因果图、错误推测法等。2.什么是需求分析?需求分析阶段的基本任务是什么?需求分析:开发人员准确地理解用户的要求,进行细致的调查分析,将用户非形式的需求陈述转化为完整的需求定义,再由需求定义转换到相应的需求规格说明的过程。基本任务:1 问题识别分析与综合,导出软件的逻辑模型编写文档3. 单元测试、集成测试和确认测试各自主要目标是什么?它们之间有什么不同?相互有什么关系?单元测试、集成测试和确认测试各自主要目标是:单元测试的主要目标是检查各个模块是否正确实现规定的功能,从而发现模块在编码中或算法中的错误。集成测试的主要目标是检查与设计相关的软件体系结构的有关问题。确认测试的主要目标是检查已实现的软件是否满足需求规格说明书中确定的各种需求。单元测试、集成测试和确认测试之间的不同如下:测试内容不同:测试的方法不同:发现的错误不同:涉及的文档不同:三者相互关系是:单元测试、集成测试和确认测试是顺序实现的。首先单元测试对各个模块进行测试,然后集成测试以单元测试为基础,将所有已测模块按照设计要求组装成一个完整的系统,对模块组合的功能和软件结构检验进行测试,最后确认测试是以集成测试为基础,测试集成的软件是否满足需求规格说明书中确定的各种需求。4.什么是黑盒测试与白盒测试?它们都适应哪些测试? 黑盒测试指把测试对象看成一个黑盒子,测试人员完全不考虑程序的内部结构和处理过程,只在软件的接口处进行测试,依据需求规格说明书,检查程序是否满足功能要求,又称为功能测试或数据驱动测试。 白盒测试指把测试对象看成一个打开的盒子,测试人员需了解程序的内部结构和处理过程,以检查处理过程的细节为基础,对程序中尽可能多的逻辑路径进行测试,检验内部控制结构和数据结构是否有错,实际的运行状态与预期的状态是否一致。 白盒测试适应的测试有单元测试、逻辑覆盖(按逻辑覆盖程度不同,有语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖。)、循环覆盖(限制循环次数,有单循环和嵌套循环)和基本路径测试。 黑盒测试适应的测试有:确认测试、等价类划分、边界值分析、错误推测和因果图。类型测试依据开发环境测试原则黑盒功能需求快速应用开发环境所有可能的输入及其结果白盒程序内部结构结构化开发环境覆盖所4有的路径(语句)5.简述软件测试与软件调试的区别软件测试与软件调试在目的、技术和方法等方面存在很大的区别,主要表现在: 测试从一个侧面证明程序员的失败,而调试是为了证明程序员的正确。 测试从已知条件开始,使用预先定义的程序,且有预知的结果,不可预见的只是程序是否通过测试。调试一般以不可知的内部条件开始,除统计性调试外,结果是不可预见的。 测试是有计划的,并要进行测试设计,而调试是不受时间约束的。 测试是一个发现错误、改正错误、重新测试的过程,而调试是一个推理过程。 测试的执行是有规程的,而调试的执行往往要求程序员进行必要的推理及知觉的飞跃。 测试经常由独立的测试组在不了解软件设计的前提下完成,而调试必须由了解详细设计的程序员完成。大多数测试的执行和设计可由工具支持,而调试时,程序员能利用的工具主要是调试器6. 简述需求分析的主要任务1)问题识别:双方确定对问题的综合需求,这些需求包括功能需求,性能需求,环境需求,用户界面需求。2)分析与综合,导出软件的逻辑模型。3)编写文档,包括编写“需求规格说明书”,“初步用户使用手册”,“确认测试计划”,“修改完善软件开发计划”。7.简述衡量软件独立性的方法一般采用两个准则衡量软件的模块独立性:内聚和耦合 内聚:又称为块内联系,指模块内部各成分之间相互关联的程度,以高内聚为设计目标。 耦合:也称块间联系,模块之间相互联系程度的度量,联系越紧密,耦合性越强,独立性越差,以低耦合为设计目标。二、名词解析:条件覆盖 条件覆盖指设计足够测试用例,使判定表达式中每个条件的各种可能的值至少出现一次。2驱动模块驱动模块指用来模拟被测模块的上级调用模块,其功能比真正的上级模块简单得多,它只完成接受测试数据,以上级模块调用被测模块的格式驱动被测模块,接收被测模块的测试结果并输出。3桩模块桩模块指用来代替被测试模块所调用的模块,其作用是返回被测试模块所需的信息。4.判定/条件覆盖判定/条件覆盖指设计足够的测试用例,使得判定表达式中每个条件的所有可能取值至少出现一次,并使每个判定表达式所有可能的结果也至少出现一次。5.判定覆盖判定覆盖指设计足够的测试用例,使被测程序中每个判定表达式至少获得一次“真”值或“假”值,从而使程序的每个分支至少都通过一次,因此判定覆盖又称分支覆盖。6.软件配置管理软件配置管理,简称SCM,它用于整个软件工程过程。其主要目标是:标识变更、控制变更、确保变更正确地实现、报告有关变更。SCM是一组管理整个软件生存期各阶段中变更的活动。7.软件复用是指在构造新的软件系统的过程中,对已存在的软件人工制品的使用技术综合题P133画图:(1)分层数据流(2)用例图P241软件生存周期 时期 阶段 任务测试用例设计白皮书等价类划分方法1.定义:是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例。该方法是一种重要的,常用的黑盒测试用例设计方法。 2.划分等价类:等价类是指某个输入域的子集合。在该子集合中,各个输入数据对于揭露程序中的错误都是等效的,并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试,因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件就可以用少量代表性的测试数据取得较好的测试结果。等价类划分可有两种不同的情况:有效等价类和无效等价类。 1)有效等价类 是指对于程序的规格说明来说是合理的、有意义的输入数据构成的集合。利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能。 2)无效等价类 与有效等价类的定义恰巧相反。无效等价类指对程序的规格说明是不合理的或无意义的输入数据所构成的集合。对于具体的问题,无效等价类至少应有一个,也可能有多个。 设计测试用例时,要同时考虑这两种等价类。因为软件不仅要能接收合理的数据,也要能经受意外的考验,这样的测试才能确保软件具有更高的可靠性。 3.划分等价类的标准: 1)完备测试、避免冗余; 2)划分等价类重要的是:集合的划分,划分为互不相交的一组子集,而子集的并是整个集合; 3)并是整个集合:完备性; 4)子集互不相交:保证一种形式的无冗余性; 5)同一类中标识(选择)一个测试用例,同一等价类中,往往处理相同,相同处理映射到相同的执行路径。4.划分等价类的方法 1)在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类。如:输入值是学生成绩,范围是0100; 2)在输入条件规定了输入值的集合或者规定了必须如何的条件的情况下,可确立一个有效等价类和一个无效等价类; 3)在输入条件是一个布尔量的情况下,可确定一个有效等价类和一个无效等价类。 4)在规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可确立n个有效等价类和一个无效等价类。 例:输入条件说明学历可为:专科、本科、硕士、博士四种之一,则分别取这四种这四个值作为四个有效等价类,另外把四种学历之外的任何学历作为无效等价类。 5)在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则); 6)在确知已划分的等价类中各元素在程序处理中的方式不同的情况下,则应再将该等价类进一步的划分为更小的等价类。 5.设计测试用例 在确立了等价类后,可建立等价类表,列出所有划分出的等价类输入条件:有效等价类、无效等价类,然后从划分出的等价类中按以下三个原则设计测试用例: 1)为每一个等价类规定一个唯一的编号; 2)设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖地有效等价类,重复这一步,直到所有的有效等价类都被覆盖为止; 3)设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步,直到所有的无效等价类都被覆盖为止。18.1.4 分层数据流图为了表达较为复杂问题的数据处理过程,用一个数据流图往往不够。一般按问题的层次结构进行逐步分解,并以分层的数据流图反映这种结构关系。根据层次关系一般将数据流图分为顶层数据流图、中间数据流图和底层数据流图,除顶层图外,其余分层数据流图从0开始编号。对任何一层数据流图来说,称它的上层数据流图为父图,在它的下一层的数据流图为子图。顶层数据流图只含有一个加工,表示整个系统;输入数据流和输出数据流为系统的输入数据和输出数据,表明了系统的范围,以及与外部环境的数据交换关系。底层数据流图是指其加工不能再分解的数据流图,其加工称为原子加工。中间数据流图是对父层数据流图中某个加工进行细化,而它的某个加工也可以再次细化,形成子图。中间层次的多少,一般视系统的复杂程度而定。18.1.5 分层数据流图的解答要点通常设计分层数据流图需要注意以下几点。1父图与子图的平衡任何一个数据流子图必须与它上一层父图的某个加工对应,二者的输入数据流和输出数据流必须保持一致,此即父图与子图的平衡。父图与子图的平衡是数据流图中的重要性质,保证了数据流图的一致性,便于分析人员阅读和理解。在父图与子图平衡中,数据流的数目和名称可以完全相同;也可以在数目上不相等,但是可以借助数据字典中数据流描述,确定父图中的数据流是由子图中几个数据流合并而成的,也即子图是对父图中加工和数据流同时进行分解,因此也属于父图与子图的平衡,如图18-2所示。(点击查看大图)图18-2 父图与子图的平衡2局部数据存储的隐蔽性当某层数据流图中的数据存储不是父图中相应加工的外部接口,而只是本图中某些加工之间的数据接口时,那么这些数据存储为局部数据存储。为了强调局部数据存储的隐蔽性,一般情况下,局部数据存储只有作为某些加工的数据接口或某个特定加工的输入和输出时,才画出来。即按照自顶向下的分析方法,某数据存储首次出现时只与一个加工有关,那么这个数据存储应该作为与之关联加工的局部数据存储,在该层数据流子图中不必画出,而在该加工的子图中画出,除非该加工为原子加工。3输入/输出的平衡性每个加工必须有输入数据流和输出数据流,反映此加工的数据来源和加工变换结果。任务一:分析图书管理系统的登录模块,且绘制用例图 用例图主要在系统需求分析阶段和系统设计阶段使用。在系统需求分析阶段,用例图用来获取系统的需求,理解系统应当如何工作;在系统设计阶段,用例图用来规定系统要实现的行为。1、分析用户登录模块的功能需求 提供输入“用户名“和“密码“的文本框,验证用户身份的合法性。 2、识别参与者 在用户登录模块中,根据工作内容和操作权限的不同,可细分为4类参与者:图书借阅员、图书管理员、系统管理员、图书借阅者。 图书借阅员必须先进行登录,然后才可以执行借出或归还图书的操作;图书管理员必须先进行登录,然后才可以执行编制书目、图书入库等操作;系统管理员必须先进行登录,然后才可以进行系统的维护操作;图书借阅者也必须先进行登录,然后才能查询图书借阅情况或查询图书馆藏书信息。 3、识别用例用户登录模块的主要功能是:输入“用户名“和“密码“,验证用户身份的合法性,故主要用例有两个:输入用户名和密码、验证用户身份。5、描述用例用例名称验证用户身份用例编号简要说明验证用户所输入的“用户名“和“密码“是否有效参与者图书管理员、系统

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论