
本书侧重于软件工程的“工程”概念、理论和方法,注重介绍软件工程的计划、进度、风险、成本、评估和维护,整体上分为四个部分:第一部分概括地介绍了软件工程的概论,包括:软件工程的基本概念、方法与理论,软件工程的研究内容,软件工程方法的模式,软件工程的工具和环境等;第二部分,主要介绍了结构化软件工程的方法;第三部分,主要介绍了面向对象的软件工程方法;第四部分,介绍了软件工程管理、软件工程经济学、软件的维护以及形式化软件工程和UML——统一的建模语言等高级软件工程方法。本书的特点是“实用”及充分体现工程特点,介绍了软件工程的最新理念,注重理论结合实际,结合实例介绍方法,内容紧凑,深入浅出。 本书可作为计算机科学与技术专业及其他相关本科专业的“软件工程”课程教材,也可作为从事计算机软件开发人员的参考书或使用手册。
随着社会的进步、科学发展、计算机技术的应用和普及日新月异,今后,软件将在其中扮演一个十分重要的角色。“实用软件工程”作为计算机专业的一门工程性课程,是计算机专业的后继课程, 它整合了计算机学科的各科知识,是通向工程的桥梁,是计算机专业的一门重要课程。 本书从实用和工程角度出发,对软件工程的基本概念、理论以及方法结合实例,进行了深入浅出的介绍。本书注重介绍软件工程的新理念和发展。该书主要作为本科阶段的教材使用, 同时也适合于不同层次的计算机专业人员学习或作为软件工程使用手册。 全书共分12章, 四个部分。第一部分, 主要介绍了软件工程的基础知识,让读者了解软件工程的概貌,从整体上把握软件工程;第二部分,主要介绍了软件工程的结构化分析、结构化设计和结构化实施等方法; 第三部分, 主要介绍了软件工程的面向对象分析、面向对象设计及面向对象实施等方法; 第四部分,主要介绍了软件工程管理、软件维护和UML——统一的建模语言等内容。 本书第一、二章由沈洁编写, 第三—五章由冯剑编写, 第六—九章由林芳编写,第十~—十二章由朱俊武编写。沈洁同志对全书进行了统稿。 在本书的编写过程中,得到了罗建利、许有志和杭月芹同志的帮助,华东船舶工业学院刘同明教授审阅了全部书稿,提出了许多宝贵意见,借此一并表示感谢。
序
前言
第一章 软件与软件危机
第一节 软件的发展历程
第二节 软件的概念和特点
第三节 软件危机
习题
第二章 软件工程的概念
第一节 软件工程的定义
第二节 软件工程方法
第三节 常见的几种软件开发模型
习题
第三章 结构化分析
第一节 结构化方法
第二节 需求分析
第三节 结构化分析方法
第四节 其他具有结构化思想的需求分析方法
习题
第四章 结构化设计
第一节 软件设计过程
第二节 软件设计的概念和原则
第三节 结构化设计方法
第四节 人机界面设计
第五节 详细设计
第六节 面向数据结构的设计方法
习题
第五章 结构化实现
第一节 编码
第二节 软件测试
第三节 调试
第四节 软件可靠性
习题
第六章 面向对象方法学概述
第一节 面向对象方法基本概念
第二节 面向对象的软件工程方法
习题
第七章 面向对象分析
第一节 对象模型的结构
第二节 对象模型的建立
第三节 动态模型的建立
第四节 功能模型的建立
第五节 定义服务
习题
第八章 面向对象设计
第一节 面向对象设计概述
第二节 问题域子系统(PDC)的设计
第三节 人一机交互子系统(HIC)的设计
第四节 任务管理子系统(TMC)的设计
第五节 数据管理子系统(DMC)的设计
习题
第九章 面向对象实现
第一节 面向对象编程
第二节 面向对象测试
习题
第十章 软件工程管理
第一节 软件项目管理
第二节 软件计划
第三节 软件质量管理
第四节 软件经济学
习题
第十一章 软件维护
第一节 软件维护的基本概念
第二节 软件的可维护性
第三节 软件维护的过程分析
第四节 基于构件复用的软件再工程
习题
第十二章 UML——统一的建模语言
第一节 UML概述
第二节 UML静态建模机制
第三节 动态建模机制
习题
附录 软件开发文档编写参考
参考文献