构造交互图;
? 根据交互图精化类图。 ? 4.单元测试任务主要有: ? 模块接口测试;
? 模块局部数据结构测试; ? 模块边界条件测试;
? 模块中所有独立执行通路测试; ? 模块的各条错误处理通路测试。 ? 5.面向功能的度量的优点和缺点 ? 答:优点
? ①与程序设计语言无关,它不仅适用于过程式语言,也适用于非过程式的语言;
? ②软件项目开发初期就能基本上确定系统的输入、输出等参数,功能点度量能用于软件项目的开发初期。 ? 缺点
? ①它涉及到的主观因素比较多,如各种权函数的取值; ? ②信息领域中的某些数据有时不容易采集; ? ③FP的值没有直观的物理意义。 ? 三 ? 问:
? 1. 简述概要设计,详细设计,实现任务,组装测试,确认测试它们的任务? ? 2.制定软件项目进度表有哪两种途径?
? 3.简述软件需求分析阶段的主要内容, 技术和方法? ? 4.简述过程设计语言(PDL)的特点。
? 5.简述过程式程序设计语言的基本机制所包括哪些内容。 ? 答:
? 1.概要设计任务:
? 根据SRS建立目标软件系统的总体结构和模块间的关系、定义各功能模块的接口,设计全局数据库和数据结构,规定设计约束,制定组装测试计划等等。
? 详细设计任务:
? 细化概要设计所生成的各个模块, 并详细描述程序模块的内部细节(算法,数据结构等),形成可编程的程序模块,制订单元测试计划 ? 实现任务:
? 根据详细设计规格说明书编写源程序,并对程序进行调试、单元测试、系统集成,验证程序与详细设计文档的 一致性 ? 组装测试任务:
? 组装测试应满足概要设计的要求。 ? 确认测试任务:
? 根据软件需求规格说明书,测试软件系统是否满足用户的需求 ? 2.制定软件项目进度表的两种途径:
? 软件开发小组根据提供软件产品的最后期限从后往前安排时间。
? 软件项目开发组织根据项目和资源情况制定软件项目开发的初步计划和交付软件产品的日期。
?
1
3.软件需求分析阶段的主要内容, 技术和方法分别为: ? 需求分析主要内容:问题分析、需求描述、需求评审
? 技术和方法:初步需求获取技术 需求建模技术 快速原型技术 ? 问题抽象、问题分解与多视点分析 ? 4.过程设计语言(PDL)的特点:
? ①关键字采用固定语法并支持结构化构件、数据说明机制和模块化; ? ②处理部分采用自然语言描述;
? ③允许说明简单(标量、数组等)和复杂(链表、树等)的数据结构; ? ④子程序的定义与调用规则不受具体接口方式的影响。 ? 5.过程式程序设计语言的基本机制所包括内容:
? 对象说明数据类型的定义和检查 子程序控制结构 ? 四 ? 问:
? 1、简述软件工程目标。 ? 2、 简述CMM优点和缺点。
? 3、 用SD方法将数据流图转换为软件结构,简述其过程。 ? 4、试述软件测试过程。
? 5、面向对象程序设计语言最基本的机制包括哪些? ? 答: ? 1、软件工程目标:在给定成本、进度的前提下,开发出具有可修改性、 有效性 、 可靠性、 可适应性、 可追踪性 、 可移植性、 可互操作性并满足用户需求的软件产品。 ? 2、 CMM优点和缺点: ? 优点
? CMM模型概念清晰、层次分明、易于操作。
? 为组织负责人和管理者提供指导组织逐步成熟的、明确的、有效的、单一路途。 ? 缺点
? 在阶段式模型中,属于较高级别成熟度的过程域不支持较低级别的过程域,如在L2级就无法安排属于L3级的“同行评审”过程域的实践活动。
? CMM过程域的度量只有通过或不通过,度量比较粗糙没有反映优势和一般。 ? 3 用SD方法将数据流图转换为软件结构,其过程分为: ? 确定信息流的类型;划定流界;
? 将数据流图映射为程序结构;提取层次控制结构; ? 通过设计复审和启发式策略精化结构。 ? 4、试述软件测试过程:
? 可概括为用单元测试保证模块正确工作,用综合测试保证模块集成到一起后正常工作,用确认测试保证软件需求的满足,用系统测试保证软件与其他系统元素合成后达到系统各项性能要求。
? 5、面向对象程序设计语言最基本的机制包括:
? 类、子类、对象和实例的定义,单继承和多继承,对象的部分—整体关系,消息传递和动态链接等等。 ? 五 ? 问:
?
1
1、项目风险 指项目在预算、进度、人力、资源、顾客和需求等方面的原因对软件项目产生的不良影响。 ? 2、 α测试 是指软件开发公司组织内部人员模拟各类用户行为对即将面市的软件产品(称为α版本)进行测试,试图发现错误并修正。
? 3、完善性维护成任务 是根据用户在使用过程中提出的一些建设性意见而进行的维护活动。
? 4、技术风险 指软件在设计、实现、接口、验证和维护过程中可能发生的潜在问题,对软件项目带来的危害。
5、活动图 描述系统为完成某项功能而执行的操作序列,这些操作序列可以并发和同步。 ? 答:
? 1、软件危机表现方面:
? 软件开发成本过高;软件质量得不到保证;软件开发效率低; ? 难以控制开发进度,工作量估计困难;
? 软件不能满足社会发展的需求,成为社会、经济发展的制约因素; ? 程序规模、工作量与成本的关系。 ? 2、软件项目管理任务:
? 制定软件项目的实施计划和方案; ? 对人员进行组织和分工; ? 按照计划进度,以及成本管理、风险管理、质量管理的要求进行软件开发,完成软件项目的各项要求和任务。 ? 3、采用信息隐藏原理指导模块设计优点:
? 支持模块的并行开发;减少软件测试和软件维护的工作量。
? 4、黑盒测试完全不考虑程序的内部结构和处理过程,测试仅在程序界面上进行。因此黑盒测试设计测试用例旨在说明: ? ①软件的功能是否可操作;
? ②程序能否适当地接收输入数据并产生正确的输出结果或在可能的场景中事件驱动的效果是否尽如人意;
? ③能否保持外部信息( 如数据文件) 的完整性。 ? 5、简述设计模型精化需要需要考虑的任务:
? 以顶层架构图为基础,精化目标软件系统的体系结构。 ? 精化类之间的关系。 ? 精化类的属性和操作。
? 针对具有明显状态转换特征的类,设计状态图。 ? 针对比较复杂的类方法,设计活动图。 ? 六 ? 问:
? 1.子程序是可独立编译的程序单元,子程序一般具备那三种机制 ? 2.试述瀑布模型的优点和缺点?
? 3.软件工程的目标是生产高质量的软件,高质量的软件应该具备那三个条件。
? 4.在省略有关建模的技术细节之后,简述域分析过程步骤。 ? 5.软件总体结构应该包括哪两方面内容? ? 答:
?
1
1.子程序是可独立编译的程序单元,子程序一般具备那三种机制 ① 子程序说明,它给出子程序与其他程序单元的接口; ② 子程序体,它实现子程序的数据和控制结构; ③ 调用方式。
? 2.试述瀑布模型的优点和缺点? ? 瀑布模型的优点
? 软件生命周期模型,使软件开发过程可以在分析、设计、编码、测试和维护的框架下进行;
? 软件开发过程具有系统性、可控性,克服了软件开发的随意性 ? 瀑布模型的缺点
? 项目开始阶段用户很难精确的提出产品需求,由于技术进步,用户对系统深入的理解,修改需求十分普遍。
? 项目开发晚期才能得到程序的运行版本,这时修改软件需求和开发中的错误代价很大。
? 采用线性模型组织项目开发经常发生开发小组人员“堵塞状态”,特别是项目的开始和结束。
? 3.软件工程的目标是生产高质量的软件,高质量的软件应该具备那三个条件。
? ①满足软件需求定义的功能和性能 ? ②文档符合事先确定的软件开发标准
? ③软件的特点和属性遵循软件工程的目标和原则。
? 4.在省略有关建模的技术细节之后,简述域分析过程步骤。
? 发现并描述可重用的实体;
? 对这些实体及它们之间的关系进行抽象化、一般化和参数化; 对可重用的实体进行分类、归并,以备日后重用。 ? 5.软件总体结构应该包括那两方面内容?
? 一是由系统中所有过程性部件(即模块)构成的层次结构, 亦称为程序结构;
? 二是输入输出数据结构。 ? 七 ? 问:
1.简述软件危机发生的原因。
2.程序设计环境的语言机制包括哪些?
3简述人机界面的设计过程可分为哪几个步骤? 4.典型的软件重用过程一般包括哪些?
5.面向对象程序设计语言最基本的机制包括哪些? 答:1.简述软件危机发生的原因:
软件的规模加大、复杂性提高、性能增强 软件是逻辑产品, 尚未完全认识其本质和特点
缺乏有效的、系统的开发、维护大型软件项目的技术手段和管理方法
用户对软件需求的描述和软件开发人员对需求的理解往往存在差异,用户经常要求修改需求,开发人员很难适应
软件开发的技术人员和管理人员缺乏软件工程化的素质和要求,对工程化的开销认识不足
2.程序设计环境的语言机制包括:
?
1
用于描述用户需求的规格说明语言, 用于表示设计文档的设计描述语言,
用于书写原型的原型语言以及用于书写目标软件产品的程序设计语言。 3简述人机界面的设计过程可分为: 创建系统功能的外部模型;
确定为完成此系统功能人和计算机应分别完成的任务; 考虑界面设计中的典型问题; 借助CASE工具构造界面原型; 真正实现设计模型; 评估界面质量
4.典型的软件重用过程一般包括:
域分析、开发软部件、组织与扩充软部件库、检索与提取软部件、理解与修改软部件、合成软部件等阶段
5.面向对象程序设计语言最基本的机制包括: ? 八: ? 问:
? 1.软件产品具有哪些特点?
? 2.简述在测试中采用自顶向下集成和自底向上集成的优缺点。
? 3.边界类描述目标软件系统与外部环境的交互,简述边界类主要任务是什么?
? 4. 精化体系结构的目的是什么?
? 5.一般而言,衡量某种程序语言是否适合于特定的项目,应考虑哪些因素? ? 1.软件产品具有哪些特点?
? 软件开发与传统的产品生产存在本质差别; ? 软件是逻辑产品,而不是物理产品; ? 软件不会磨损;
? 2.简述在测试中采用自顶向下集成和自底向上集成的优缺点
? 自顶向下集成的优点在于能尽早地对程序的主要控制和决策机制进行检验,因此较早地发现错误。
? 缺点是在测试较高层模块时,低层处理采用桩模块替代,不能反映真实情况,重要数据不能及时回送到上层模块,因此测试并不充分。
? 自底向上集成方法不用桩模块,测试用例的设计亦相对简单,但缺点是程序最后一个模块加入时才具有整体形象。
? 它与自顶向下综合测试方法的优缺点正好相反。
? 3.边界类描述目标软件系统与外部环境的交互,简述边界类主要任务是什么?
? 界面控制:包括输入数据的格式及内容转换,输出结果的呈现,软件运行过程中界面的变化与切换等。
? 外部接口:实现目标软件系统与外部系统或外部设备之间的信息交流和互操作。主要关注跨越目标软件系统边界的通信协议。
? 环境隔离:将目标软件系统与操作系统、数据库管理系统、应用服务器中间件等环境软件进行交互的功能与特性封装于边界类之中,使目标软件系统的其余部分尽可能地独立于环境软件。 ? 4. 精化体系结构的目的是
1
相关推荐: