关于本书的内容有任何问题,请联系 左仲海
第 1章 概述 1 1.1 软件工程的产生 1 1.1.1 软件生产的发展 1 1.1.2 软件危机 2 1.2 软件工程 4 1.2.1 软件工程定义 4 1.2.2 软件工程学的内容 4 1.2.3 软件工程的基本原理 7 1.3 软件生命周期 7 1.4 软件过程模型 9 1.4.1 瀑布模型 9 1.4.2 快速原型模型 10 1.4.3 增量模型 11 1.4.4 喷泉模型 12 1.4.5 统一过程 13 本章小结 14 习题1 15 第 2章 可行性研究与软件开发计划 16 2.1 软件定义与可行性研究 16 2.1.1 软件定义 16 2.1.2 可行性研究 18 2.2 软件工程开发计划的制定 19 2.2.1 软件工程项目概述和实施计划 20 2.2.2 Gantt图 20 2.2.3 工程网络图 21 2.2.4 软件工程开发计划的复审 25 2.2.5 软件工程开发计划实例 26 本章小结 31 习题2 31 第3章 需求分析 32 3.1 需求分析的任务 32 3.1.1 确定目标系统的具体要求 33 3.1.2 建立目标系统的逻辑模型 35 3.2 结构化分析步骤 35 3.2.1 进行调查研究 35 3.2.2 分析和描述系统的逻辑模型 36 3.2.3 需求分析的复审 37 3.3 需求分析图形工具 38 3.3.1 实体—关系图 38 3.3.2 数据流图 40 3.3.3 状态转换图 42 3.3.4 IPO图 43 3.4 数据字典 44 3.4.1 数据字典的内容 44 3.4.2 数据字典使用的符号 45 3.4.3 数据字典与图形工具 47 3.5 软件需求分析举例 48 3.5.1 系统管理 48 3.5.2 商品信息管理 48 3.5.3 商品供销存管理 49 3.5.4 商品销售数据流图 50 3.5.5 数据字典 50 3.6 需求分析文档 51 3.6.1 软件需求规格说明 51 3.6.2 用户手册编写提示 52 3.6.3 编写需求分析文档的步骤 52 本章小结 53 习题3 53 第4章 概要设计 55 4.1 概要设计步骤 55 4.1.1 软件结构设计 55 4.1.2 数据结构设计及数据库设计 56 4.1.3 系统接口设计 57 4.1.4 设计测试方案 57 4.2 软件结构设计的基本原理 57 4.2.1 模块与模块化 57 4.2.2 模块的耦合和内聚 60 4.2.3 软件结构设计优化准则 63 4.3 软件结构设计的图形工具 64 4.3.1 层次图 64 4.3.2 结构图 66 4.4 概要设计方法 67 4.4.1 结构化方法 67 4.4.2 面向数据结构设计方法 69 4.5 概要设计文档与复审 73 4.5.1 概要设计说明书 73 4.5.2 概要设计复审 74 4.5.3 数据库设计说明书 74 本章小结 75 习题4 75 第5章 详细设计 77 5.1 过程设计 77 5.1.1 流程图 78 5.1.2 盒图 82 5.1.3 PAD 84 5.1.4 判定表 85 5.1.5 判定树 86 5.1.6 过程设计语言 86 5.2 用户界面设计 88 5.2.1 用户界面设计问题 88 5.2.2 用户界面设计过程 90 5.2.3 用户界面设计的基本原则 90 5.2.4 用户界面设计指南 90 5.3 数据代码设计 92 5.3.1 数据代码设计原则 93 5.3.2 代码种类 93 5.3.3 数据代码设计方法 95 5.4 数据输入/输出设计 96 5.4.1 输入设计 96 5.4.2 输出设计 96 5.5 数据安全设计 97 5.6 详细设计文档与复审 98 5.6.1 详细设计说明书 98 5.6.2 操作手册编写提示 99 5.6.3 详细设计的复审 100 本章小结 100 习题5 100 第6章 软件实现 102 6.1 结构化程序设计 102 6.2 选择程序设计语言 103 6.3 程序设计风格 105 6.4 程序设计质量评价 106 6.5 程序设计文档 107 6.6 软件测试目标和原则 107 6.6.1 软件测试目标 107 6.6.2 软件测试原则 108 6.7 软件测试方法 108 6.7.1 静态分析与动态测试 109 6.7.2 黑盒法与白盒法 109 6.8 软件测试步骤 110 6.8.1 模块测试 110 6.8.2 集成测试 110 6.8.3 程序审查会和人工运行 111 6.8.4 确认测试 112 6.8.5 平行运行 113 6.9 设计测试方案 113 6.9.1 等价类划分法 113 6.9.2 边界值分析法 114 6.9.3 错误推测法 115 6.9.4 逻辑覆盖法 115 6.9.5 实用测试策略 118 6.10 软件调试、验证与确认 119 6.10.1 软件调试 119 6.10.2 软件验证 120 6.10.3 软件确认 121 6.11 软件测试计划和分析报告 121 本章小结 122 习题6 123 第7章 软件维护 127 7.1 软件维护过程 127 7.1.1 软件维护的种类 127 7.1.2 软件维护的困难 128 7.1.3 软件维护的实施 129 7.1.4 软件维护的副作用 131 7.2 软件的可维护性 131 7.2.1 决定可维护性的因素 132 7.2.2 可维护性的度量 132 7.2.3 提高软件的可维护性 133 本章小结 134 习题7 134 第8章 面向对象方法学与UML 136 8.1 面向对象方法概述 136 8.1.1 面向对象方法学的主要优点 137 8.1.2 面向对象的概念 138 8.2 UML概述 140 8.2.1 UML的发展 140 8.2.2 UML设计目标和内容 141 8.2.3 UML的语义 142 8.2.4 UML的扩展机制 143 8.3 UML图 144 8.3.1 用例图 144 8.3.2 类图和包 145 8.3.3 对象图 150 8.3.4 状态图 150 8.3.5 顺序图 152 8.3.6 活动图 152 8.3.7 协作图 153 8.3.8 构件图 154 8.3.9 部署图 154 本章小结 155 习题8 156 第9章 面向对象技术与UML应用 157 9.1 面向对象分析 157 9.1.1 面向对象分析过程 157 9.1.2 面向对象分析原则 158 9.2 建立对象模型 158 9.2.1 确定对象和类 159 9.2.2 确定类的相互关系 159 9.2.3 划分主题 161 9.3 建立动态模型 163 9.3.1 编写脚本 164 9.3.2 设计用户界面 164 9.3.3 画UML顺序图或活动图 165 9.3.4 画状态转换图 165 9.4 建立功能模型 166 9.5 面向对象设计 167 9.5.1 系统设计 168 9.5.2 对象设计 171 9.5.3 面向对象设计的准则和启发式规则 172 9.6 面向对象系统的实现 173 9.6.1 选择程序设计语言 173 9.6.2 面向对象程序设计 174 9.7 面向对象的测试 174 9.7.1 面向对象测试策略 175 9.7.2 面向对象的测试步骤 177 9.8 UML的应用 180 9.8.1 UML模型 181 9.8.2 UML视图 182 9.8.3 UML使用准则 183 9.8.4 UML的应用领域 184 9.9 统一过程 184 9.9.1 RUP的开发模式 185 9.9.2 RUP的特点 186 9.9.3 RUP的要素 186 9.10 Rational Rose 187 9.10.1 Rational Rose简介 187 9.10.2 Rational Rose的界面 189 9.10.3 Rational Rose模型的4个视图 189 9.10.4 Rational Rose的使用 191 本章小结 191 习题9 192 第 10章 WebApp软件工程 194 10.1 网页软件的特性 194 10.2 网络系统的层次结构 196 10.2.1 二层C/S结构 196 10.2.2 三层C/S结构 197 10.2.3 四层C/S结构 199 10.2.4 B/S结构 199 10.3 客户端层可用的技术 201 10.3.1 基本HTML 201 10.3.2 脚本语言 202 10.3.3 Applet 203 10.3.4 AJAX 203 10.4 网络服务器层使用的技术 204 10.4.1 Servlet 204 10.4.2 JSP 205 10.5 WebApp的设计模式 206 10.5.1 观察者模式 206 10.5.2 组合模式 208 10.5.3 工厂方法模式和策略模式 209 10.5.4 模型—视图—控制器模式 210 10.5.5 装饰者模式 211 10.6 WebApp的设计 212 10.6.1 WebApp的特点及应用类型 212 10.6.2 WebApp的需求分析 213 10.6.3 WebApp需求分析过程 217 10.6.4 WebApp设计过程 219 10.6.5 WebApp体系结构设计 223 10.6.6 WebApp导航设计 224 10.7 WebApp测试 226 10.7.1 WebApp测试过程概述 226 10.7.2 WebApp内容测试 226 10.7.3 WebApp界面测试 227 10.7.4 WebApp导航测试 228 10.7.5 WebApp配置测试 228 10.7.6 WebApp安全性测试 229 10.7.7 WebApp性能测试 229 本章小结 230 习题10 231 第 11章 软件重用和再工程 232 11.1 可重用的软件成分 232 11.2 软件重用过程 233 11.2.1 软件重用过程模型 233 11.2.2 开发可重用的软件构件 235 11.2.3 分类和检索软件构件 236 11.2.4 软件重用环境 236 11.3 软件逆向工程 237 11.4 软件再工程 238 本章小结 239 习题11 240 第 12章 软件工程管理 241 12.1 软件工程管理概述 241 12.2 软件规模估算 242 12.2.1 软件开发成本估算方法 242 12.2.2 代码行技术和任务估算技术 243 12.2.3 COCOMO2模型 244 12.2.4 程序环行复杂程度的度量 246 12.3 软件工程人员组织 247 12.4 软件配置管理 249 12.5 软件质量保证 252 12.5.1 软件质量的特性 252 12.5.2 软件质量保证措施 253 12.6 软件开发风险管理 254 12.6.1 软件开发风险的分类 254 12.6.2 软件开发风险的识别 255 12.6.3 软件开发风险的预测 256 12.6.4 处理软件开发风险的策略 257 12.7 软件工程标准与软件工程文档 258 12.7.1 软件工程标准 258 12.7.2 软件工程文档的编写 260 12.8 CASE技术 262 本章小结 263 习题12 264 附录A 部分习题参考答案 265 附录B 试题类型举例 271 参考文献 273
本书全面系统地介绍了用HTML5、CSS3和JavaScript制作网页的编程技术及方法。全书分为HTML基础...
本书通过梳理物联网这个概念所包含的内容,对物联网的感知层、网络层、应用层进行系统讲解,覆盖了物联网背景、架构、...
本书较为全面地介绍了软件测试的相关理论和工具,内容翔实,可操作性强,简明易懂。本书从实用角度出发,重点培养学生...
本书主要以业界领先的VMware vSphere为例,讲解服务器虚拟化平台的部署和运维。全书共10章,内容包括...
本书共分13章,详细讲解iOS开发的各个知识点,内容包括iOS开发环境介绍,第一个iOS应用——“hello,...
本书分为基础篇、核心篇与提高篇三大部分,共12个任务。基础篇包含4个教学任务,分别是PHP基础知识简介,PHP...
本书是《软件测试技术基础教程 理论、方法与工具》的姐妹篇,《软件测试技术基础教程 理论、方法与工具》详细介绍软...
本书基于MySQL介绍数据库系统的基本概念、基本原理和基本设计方法,以面向工作过程的教学方法为导向,合理安排各...
全书分为4章,第1章是与主教材各章对应的习题;第2章介绍Java开发环境的准备、配置和常用开发工具的使用及程序...
全书共11章,内容包括:Java语言概述、Java语法基础、程序流程控制、数组、Java面向对象编程、Java...
我要评论