第一章软件工程概述1软件的概念软件由两部分组成:计算机程序及其相关文档8软件三层含义:一、个体含义,软件是指计算机系统中的某个程序及其文档,二、整体含义,软件指在特定计算机系统中所有个体含义的软件的总体,三,科学含义,软件指在开发、使用和维护前述含义下的软件按所涉及的理论、原则、方法、技术所构成的学科,在这种含义下,软件也可称为软件科学
2特点:1)软件是一种逻辑实体,而不是具体的物理实体2)软件是开发出来的,而不是创造出来的3)软件可能被废弃,但不会被用坏4)以往的软件大多是定制的,而不是装配的5)软件的开发和运行常常受到计算机系统的限制,对计算机系统有着不同程度的依赖
3软件的分类:1)系统软件:操作系统,编译软件,设备驱动2)应用软件:3)支撑软件:工具软件,需求分析工具,设计工具,测试工具,配置管理工具
4)可复用软件:标准函数库,数据结构
4软件工程的定义:指导软件开发和维护的工程性学科,它以计算机科学理论和其他相关学科的理论为指导,采用工程化的概念,原理,技术和方法进行软件的开发和维护,把经过时间考验而证明是正确的管理技术和当前能够得到的最好技术方法结合起来,以较少的代价获得高质量的软件并维护它
5软件生存周期P121)问题定义与可行性研究:到底要解决什么问题,能否解决问题
2)需求分析:目标系统应当做什么3)软件设计:目标系统如何做
4)程序编码与单元测试:编写正确的,可维护的程序代码5)综合测试6)软件维护6瀑布模型p141)需求分析与定义:通过会商建立起系统功能,限制,目标,然后详细的定义他们,编制系统规格说明
2)系统与软件设计:系统设计将需求分配给系统硬件和软件,软件设计标识和描述基本的系统构件以及他们之间的关系
3)实现和单元测试:实现是将软件设计转化为一组程序或程序单元;单元测试检查每个程序单元是否满足设计要求
4)集成和系统测试5)运