第一章 软件工程概论1.软件工程定义 软件工程是开发、运行、维护和修复软件的系统方法。是一门指导计算机软件开发和维护的工程学科 。软件工程学科是一门指导计算机软件开发和维护的工程学科。软件工程是一类求解软件的工程。2,软件工程包括三个要素:方法、工具和过程。方法:“如何做”工具:CASE,是软件开发环境中最重要的组成部分。过程:将方法和工具综合起来以达到合理、及时的进行计算机软件开发的目的。3,软件危机指在计算机软件开发和维护过程中所遇到的一系列问题:1、不能正确地估计软件开发成本和进度,致使实际开发成本往往高出预算很多。2、软件产品不可靠,满足不了用户的需求,甚至无法使用。3、交付使用的软件不易演化,以至于人们不得不重复开发类似的软件。4、软件生产率低下,远远满足不了社会发展的需求。4,软件工程是为了解决软件危机而产生的。5,软件工程目标:生产具有正确性、可用性以及开销合算的产品。第二章软件开发模型1.软件生存周期: 软件生命周期实质上是大型系统开发过程中各项目阶段的一种表示方法,如同任何事物一样,软件也有一个孕育、诞生、成长、成熟、衰亡的生存过程。根据这一思想,把上述基本的过程活动进一步展开,可以得到软件生命期的 6 个步骤,即制定计划、需求分析、设计、程序编码、测试及运行维护。软件生命期模型是从软件项目需求定义直至软件经使用后废弃为止,跨越整个生命周期的系统开发、运作和维护所实施的全部过程、活动和任务的结构框架。2,软件开发过程模型(软件生存周期模型),是把软件生存周期中软件生产活动的有序流程用一个合理的框架——开发模型规范描述。软件开发模型是软件开发全部过程、活动和任务的结构框架。软件开发过程模型是一种软件过程的抽象表示法,它从一个特定的角度表现一个开发过程。软件过程模型主要是根据软件的类型、规模,特别是软件的开发方法、开发环境等多种因素确立模型。主要有:原型模型、演化模型、增量模型、瀑布模型。3,软件过程各阶段任务(了解)各种软件过程模型虽然有所不同,一般都由软件定义、软件开发和软件维护三个时期组成,每个时期又可由多个阶段(子阶段)组成。软件定义时期的活动是弄清软件“做什么”,软件开发时期的活动是集中解决软件“怎样做”,软件维护时期的活动是聚焦于软件的“修改/完善”,它们的主要活动特征可以概括为 “ What-How-Change ”。1,软件定义时期是了解用户(或客户)提出的需求、确...