1第3章软件工程基础2内容提要•软件工程基本概念,软件生命周期概念,软件工具与软件开发环境
•结构化分析方法,数据流图,数据字典,软件需求规格说明书
•结构化设计方法,总体设计与详细设计
•软件测试的方法,白盒测试与黑盒测试,测试用例设计,软件测试的实施,单元测试、集成测试和系统测试
•程序的调试33
1软件工程基本概念43
1软件定义与软件特点•1.软件的定义和组成–定义:•计算机软件(Software)是计算机系统中与硬件相互依赖的另一部分
–组成:•程序•数据•文档–国标(GB)定义•与计算机系统的操作有关的计算机程序、规程、规则,以及可能有的文件、文档及数据
1软件定义与软件特点(续)•2.软件的特点–软件是一种逻辑实体,而不是具体的物理实体,具有抽象性–软件没有明显的制造过程
对软件的质量控制,必须在软件开发方面下功夫–软件不存在老化问题,但存在退化问题,必须要修改和维护–对计算机系统有着依赖性——软件移植的问题–软件复杂性高,开发和维护成本高–软件开发涉及诸多社会因素63
1软件定义与软件特点(续)•3.软件的分类–应用软件–系统软件•操作系统•数据库管理系统•设备驱动程序•……–支撑软件73
2软件危机与软件工程•1.软件危机–软件工程源自于软件危机–主要表现:•软件需求的增长得不到满足•软件开发成本和进度无法控制•软件质量难以保证•软件不可维护或维护程度非常低•软件成本不断提高•软件开发生产效率的提高赶不上硬件的发展和应用需求的增长–归结为成本、质量和生产率等问题83
2软件危机与软件工程•2.软件工程的产生与定义–软件工程学——工程学的新兴领域–定义:•国标(GB):应用于计算机软件的定义、开发和维护的一整套方法、工具、文档、实践标准和工序
•德国人FritzBauer:软件工程是建立并使用完善的工程化原则,以较经济的手段获取能在