1、3.输入三个正整数作为边长,判断该三条边构成的三角形是等边、等腰还是一般三角形。使用流程图、PAD 图4、什么是判定/条件覆盖?为以下程序流程图设计判定 /条件覆盖测试用例并标明程序执行路径。 (x1) AND (y=0)(x=2) OR (z1) 句 1句 2句句 TTFFa bc de判定/条件覆盖它是指设计足够的测试用例,即满足条件覆盖又满足判定覆盖。测试用例:x=2,y=0 ,z=3(覆盖 x1,y=0,x=2,z1 ,通过路径 abcde) ; x=1,y=1 ,z=1(覆盖 x1,y0,x2,z1,通过路径 ace) 。5、根据下列条件使用等价类划分法设计测试用例。(书 P118
2、例)某一 8 位微机,其八进制常数定义为:以零开头的数是八进制整数,其值的范围是-177177,如 05,0127,-065(1)划分等价类并编号,如下表示:(2)为合理等价类设计测试用例,表中有两个合理等价类,设计两个例子(3)为不合理等价类测试用例,至少设计一个测试用例6、将下面给出的伪码转换为 N-S 图。 (8 分)void root ( float root1, float root2 ) i = 1; j = 0;while ( i 0 ) 求出根并输出 ;if ( p = 0 ) 求出重根并输出;j = j + 1;i = i +1;输出重根的方程的个数 j;7、某航空公司规定,
3、乘客可以免费托运重量不超过 30kg 的行李。当行李重量超过 30kg 时,对头等舱的国内乘客超重部分每公斤收费 4 元,对其他舱的国内乘客超重部分每公斤收费 6 元,对外国乘客超重部分每公斤收费比国内乘客多一倍,对残疾乘客超重部分每公斤收费比正常乘客少一半。用判定树表示与上述每种条件组合相对应的计算行李费的算法。i = 1; j = 0;while ( i 0 ?p = 0 ?求出重根并输出; j = j + 1;i = i + 1;输出重根的方程个数 iTTTFFF8、使用 PAD 图描述在数组 A(1)A(10)中找最大数的算法9、假设一家工厂的采购部每天需要一张定货报表,报表按零件编号
4、排序,表中列出所有需要再次定货的零件。对于每个需要再次定货的零件应该列出下述数据:零件编号,零件名称,定货数量,目前价格,主要供应者,次要供应者。零件入库或出库称为事务,通过放在仓库中的 CRT 终端把事务报告给定货系统。当某种零件的库存数量少于库存量临界值时就应该再次定货。要求:画出系统的数据流图。1、 什么是软件工程?软件工程的基本目标是什么?运用工程学的原理和方法来组织和管理软件的生产和管理,以保证软件产品开发、运行和维护的高质量和高生产率。软件工程的研究内容和最终目的是采用工程化的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结
5、合起来。2、 瀑布模型的阶段有哪些?各个阶段的任务是什么?瀑布模型有 6 个阶段,即可行性研究与计划、需求分析、设计、编程、测试、运行于维护。任务分别为:(1) 确定软件系统是否值得开发;(2) 确定系统做什么;(3) 把分析阶段产生的软件需求说明转换为用是当手段表示的软件设计文档;(4) 按模块说明书用某一种软件的设计语言为每个模块编写程序;(5) 排除前面 3 个阶段的错误,保证被开发软件的质量;(6) 在实际运行中不断修改、完善、维护,使系统持久地满足用户的需要。3、 什么是数据字典(DD)用来对数据流图中出现的所有名字进行定义,它由四个条目构成:数据流、文件、数据项、加工。4、 什么是
6、黑盒测试?什么是白盒测试?黑盒法是根据程序的功能说明来设计测试用例。黑盒法是在程序的接口上进行测试,看它能否满足功能要求,输入能否正确接收,并能否输出正确的结果,以及外部信息(如数据文件)的完整性能否保持。白盒法对程序的所有逻辑路径进行测试,在不同点检查程序的状态,确定实际状态和预期的状态是否一致。5、 黑盒测试法有哪些?掌握等价测试法的用例分析(见习题) 。(1) 等价分类法(2) 边缘值分析法(3) 因果图法(4) 错误推测法6、 面向对象的特征有哪些?有三个特征:封装、继承、多态性。7、 可行性研究的目的是什么?可行性研究的 4 个内容?可行性研究的任务?答:可行性研究的目的是最终确定这
7、样的软件项目是否能够开发,是否值得开发,是否需要更改问题定义的内容。可行性研究的内容是技术可行性分析、经济可行性分析、社会因素可行性分析、操作可行性分析以及开发方案可行性分析。可行性研究最根本的任务是对以后的行动方针提出建议。10、需求分析的任务?软件需求分哪三个层次,并解释说明?答:需求分析的任务是确定系统做什么。需求分析分为:问题分析、需求描述和需求评审。问题分析:系统分析员通过对问题及其环境的理解、分析和综合,清除用户需求的模糊性、歧义性和不一致性,并在用户的帮助下对相互冲突的要求进行折中。需求描述:正确地描述现实问题以需求模型为基础,考虑到问题的软件可解性,生成需求规格说明和初步的用户
8、手册。需求评审:对需求规格说明和初步的用户手册进行复核,以确保软件需求的全面性、精确性,并使用户和软件设计人员对需求规格说明及用户手册的理解达成一致。11、软件测试的步骤有哪些?答:(1)单元测试 就是对逐个模块进行测试,通常称为“分调” ,在编码阶段进行,单元测试多采用白盒测试技术,系统内多个模块可以并行地进行测试。(2)整体测试 是根据模块结构图将各个模块连接起来,装配成一个符合设计要求的软件系统。(3)有效性测试 是通过黑盒测试来证实软件功能与用户要求是否一致。(4)系统测试 这一步可以发现设计和分析阶段的错误。12、白盒测试法有哪些?掌握判定/条件覆盖的测试用例答:语句覆盖、判定覆盖(
9、或称分支覆盖) 、条件覆盖、判定/条件覆盖、条件组合覆盖。判定/条件覆盖的测试用例见书上 P11513、 UML 有 9 种图分别是什么?及各自的特征?答:UML 有 9 种图分别是用例图、类图、对象图、顺序图、协作图、状态图、活动图、构件图(构件图) 、部署图(部署图) 。用例图是从用户角度描述系统功能, 是用户所能观察到的系统功能的模型图,用例是系统中的一个功能单元类图描述系统中类的静态结构。不仅定义系统中的类,表示类之间的联系如关联、依赖、聚合等,也包括类的内部结构(类的属性和操作)。类图是以类为中心来组织的,类图中的其他元素或属于某个类或与类相关联 对象图是类图的实例,几乎使用与类图完
10、全相同的标识。他们的不同点在于对象图显示类的多个对象实例,而不是实际的类顺序图显示对象之间的动态合作关系,它强调对象之间消息发送的顺序,同时显示对象之间的交互。顺序图的一个用途是用来表示用例中的行为顺序。当执行一个用例行为时,顺序图中的每条消息对应了一个类操作或引起状态转换的触发事件。协作图描述对象间的协作关系,协作图跟顺序图 相似,显示对象间的动态合作关系。除显示信息交换外,协作图还显示对象以及它们之间的关系。协作图的一个用途是表示一个类操作的实现。状态图是一个类对象所可能经历的所有历程的模型图。状态图由对象的各个状态和连接这些状态的转换组成 活动图是状态图的一个变体,用来描述执行算法的工作
11、流程中涉及的活动。活动图描述了一组顺序的或并发的活动。构件图为系统的构件建模型构件即构造应用的软件单元还包括各构件之间的依赖关系,以便通过这些依赖关系来估计对系统构件的修改给系统可能带来的影响。部署图描述位于节点实例上的运行构件实例的安排。节点是一组运行资源,如计算机、设备或存储器。这个视图允许评估分配结果和资源分配。判断题1、UML 中一共有九种图:它们是用例图、类图、对象图、顺序图、协作图、状态图、活动图、构件图、部署图(正确)2、用例图是从程序员角度来描述系统的功能(错误)3、类图是描述系统中类的静态结构,对象图是描述系统中类的动态结构 (错误)4、活动图和状态图用来描述系统的动态行为(
12、正确)5、协作图的一个用途是表示一个类操作的实现(正确)填空1UML 由视图、图、模型元素、公共机制等几个部分组成。 2. UML 视图分为用例视图、 逻辑视图 、组件视图 、进程视图和配置视图 5种视图。3.类之间的关系包括关联关系、泛化关系、依赖关系、聚合关系和组合关系。4.软件测试分为四个步骤:单元测试、联合测试有效测试和系统测试。5.软件生存周期分为 6 个阶段,分别是可行性研究与计划,需求分析阶段、设计阶段、编码阶段,测试阶段和运行与维护阶段。8、 什么是软件生存周期模型?软件生存周期模型有哪些?各自的特点,适用场合。软件生存周期模型是软件开发全部过程、活动和任务的结构框架。瀑布模型
13、、增量模型、迭代模型、原型模型、螺旋模型和喷泉模型序号 模 型 名 称 优 点 缺 点 适 用 范 围1 瀑布模型 简单好学 逆转性差 面向过程开发2 增量模型 可以分阶段提交有时用户不同意 系统可拆卸和组装3 迭代模型 需求可变 风险大 有高素质软件团队4 原型模型 开发速度快 不利于创新 已有产品的原型5 螺旋模型 需求可变 建设周期长 庞大、复杂、高风险项目6 喷泉模型 提高开发效率 不利于项目的管理 面向对象开发瀑布模型的特点:过程逆转性很差或者说不可逆转,因为根据上游的错误会在下游进行发散性传播的原理,所以逆转将会延误工期,增加成本,造成重大损失。选择瀑布模型必须满足下列条件:(1) 在开发时间内需求没有或很少变化。(2) 分析设计人员对应用领域很熟悉。(3) 低风险项目(对目标、环境很熟悉) 。(4) 用户使用环境很稳定。(5) 用户除提出需求以外,很少参与开发工作。瀑布模型适合于功能和性能明确、完整、无重大变化的软件开发