软件工程(高等院校计算机教材系列)
分類: 图书,教材教辅与参考书,大学,计算机专业,
品牌: 吕云翔
基本信息·出版社:人民邮电出版社
·页码:229 页
·出版日期:2009年09月
·ISBN:7115202222/9787115202222
·条形码:9787115202222
·包装版本:第1版
·装帧:平装
·开本:16
·正文语种:中文
·丛书名:高等院校计算机教材系列
产品信息有问题吗?请帮我们更新产品信息。
内容简介《软件工程》从结构化方法和面向对象方法两方面介绍软件工程的基本概念、原理和方法,并用一个案例贯穿于每一章的实践部分,让读者在认识软件工程原理的基础上,能进一步利用相关的工具对所学内容进行实践,从而掌握实际进行软件开发的各种技能。《软件工程》理论与实践相结合,内容翔实,可操作性强。《软件工程》是高等院校计算机及相关专业“软件工程”课程的理想教材。
编辑推荐《软件工程》是高等院校计算机及相关专业软件工程谍程的理想教材。这是一本理论与实践并重的软件工程教材,书中不仅介绍了与软件工程相关的基本概念、方法和原理。而且还在此基础上讲述了可以实际用于软件开发实践的各种技能。各章均分为“理论部分”和“实践部分”。“理论部分”组织合理、切中要点、详略得当;“实践部分贴近实际,以具体的案例为示范,指导读者利用相关的工具对所学内容进行运用。此外,书中还配有丰富的习题,帮助读者检验各章的学习效果。
《软件工程》旨在使读者在有限的课时内,不仅能对软件工程的原理有所认识,而且能具备实际的软件开发技能,比如可以熟练地使用各种软件工程工具,能够按照标准和规范编写文档等。
目录
第1章 软件工程概述1
1.1 软件1
1.1.1 软件的概念1
1.1.2 软件的特点2
1.1.3 软件的分类3
1.2 软件危机4
1.2.1 软件危机的表现4
1.2.2 软件危机的原因5
1.3 软件工程6
1.3.1 软件工程的概念6
1.3.2 软件工程的基本内容7
1.3.3 软件工程的知识体系8
1.4 软件生命周期14
1.4.1 软件生命周期的概念14
1.4.2 传统软件生命周期的各个阶段15
1.5 软件开发模型及其发展16
1.5.1 瀑布模型17
1.5.2 原型模型18
1.5.3 增量模型19
1.5.4 螺旋模型19
1.5.5 统一软件开发过程模型20
1.5.6 敏捷模型21
1.5.7 MSF24
1.6 理论部分小结26
1.7 软件工程的相关工具27
1.8 软件工程的常用信息源27
1.9 Visio的功能及使用方法介绍28
1.10 Rose的功能及使用方法介绍34
练习题40
第2章 可行性研究及需求分析41
2.1 可行性研究41
2.1.1 可行性研究的目的与意义41
2.1.2 可行性研究的内容41
2.1.3 可行性研究的步骤42
2.2 需求分析43
2.2.1 需求分析的目的与意义43
2.2.2 需求分析的步骤44
2.3 结构化需求分析的方法46
2.4 结构化需求分析的工具47
2.4.1 数据流图47
2.4.2 数据字典48
2.4.3 E-R图49
2.5 面向对象的软件工程方法50
2.5.1 面向对象的基本概念50
2.5.2 面向对象的软件工程方法的特征与优势53
2.6 面向对象需求分析方法54
2.7 UML简介56
2.8 理论部分小结58
2.9 利用Visio绘制网上书店系统的数据流图58
2.10 利用Rose创建网上书店系统的用例模型63
2.11 需求规格说明书编写指南69
2.12 网上书店系统的需求规格说明书..74
练习题88
第3章 软件设计90
3.1 软件设计的基本概念90
3.1.1 软件设计的分类91
3.1.2 软件设计的原则91
3.2 结构化软件设计方法94
3.2.1 面向数据流的设计方法95
3.2.2 面向数据结构的设计方法98
3.3 结构化软件设计工具100
3.3.1 流程图100
3.3.2 N-S图102
3.3.3 PAD图103
3.4 面向对象软件设计方法104
3.5 数据库结构设计107
3.6 软件的体系结构108
3.6.1 软件的体系结构概述108
3.6.2 软件系统的设计模式110
3.7 理论部分小结115
3.8 利用Visio绘制网上书店系统的结构图115
3.9 利用Rose绘制网上书店系统的顺序图118
3.10 软件设计说明书编写指南120
3.11 网上书店系统的软件设计说明书124
练习题139
第4章 编码及实现140
4.1 编程语言140
4.1.1 编程语言的发展与分类140
4.1.2 选择编程语言需考虑的因素142
4.2 编程风格142
4.3 理论部分小结145
4.4 VisualStudio的使用方法介绍145
4.4.1 VisualStudio概述145
4.4.2 利用VisualStudio进行开发148
4.4.3 利用VisualStudio进行调试155
4.5 Fxcop的功能和使用方法介绍158
4.5.1 Fxcop概述158
4.5.2 利用Fxcop对网上书店系统的编码进行规范159
练习题163
第5章 软件测试164
5.1 软件测试的基本概念164
5.1.1 软件测试的原则165
5.1.2 软件测试模型166
5.2 软件测试的分类169
5.3 软件测试的方法170
5.3.1 等价类划分法171
5.3.2 逻辑覆盖法173
5.4 软件测试的一般步骤175
5.5 面向对象的软件测试175
5.6 理论部分小结178
5.7 利用VisualStudio中的工具进行单元测试179
5.8 测试分析报告编写指南184
5.9 网上书店系统的测试分析报告186
练习题198
第6章 软件工程的其他相关内容200
6.1 软件维护200
6.1.1 软件维护的过程201
6.1.2 软件维护的分类202
6.1.3 软件的可维护性203
6.1.4 软件维护的副作用204
6.2 软件质量保证206
6.2.1 软件质量的基本概念206
6.2.2 软件质量保证的措施207
6.3 软件配置管理208
6.4 软件过程能力成熟度模型209
6.5 软件项目管理211
6.6 软件文档213
6.7 理论部分小结215
6.8 Project的功能及使用方法介绍215
6.8.1 Project概述215
6.8.2 利用Project管理网上书店系统的开发过程223
6.9 用户手册编写指南227
6.10 用户安装手册编写指南228
练习题229
参考文献230
……[看更多目录]
序言软件工程是应用计算机科学技术、数学、管理学的原理,运用工程科学的理论、方法和技术,研究和指导软件开发和演化的一门交叉学科。随着科技的发展,软件工程已成为计算机科学及其相关专业的一门重要的必修课。其教学目的在于使学生掌握软件工程的基本概念和原则,培养学生使用工程化的方法高效地开发高质量软件的能力,以及进行项目管理的能力。
软件工程是一门理论与实践并重的课程。本书在讲述软件工程的基本概念、原理和方法的基础上,详细而全面地介绍了可以实际用于软件开发实践的各种技能。旨在使学生通过有限课时的学习后,不仅能对软件工程的原理有所认识,而且能具备实际开发软件的各种技能,比如熟练使用各种软件工程工具,按照标准和规范编写文档等。
本书共分为6章,内容涉及软件工程的基本原理和概念、软件开发生命周期的各个阶段、项目管理的相关内容,以及如何使用各种自动化工具来辅助软件开发的过程。每章分为理论部分和实践部分。理论部分从理论学习的角度,阐述软件工程的基本概念、原理和方法。在内容的安排上详略得当,使读者在有限的时间内能领会软件工程的精髓。实践部分配合理论部分的学习内容,指导读者利用相关的工具对所学内容进行运用。实践与理论的紧密结合,不仅有利于巩固和掌握知识,还能提高读者的实践能力。此外,本书使用了一个案例贯穿于各章的实践部分,使读者能通过实例对软件开发过程有一个系统的了解。
本书总结了我们多年软件工程教学与实践的经验。在本书编写的过程中,我们得到了王明华、张航、陈捷、于承东和曹科的支持,在此对他们表示感谢。
文摘插图:
第1章 软件工程概述
1.1 软件
1.1.1 软件的概念
软件是计算机系统的“思维中枢”,在计算机系统中起着举足轻重的作用。它与计算机硬件相互作用,互相配合,从而实现了特定的系统功能。计算机软件的概念是随着计算机技术的发展而发展的。
在计算机发展初期,软件就是指程序,即计算机可以识别的源代码或机器可直接执行的代码。当时,软件的作用并没有得到足够的重视。使用者一般需要直接操纵计算机硬件,程序是为某个特定问题而专门设计的。
随着计算机技术的发展,人们越来越充分认识到高质量的软件会使计算机系统的功能和效率大大地提高。高质量、多功能的软件使得计算机的应用从单一的科学计算扩展到多个领域,比如数据处理、实时控制等。随着计算机应用的日益普及,软件日益复杂,规模日益增大,人们开始意识到软件并不仅仅等于程序。
全面地讲,软件由图1-1所示的三部分组成。
·一是计算机程序,即人们为了完成特定的功能而编制的一组指令集。
·二是数据,即程序能处理的具有一定数据结构的信息。