文档详情

软件工程剖析.ppt

发布:2016-06-18约6.96千字共65页下载文档
文本预览下载声明
软件开发3个阶段 软件工程的基本原理 用分阶段的生命周期计划严格管理 坚持进行阶段评审 实行严格的产品控制 采用现代程序设计技术 结果应能清楚地审查 承认不断改进软件工程实践的必要性 开发小组的人员应该少而精 软件开发方法 结构化开发方法 面向数据结构的方法 统一建模语言 原型化方法 面向问题的分析法 3.3.2 概要设计 1、概要设计的任务 软件概要设计的基本任务是:设计软件系统结构;数据结构及数据库设计;编写概要设计文档;概要设计文档评审。 常用的软件结构设计工具是结构图(SC----Structrue Chart),也称程序结构图,它包含如下几个基本图符: ? 经常使用的结构图有四种模块: 传入模块,传出模块,交换模块和协调模块。 一般模块 控制信息 数据信息 2、面向数据流的设计方法 典型的数据流类型有两种:变换型和事物型。 变换型数据处理问题的工作过程大致分为三步,即取得数据、变换数据和输出数据。 在一个事物型的数据流中,事物中心接收数据,分析每个事物以确定它的类型,根据事物类型选取一条活动通路。 图 变换型数据流图 图 事物型数据流图 3.3.3 详细设计 详细设计的任务是为软件结构图中的每一个模块确定实现算法和局部数据结构,用某种选定的表达工具表示算法和数据结构的细节。 常见的过程设计工具有: (1)图形工具:程序流程图,N-S,PAD。 (2)表格工具:判定表。 (3)语言工具:PDL(伪码)。 对程序流程图,N-S图,PAD图要求有所了解,能看懂简单的图形。 3.4 软件测试 软件测试是保证软件质量的重要手段,其主要过程涵盖了整个软件生命期的过程,包括需求定义阶段的需求测试、编码阶段的单元测试、集成测试以及后期的确认测试、系统测试,验证软件是否合格,能否交付用户使用等。 软件测试要以查找错误为中心,而不是为了演示软件的正确功能。软件测试是为了发现错误,一个成功的测试是发现了至今尚未发现的错误的测试。 软件测试的方法和技术多种多样。按是否需要执行被测软件分为静态测试(静态测试不实际运行软件,主要通过人工进行)和动态测试(是基于计算机的测试,是为了发现错误而执行程序的过程);按功能划分为白盒测试和黑盒测试。 1.白盒测试 白盒测试方法也称结构测试或逻辑驱动测试,是根据软件产品的内容工作过程,检查内部成分,以确认每种内部操作符合设计规格要求。它在程序内部进行,主要用于完成软件内部操作的验证。 白盒测试的基本原则是: 保证所测试模块中每一独立路径至少执行一次;保证所测模块所有判断的每一分支至少执行一次;保证所测模块每一循环都在边界条件和一般条件下至少各执行一次;验证所有内部数据结构的有效性,因而白盒测试是穷举路径测试。 白盒测试的主要方法有逻辑覆盖、基本路径测试等。逻辑覆盖是泛指一系列以程序内部的逻辑结构为基础的测试用例设计技术,包括语句覆盖、路径覆盖、判定覆盖、条件覆盖、判断-条件覆盖等。 2.黑盒测试 黑盒测试方法也称功能测试或数据驱动测试,是对软件已经实现的功能是否满足需求进行测试和验证。黑盒测试完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求和功能规格说明,检查程序的功能是否符合它的功能说明。所以,黑盒测试是在软件接口处进行,完成功能验证。 黑盒测试主要诊断功能不对或遗漏、界面错误、数据结构和外部数据库访问错误、性能错误、初始化和终止条件错。 黑盒测试方法主要有等价类划分法、边界值分析法、错误推测法、因果图等,主要用于软件确认测试。 3.4.4 软件测试的实施 软件测试一般按4个步骤进行: (1)单元测试:是对软件设计的最小单位----模块进行正确性检验的测试,其目的是发现各模块内部可能存在的各种错误,其依据是详细设计说明书和源程序。 (2)集成测试:是测试和组装软件的过程,是把模块在按照设计要求组装起来的同时进行测试,其目的是发现与接口有关的错误。其论据是概要设计说明书。 (3)确认测试:确认测试的任务是验证软件的功能和性能及其他特性是否满足需求规格说明书的各种需求,以及软件配置是否完全、正确。常运用黑盒测试方法。 (4)系统测试:是在实际运行环境下对计算机系统进行的一系列集成测试和确认测试。 3.5 程序的调试 在对程序进行了成功的测试之后将进行程序调试阶段,其任务是诊断
显示全部
相似文档