本书全面系统地讲述软件工程的概念、原理和典型的方法学,并介绍软件项目的管理技术。其正文共8章,第1章是概述,第2-6章顺序讲述软件生命周期各阶段的任务、过程、结构化方法、面向对象分析和面向对象设计方法以及建模工具,第7-8章介绍软件体系结构以及分布式系统。可作为高等院校软件工程课程的教材或教学参考书。本书详细而全面地介绍实际用于软件开发实践的各种技能,旨在使学生通过有限课时的学习后,不仅能对软件工程的原理有所认识,而且能具备实际开发软件的各种技能,比如按照标准和规范编写文档等
本书比较系统全面地阐述了软件工程导论课程的理论和技术,既兼顾传统的、实用的软件开发方法,又涵盖了软件工程领域新的技术和方法,将当前的软件工程理论与方法进行了很好的融合:借助贯穿于全书的极具代表性的实例,细致而巧妙地讲解了各种相关概念。使读者从中学会软件开发各个环节的技术。
经过近五十年的发展,软件工程在支持软件系统工程化开发方面取得了令人瞩目的成绩,提出了大量的理论、方法、技术和工具。但是,近年来的研究和实践表明软件危机依然存在,软件开发仍然存在高成本、质量得不到保证、进度和成本难以控制等方面的问题,许多软件项目被迫延期甚至取消。与此同时,随着网络技术的不断发展,部署在网络基础上的软件系统的规模和复杂程度越来越高,并表现出诸如持续性、自适应性、交互性、异构性等特点。因此,如何支持这类复杂系统的开发,缓解和消除现阶段的软件危机是当前软件工程面临的一项重要挑战。本书全面、系统地讲述了软件工程的概念、原理和典型的方法学,并介绍了软件项目的管理技术,同时介绍了近年软件工程领域的一些新方法和新技术,包括:敏捷软件开发(agile software development)、测试驱动开发(testdriven development)、模型驱动开发(modeldriven development)等。本书共10章,内容分别为:软件工程概述、需求分析工程、结构化方法、面向对象方法、统一建模语言UML与实例、软件测试、软件维护、软件体系结构、面向对象开发中的设计模式、分布式系统与部件技术。本书可作为高等院校软件工程课程的教材或教学参考书。本书由武汉学院鲁星、武汉华夏理工学院钱小红、武昌工学院曾丹担任主编,由南宁学院雷渊、青岛理工大学琴岛学院宋传磊、武汉设计工程学院崔欢欢担任副主编,参编人员有武汉学院肖莹慧、王静、刘胜艳。在这里要特别感谢肖莹慧、王静、刘胜艳老师的帮助,她们的辛苦工作是本书得以顺利出版的关键。如果读者对本书有任何意见或建议,请联系我们。前言
第1章软件工程概述1
1.1软件技术概述1
1.2软件危机3
1.3软件工程4
1.4软件工程环境8
习题9
第2章需求分析工程10
2.1需求分析工程概述10
2.2需求分析工程的步骤11
2.3需求分析技术12
习题26
第3章结构化方法27
3.1问题定义27
3.2可行性研究27
3.3结构化分析28
3.4结构化设计34
习题43
第4章面向对象方法44
4.1面向对象方法概述44
4.2面向对象分析48
4.3面向对象设计63
习题74
第5章统一建模语言UML与实例75
5.1UML概述75
5.2UML视图77
5.3可视化建模工具Rose90
5.4UML实例简易教学管理系统JXGL91
习题101
第6章软件测试102
6.1软件测试的目标和原则102
6.2软件测试的步骤103
6.3软件测试的方法110
6.4程序调试115
6.5面向对象测试118
习题118
第7章软件维护119
7.1软件维护的定义119
7.2软件维护的代价120
7.3软件维护过程120
7.4软件的可维护性122
7.5预防性维护123
7.6软件再工程过程123
习题124
第8章软件体系结构125
8.1软件体系结构概述125
8.2软件体系结构的描述语言128
8.3体系结构风格131
习题136
第9章面向对象开发中的设计模式137
9.1设计模式概述137
9.2四种设计模式138
9.3设计模式编目142
9.4设计模式的选择及使用145
习题148
第10章分布式系统与部件技术149
10.1概述149
10.2CORBA技术153
10.3COM 技术158
习题166
参考文献167
目录