内容提要本书从实用的角度出发系统地介绍了软件工程的基本理论、方法、技术、工具和环境。全书共17章。内容主要包括:概述,软件项目管理,计算机系统工程,需求分析,面向数据流的分析方法,面向数据的分析方法与形式化方法,面向对象的需求分析,软件设计基础,面向数据流的设计方法,面向数据的设计方法,面向对象的设计方法,人机界面设计,程序设计语言与编码,软件测试、软件维护、软件配置管理以及软件开发新技术简介等。本书结构合理,在选材上注重了实用性,以期达到理论与实践相结合、学以致用的目的,本书对计算机辅助软件工程(CASE)工具的介绍几乎贯穿全书,概念清楚、通俗易懂、内容翔实、实例丰富、习题思考题与内容配合紧密。本书既可作为高等院校“软件工程”课程的教材或教学参考书,也可作为软件开发人员的参考书。前言软件工程是计算机学科中一个非常有价值并具有广阔发展空间的研究领域。多年来,随着计算机硬件技术的迅猛发展,人们开发优质软件的能力远远落后于社会各个领域对计算机软件的需求,也就是说,时至今日,仍然经受着“软件危机”的困扰。为了克服“软件危机”,自2世纪6年代末期以来,人们在这一领域做了大量的研究与实践工作,积累了大量的软件开发技术和方法,进而逐渐形成了系统的软件项目开发与管理理论。于是,一门新兴的学科——软件工程学(简称软件工程)诞生了。软件工程所研究的范围十分广泛,主要包括软件项目开发和软件维护的有关理论、技术、方法、标准、计算机辅助工具和环境以及软件项目管理等诸多方面。软件工程领域的研究成果为缓解软件危机发挥了关键性作用。“软件工程”课程是高等学校计算机学科教学计划中的一门主干课程。本书正是为普通高校计算机学科“软件工程”课程而编写的教材。本书共17章,其中第1章~第3章介绍软件工程的基本概念、软件项目管理、计算机系统工程:第4章~第7章介绍需求分析的有关内容,包括需求分析概念、面向数据流、面向数据、形式化、面向对象等需求分析方法、需求规格说明与评审等;第8章一第12章介绍软件设计的有关内容,包括软件设计的概念、设计过程和一般性技术,面向数据流、面向数据、面向对象以及人机界面的设计方法与技术、设计规格说明与评审等:第13章~第16章介绍软件的实现、测试与维护,主要包括程序设计语言与编码、软件测试与调试、软件维护、软件配置管理等:第17章简单介绍近期出现的与软件开发有关的新技术,包括软件重用技术、Intemet与Java、对象链接与嵌入(OLE)技术以及分布计算技术等。本书具有以下几个特点:(1)结构合理,系统地介绍了软件工程的基本原理、概念、方法和工具。(2)在选材上注重了实用性,以期达到理论与实践相结合、学以致用的目的。(3)对计算机辅助软件工程(CASE)工具的介绍几乎贯穿全书。(4)概念清楚、通俗易懂、内容翔实、实例丰富,习题思考题与内容配合紧密。本书可以作为高等院校“软件工程”课程的教材或教学参考书,也可以作为软件开发人员的参考书。本书由曹哲主编,由高诚、车进辉、吴燕任副主编,具体分工为:第1章、第2章和第14章由曹哲编写;第5章、第6章、第8章、第9章、第1章、第12章、第16章由高诚编写,第7章、第11章、第13章、第15章、第17章由车进辉编写,第3章和第4章由吴燕编写。本书由朱敦名教授主审。在本书的编写过程中,北华大学计算机科学技术学院计算机实验室的全体同志给予了多方面的支持和帮助。赵津燕、刘艳、李益民、胡晓宏、尹健慧、葛建梅、王双立等同志也参与了大纲讨论,并提出了很多宝贵意见。在此,编者向他们表示衷心地感谢。由于时间仓促及编者水平有限,书中难免存在疏漏和不妥之处,恳请广大读者批评指正。编者联系方式:Zxqu3@tom.com。编者24年5月