热门关键字:  听力密码  单词密码  新概念美语  巧用听写练听力  零起点

软件工程

中国水利水电出版社
    【作 者】景秀丽 吕洪林 【I S B N 】978-7-5084-7528-8 【责任编辑】李炎 【适用读者群】本专通用 【出版时间】2010-06-26 【开 本】16开 【装帧信息】平装(光膜) 【版 次】第1版第1次印刷 【页 数】280 【千字数】426 【印 张】17.5 【定 价】30 【丛 书】21世纪高等院校创新精品规划教材 【备注信息】
图书详情

    本书详细地阐述了软件工程基础知识及其相关的实用技术。内容包括软件工程概述、软件可行性研究、软件需求分析、软件总体设计、软件详细设计、面向对象技术、统一建模语言UML、程序编码、软件测试、软件实施与维护、软件重用技术、软件项目计划与管理、软件开发工具与环境以及软件开发实战(物流网络管理系统设计与实现)。

    本书注重软件工程基本知识和基本概念的形象表述,注重内容系统性与实用性的恰当结合,力求做到通俗易懂,突出实践性。教材通过对软件工程常用方法的介绍,展现软件设计的实际运作过程,帮助读者掌握相关知识并在软件工程项目的开发上使用工程化标准。

    本书适合高等院校本科层次和高职层次的计算机和软件技术相关专业的学生使用,也可作为软件开发技术培训的教材,同时还可作为从事软件开发人员的参阅资料。

    1.紧扣软件工程的教学大纲和考试大纲,注重软件工程基础知识和实用技术的准确表述;

    2.教程力求通俗易懂,内容丰富,图文并茂;

    3.注重知识陈述的系统性与实用性的恰当结合,适合教学流程;

    4.每章都配有【本章引言】、【本章重点】、【学习目标】以及小结和习题,便于读者预习、复习与自测;

    5.《软件工程》配有电子课件,供师生上课和自学之用;

    6.教程提供完整的软件开发案例及其程序源代码,展现了软件设计的实际运作过程。

    软件工程是一门运用工程学的原理和方法来组织和管理软件的开发、运行和维护,力求以高效率生产出高质量的软件产品的学科。软件工程是计算机科学技术领域的一个重要分支,在软件开发实战中起到基础指导的作用。

    当今,国内软件工程教材较多,相关内容的深浅度、侧重点各有不同。我们依据高等院校本科生“软件工程”学科教学大纲所规定的教学要求编写了本教材,同时把多年来软件工程的教学经验和教学实践成果融入到书中,介绍了软件工程的基础理论、软件开发流程以及相关实践操作,从而指导学生进行软件开发活动。本教材也适用于高职高专计算机相关专业和软件技术相关专业的学生使用。

    在教材编写上,本着深入浅出的原则,注重内容的先进性、系统性和实用性,力求反映软件开发技术的最新成果。在结构安排上,通俗易懂地阐述软件工程的基础理论知识,循序渐进,注重结合实践内容。在每章内容后面均附有小结和课后习题。

    本书共14章,针对计算机专业和软件技术专业学生的实际特点设计了知识结构,全面系统地阐述了软件工程的知识体系、软件开发的相关流程,具体分布如下:

    第1章,软件工程概述。主要介绍了软件工程的概念、软件生命周期和软件开发模型。

    第2章,软件可行性研究。概括描述了可行性研究的任务、可行性研究的步骤和可行性研究的报告。

    第3章,软件需求分析。系统介绍了需求分析概要、面向数据流的分析方法、需求分析方法与图形工具、实体-联系图和需求规格说明与评审。

    第4章,软件总体设计。介绍了总体设计概要、总体设计的图形描述工具、模块化设计和面向数据流的设计方法。

    第5章,软件详细设计。介绍了详细设计概述、详细设计的图形描述工具、Jackson设计方法和Warnier设计方法。

    第6章,面向对象技术。介绍了面向对象技术的概述、面向对象的开发模型、面向对象的分析、面向对象的系统设计、面向对象的实现、面向对象的程序设计语言以及类和应用程序的实现。

    第7章,统一建模语言UML。介绍了UML基本概念、UML的概念模型、UML的静态建模机制、UML的动态建模机制和UML的物理架构建模。

    第8章,程序编码。介绍了程序设计语言、结构化程序设计、程序设计风格、程序设计效率和程序复杂性度量。

    第9章,软件测试。介绍了软件测试的基本概念、软件测试方法、软件测试流程、测试用例的设计、面向对象软件测试和软件测试的相关文档。

    第10章,软件实施与维护。介绍了软件产品的实施、软件产品的维护活动、软件维护过程、软件维护文档、软件可维护性和软件维护的深化(软件再工程)。

    第11章,软件重用技术。介绍了软件重用技术概要、基于构件的软件开发和面向对象的软件重用技术。

    第12章,软件项目计划与管理。介绍了软件项目的计划与组织、软件成本估算及控制、软件工程标准与软件文档等。

    第13章,软件开发工具与环境。介绍了软件开发工具、软件工程环境和CASE技术。

    第14章,软件开发实战。物流网络管理系统设计与实现。

    本书由景秀丽、吕洪林任主编,高红、栾阳、郑学伟任副主编,陈悦、关雪梅参编。第1、2、12章由关雪梅编写,第3、4章由陈悦编写,第5、6、11章由栾阳编写,第9、10章由景秀丽编写,第7、8、13、14章由吕洪林编写。杜文洁老师作为整本书的主审,提出了许多宝贵的意见,郑学伟老师担任部分编写和校对工作。

    由于时间仓促及作者水平有限,书中难免存在错误和不妥之处,恳请广大读者批评指正。

    编 者

    2010年4月

    前言

    第1章 软件工程概述 1
    1.1 软件概述 1
    1.1.1 软件的概念 1
    1.1.2 软件的分类 1
    1.1.3 软件的发展 3
    1.1.4 软件危机 3
    1.2 软件工程的概念 5
    1.2.1 软件工程的定义和原理 5
    1.2.2 软件工程的目标 7
    1.2.3 软件工程的原则 7
    1.3 软件生命周期 8
    1.4 软件开发模型 9
    1.4.1 瀑布模型 9
    1.4.2 快速原型模型 11
    1.4.3 增量模型 12
    1.4.4 螺旋模型 13
    1.4.5 喷泉模型 15
    1.5 小结 15
    1.6 习题 16
    第2章 软件可行性研究 17
    2.1 可行性研究的任务 17
    2.2 可行性研究的步骤 18
    2.3 可行性研究报告 19
    2.4 小结 22
    2.5 习题 22
    第3章 软件需求分析 23
    3.1 需求分析概述 24
    3.1.1 需求分析的任务 24
    3.1.2 需求分析的步骤 27
    3.1.3 软件需求分析的原则 30
    3.2 面向数据流的分析方法 31
    3.2.1 基于数据流的分析方法 31
    3.2.2 数据流图 31
    3.2.3 数据字典 34
    3.2.4 加工逻辑说明 38
    3.3 需求分析方法与图形工具 40
    3.4 实体—联系图 42
    3.4.1 数据对象、属性与关系 42
    3.4.2 实体-联系图和实体模型 43
    3.5 需求规格说明与评审 44
    3.6 小结 47
    3.7 习题 47
    第4章 软件总体设计 48
    4.1 总体设计概述 48
    4.1.1 总体设计的任务 48
    4.1.2 总体设计的步骤 49
    4.2 总体设计的图形描述工具 51
    4.2.1 层次图 51
    4.2.2 HIPO图 52
    4.2.3 结构图 52
    4.3 模块化设计 54
    4.3.1 模块化与局部化 54
    4.3.2 模块独立性 56
    4.3.3 抽象与信息隐蔽 64
    4.4 面向数据流的设计方法 64
    4.4.1 基本概念 65
    4.4.3 事务分析 72
    4.4.4 设计优化原则 73
    4.5 小结 73
    4.6 习题 74
    第5章 软件详细设计 75
    5.1 详细设计概述 75
    5.1.1 详细设计的任务 75
    5.1.2 详细设计的步骤 76
    5.2 详细设计的图形描述工具 76
    5.2.1 程序流程图 77
    5.2.2 N-S图 79
    5.2.3 PAD图 81
    5.2.4 过程设计语言PDL 82
    5.2.5 判定表和判定树 86
    5.3 Jackson设计方法 88
    5.3.1 Jackson方法概述及其图例 88
    5.3.2 Jackson程序设计过程 92
    5.4 Warnier设计方法 92
    5.4.1 Warnier方法概述及其图例 92
    5.4.2 Warnier程序设计过程 94
    5.5 小结 95
    5.6 习题 98
    第6章 面向对象技术 100
    6.1 面向对象技术的概述 101
    6.1.1 面向对象的基本概念 101
    6.1.2 面向对象技术的优势 103
    6.2 面向对象的开发模型 104
    6.3 面向对象的分析 107
    6.3.1 论域分析 108
    6.3.2 应用分析 108
    6.4 面向对象的系统设计 110
    6.4.1 系统设计过程 110
    6.4.2 子系统设计 111
    6.4.3 人机交互设计 111
    6.4.4 任务管理设计 113
    6.4.5 数据管理设计 114
    6.5 面向对象的实现 115
    6.5.1 程序设计语言 115
    6.5.2 类和应用程序的实现 116
    6.6 小结 116
    6.7 习题 117
    第7章 统一建模语言(UML) 119
    7.1 UML概述 119
    7.1.1 UML概念 119
    7.1.2 UML的演变 120
    7.1.3 UML的主要内容 121
    7.1.4 UML的应用 122
    7.2 UML的概念模型 122
    7.2.1 UML的构造块 123
    7.2.2 UML的规则 126
    7.2.3 UML的公共机制 126
    7.3 UML的静态建模机制 128
    7.3.1 用例模型 128
    7.3.2 类和对象模型 129
    7.3.3 包 131
    7.4 UML的动态建模机制 132
    7.4.1 消息 132
    7.4.2 状态图 133
    7.4.3 时序图 135
    7.4.4 协作图 136
    7.4.5 活动图 137
    7.5 UML的物理架构建模 139
    7.5.1 逻辑架构与物理架构 139
    7.5.2 构件图和配置图 140
    7.6 小结 142
    7.7 习题 142
    第8章 程序编码 143
    8.1 程序设计语言 143
    8.1.1 程序设计语言的分类 143
    8.1.2 程序设计语言的特点 146
    8.1.3 程序设计语言的选择 148
    8.2 结构化程序设计 149
    8.3 程序设计风格 150
    8.3.1 源程序文档化 151
    8.3.2 数据说明方式 152
    8.3.3 语句构造方法 152
    8.3.4 输入/输出技术 153
    8.4 程序设计效率 154
    8.5 程序复杂性度量 156
    8.5.1 代码行度量法 156
    8.5.2 McCabe度量法 156
    8.5.3 HalStead方法 157
    8.6 小结 160
    8.7 习题 160
    第9章 软件测试 161
    9.1 软件测试的基本概念 161
    9.1.1 软件测试的定义 161
    9.1.2 软件测试的原则 162
    9.2 软件测试方法 162
    9.2.1 静态测试与动态测试 162
    9.2.2 黑盒测试 164
    9.2.3 白盒测试 168
    9.3 软件测试流程 171
    9.3.1 软件测试总体流程 171
    9.3.2 软件测试的具体策略 173
    9.4 测试用例的设计 173
    9.5 面向对象软件测试 176
    9.6 软件测试相关文档 179
    9.7 小结 179
    9.8 习题 180
    第10章 软件实施与维护 182
    10.1 软件产品的实施 182
    10.1.1 软件产品实施概述 182
    10.1.2 软件产品实施过程 183
    10.2 软件产品的维护活动 186
    10.3 软件维护过程 189
    10.4 软件维护文档 191
    10.5 软件可维护性 192
    10.5.1 决定软件可维护性的因素 192
    10.5.2 软件可维护性的度量 193
    10.5.3 提高软件可维护性的方法 194
    10.6 软件维护的深化——软件再工程 196
    10.7 小结 197
    10.8 习题 198
    第11章 软件重用技术 199
    11.1 软件重用技术概述 199
    11.1.1 软件重用定义 200
    11.1.2 软件重用形式 200
    11.1.3 软件重用分类 200
    11.1.4 软件复用的现状和流行的软件重用技术 201
    11.2 基于构件的软件开发 203
    11.2.1 可重用软件构件的开发 204
    11.2.2 可重用软件构件的组织 205
    11.2.3 可重用软件构件的分类和检索 205
    11.3 面向对象的软件重用技术 207
    11.4 小结 210
    11.5 习题 211
    第12章 软件项目计划与管理 212
    12.1 软件项目的计划与组织 212
    12.1.1 软件开发的进度计划 212
    12.1.2 软件开发的组织机构 216
    12.1.3 软件人员配备 219
    12.2 软件成本估算及控制 221
    12.3 软件工程标准与软件文档 229
    12.3.1 软件工程标准 229
    12.3.2 软件文档 232
    12.4 小结 238
    12.5 习题 238
    第13章 软件开发工具与软件工程环境 239
    13.1 软件开发工具 239
    13.1.1 软件开发工具的功能 239
    13.1.2 常用软件开发工具介绍 240
    13.2 软件工程环境 248
    13.2.1 软件工程环境的概念 248
    13.2.2 软件开发环境的特点 250
    13.3 CASE技术 251
    13.3.1 CASE定义 251
    13.3.2 CASE环境的组成与结构 252
    13.4 小结 254
    13.5 习题 254
    第14章 软件开发实战——物流网络管理系统设计与实现 255
    14.1 概述 255
    14.2 系统分析 256
    14.3 总体设计 257
    14.4 详细设计 257
    14.5 系统实现 263
    14.6 系统测试 265
    参考文献 269
最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册