西安电子科技大学出版社书籍 软体工程


西安电子科技大学出版社书籍 软体工程

文章插图
软体工程(西安电子科技大学出版社书籍)【西安电子科技大学出版社书籍 软体工程】《软体工程》是2014年西安电子科技大学出版社出版的图书,作者是张秋余、张聚礼、柯铭、张红、马威 。
基本介绍书名:软体工程
作者:张秋余 张聚礼 柯铭 张红 马威
ISBN:978-7-5606-3510-1
定价:38.25元
出版社:西安电子科技大学出版社
出版时间:2014-12
内容简介本书结合软体产业现状,较为全面地介绍了软体工程的基本概念、原理和方法,以期培养学生在理论及套用上的系统整合能力以及从系统的角度看待整个软体项目的能力 。本书共14章 。第1~6章主要介绍了软体工程学与传统软体工程方法的基本理论,主要包括软体工程的策划、分析、设计、实现、测试和维护等工作;第7~13章主要介绍了面向对象软体工程,结合软体统一过程模型,从面向对象范型出发对软体工程进行重新演绎,全面、系统、清晰地介绍了面向对象软体工程的基本概念、原理、方法和工具,并将考勤系统完整实例贯穿于面向对象软体开发的整个过程;第14章介绍了当今比较流行的现代软体工程软体开发方法 。本书可以作为计算机科学与技术、软体工程相关专业本科生或研究生的教材,也可以作为软体工程领域专业人士的参考书籍 。目录第1章 软体工程学概论 11.1 软体的基本概念 11.1.1 软体与软体特性 11.1.2 软体的分类 21.2 软体危机 41.3 软体工程 51.3.1 软体工程的基本原理 61.3.2 软体工程学科包含的领域 71.4 软体工程的方法、工具与环境 81.4.1 软体工程的方法、工具与环境 81.4.2 软体开发的基本策略 111.5 软体过程与软体生命周期 121.5.1 软体过程 121.5.2 软体生命周期的各个阶段 131.6 常见的软体过程模型 161.6.1 瀑布模型 161.6.2 快速原型模型 171.6.3 演化模型 181.6.4 螺旋模型 191.6.5 喷泉模型 201.7 小结 21习题1 22第2章 项目分析与软体需求分析 232.1 软体项目的问题定义 232.2 软体项目可行性分析 242.3 软体系统的需求 272.3.1 功能需求 272.3.2 非功能需求 282.3.3 软体需求分析的风险 302.4 用户需求获取 312.5 软体需求文档与规格说明 332.5.1 自然语言描述 332.5.2 结构化描述 342.5.3 软体需求文档 352.6 系统流程图 362.7 数据流图 382.7.1 数据流图的符号 382.7.2 设计数据流图的步骤和示例 392.7.3 数据流图中命名的可理解性 412.7.4 数据流图的用途 422.7.5 数据流图中的数据字典 432.8 实体-联繫图 462.9 需求分析中使用的其他图形工具 482.10 面向数据流的建模 512.11 需求有效性验证 532.12 实例分析—教材征订业务分析 542.13 小结 58习题2 58第3章 软体总体设计 603.1 总体设计 603.2 软体总体设计原理 643.2.1 设计原理 643.2.2 启发式规则 713.3 描绘软体结构的图形工具 733.3.1 层次图和HIPO图 733.3.2 软体结构图 743.4 映射数据流到软体结构 753.4.1 变换流 753.4.2 事务流 763.4.3 变换映射(变换分析) 763.4.4 事务映射(事务分析) 783.4.5 设计最佳化—精化软体结构 793.5 资料库结构设计过程 803.6 实例分析 813.7 小结 83习题3 84第4章 软体详细设计 854.1 结构化程式设计 864.1.1 结构化的控制结构 864.1.2 结构化程式设计的实现方法 874.1.3 结构化程式设计的特点 884.2 用户界面设计 884.2.1 黄金规则 894.2.2 用户界面的分析与设计 904.2.3 界面分析 924.2.4 界面设计步骤 944.3 程式算法设计工具 964.3.1 图形化设计工具 974.3.2 表格式设计表示 1014.3.3 程式设计语言 1024.3.4 程式算法设计工具的比较 1034.4 面向数据结构的设计方法 1044.4.1 Jackson数据结构图 1044.4.2 改进的Jackson图 1054.4.3 Jackson方法的设计过程 1054.5 程式複杂度的概念及度量方法 1084.6 小结 111习题4 111第5章 软体实现 1135.1 软体编码 1135.1.1 编码目的 1135.1.2 程式设计语言的选择 1145.1.3 良好的编程实践 1155.1.4 程式设计师的基本素质 1175.2 软体测试基础 1185.3 测试设计和管理 1205.3.1 错误曲线 1205.3.2 软体测试配置 1205.3.3 测试用例设计 1225.4 软体测试过程 1245.4.1 软体测试基本原则 1255.4.2 软体测试的步骤、测试信息流 1265.4.3 软体测试组织与人员 1275.5 软体测试的基本方法 1285.5.1 软体测试方法与技术 1285.5.2 软体测试的误区 1305.6 软体测试策略 1325.6.1 测试策略 1325.6.2 单元测试 1335.6.3 集成测试(组装测试) 135 5.6.4 确认测试(有效性测试) 1395.6.5 系统测试与验收测试 1405.7 白盒测试 1425.7.1 逻辑覆盖法 1425.7.2 基本路径测试法 1465.8 黑盒测试 1495.8.1 等价类划分法 1495.8.2 边界值分析法 1505.8.3 错误推测法 1515.8.4 状态测试法 1515.9 回归测试 1525.10 软体调试 1535.10.1 软体调试的目的与原则 1545.10.2 软体调试技术 1545.10.3 调试技巧 1565.11 小结 156习题5 156第6章 软体维护 1596.1 软体维护的基本概念 1596.2 软体维护的任务和分类 1606.3 软体维护过程 1616.4 维护的管理 1646.5 预防性维护 1696.6 软体维护的副作用 1706.7 软体文档与编写要求及方法 1716.7.1 软体文档的重要性与分类 1716.7.2 软体文档应该满足的要求 1736.7.3 对软体文档编制的质量要求 1746.7.4 软体文档的管理和维护 1756.8 软体逆向工程和再工程 1766.9 小结 178习题6 178第7章 面向对象软体工程方法学 1797.1 面向对象的概念 1797.2 从认识论看面向对象方法的形成 1817.2.1 软体开发—对事物的认识和描述 1817.2.2 语言的鸿沟 1817.2.3 面向对象程式语言的发展使鸿沟变小 1827.2.4 软体工程学的作用 1837.3 面向对象方法的基本概念 1867.3.1 面向对象的基本概念 1867.3.2 面向对象的主要特徵 1867.4 统一过程与统一建模语言 1877.4.1 统一过程概述 1877.4.2 统一过程生命周期 1897.4.3 统一建模语言 1927.5 叠代和增量过程 1947.5.1 为什幺採用叠代和增量的开发方法 1947.5.2 叠代方法是风险驱动的 1987.5.3 通用叠代过程 1987.5.4 一次叠代产生一个增量结果 2007.5.5 在整个生命周期上的叠代 2007.5.6 由叠代过程来演化模型 2027.6 小结 202习题7 203第8章 用例驱动2048.1 用例驱动开发概述2058.2 为什幺使用用例2068.2.1 根据需求的价值捕获用例207 8.2.2 用例驱动开发过程2078.3 确定客户需要什幺2088.4 需求工作流2098.5 领域模型2118.6 业务模型2128.7 补充需求2168.8 初始需求2168.9 初始需求:考勤系统实例研究2188.9.1 聆听2188.9.2 确定参与者2198.9.3 确定用例2208.9.4 简要说明用例2228.9.5 描述用例模型2238.10 继续需求流:考勤系统实例研究2248.10.1 区分用例的优先权2248.10.2 详细描述用例2258.10.3 构造用户界面原型2308.11 修订需求:考勤系统实例研究2338.12 测试工作流:考勤系统实例研究2418.13 需求规格说明书2428.14 小结243习题8243第9章 面向对象分析2449.1 分析工作流2449.2 分析模型2469.3 确定分析包2489.3.1 处理分析包之间的共性2489.3.2 确定服务包2499.3.3 确定分析包间的依赖2509.4 提取实体类2519.4.1 实体类的提取2519.4.2 面向对象分析:电梯问题实例研究2519.4.3 功能建模:电梯问题实例研究2529.4.4 实体类建模:电梯问题实例研究2539.4.5 动态建模:电梯问题实例研究2569.4.6 测试工作流:电梯问题案例研究2579.5 提取边界类和控制类2609.6 初始功能模型:考勤系统实例研究2609.6.1 划分用例等级2609.6.2 寻找候选对象2649.7 分析类2689.7.1 确定职责2689.7.2 确定属性2699.7.3 确定关联和聚合2699.7.4 确定泛化2709.7.5 捕获特殊需求2709.8 初始类图:考勤系统实例研究2719.8.1 寻找“Login”中的关係2719.8.2 寻找“RecordTime”中的关係2729.8.3 寻找“ExportTimeEntries”中的关係2729.9 描述分析对象间的互动2739.10 用例实现:考勤系统实例研究2749.10.1 为“Login”添加假设的行为274 9.10.2 为“Login”构建顺序图2759.11 分析包2779.12 类图递增:考勤系统实例研究2789.13 测试流与分析工作流中的规格说明文档2799.14 小结280习题9281第10章 构架为中心28210.1 构架概述28310.2 为什幺需要构架28410.3 用例和构架28510.4 建立构架的步骤28710.4.1 构架基线是一个“小的、皮包骨的”系统28710.4.2 使用构架模式28810.4.3 描述构架28910.4.4 构架设计师创建构架29110.4.5 构架师29110.4.6 建立构架的过程29210.5 构架描述29310.6 建立软体构架:考勤系统实例研究29610.6.1 确立目标29610.6.2 将类分组并评估每个类29710.6.3 展示技术30110.6.4 抽取子系统30210.6.5 套用原则和目标对构架进行评估30310.7 小结304习题10304第11章 设计和模式30511.1 设计在软体生命周期中的作用30511.2 设计工作流30711.3 设计模式31111.3.1 设计原则31111.3.2 模式简介31211.3.3 设计模式的优势与套用31611.4 规划设计工作31611.4.1 建立整个设计目标31711.4.2 建立设计準则31811.4.3 寻找独立的设计工作31811.5 设计包或子系统31911.6 设计工作流:考勤系统实例研究31911.7 HTMLProduction框架32011.7.1 设计目标32011.7.2 按目标进行设计32311.7.3 填充细节33211.7.4 实现工作流33511.8 TimeCardUI包33811.8.1 评审33811.8.2 针对目标进行设计34011.8.3 用例设计34111.8.4 实现工作流34411.9 设计度量与用于设计的CASE工具34411.10 小结345习题11346 第12章 面向对象实现34712.1 实现在软体生命周期中的作用34712.2 实现工作流34912.2.1 构架实现34912.2.2 系统集成35012.2.3 实现子系统35212.2.4 实现类35312.2.5 执行单元测试35412.3 集成35612.4 测试工作流36012.5 用于实现的CASE工具36412.6 小结366习题12366第13章 软体复用和构件技术36813.1 复用的概念36813.2 复用的障碍与复用技巧36913.3 对象和复用37213.3.1 OO方法对软体复用的支持37213.3.2 复用技术对OO方法的支持37313.4 构件及构件技术37413.4.1 构件37413.4.2 构件技术模型37513.4.3 当前主流构件模型37513.4.4 构件的开发与复用37713.5 设计和实现期间的复用37813.6 复用及网际网路38113.7 小结382习题13382第14章 现代软体工程38314.1 现代软体工程发展的主要技术特点38314.2 开源软体运动38514.2.1 开源软体的定义与由来38514.2.2 Oss项目的优势与开发经验38714.2.3 如何看待开源软体38814.3 领域工程38914.3.1 基于领域工程的软体开发概述38914.3.2 基于构件的软体工程39014.3.3 领域工程建模过程39114.4 敏捷软体开发过程及实践39214.4.1 敏捷思想与实践原则39214.4.2 支持敏捷软体开发的技术和管理手段39414.4.3 极限编程39614.4.4 其他敏捷软体开发方法39714.5 测试驱动开发39814.5.1 测试驱动开发思想39814.5.2 支持测试驱动开发的软体工具40014.5.3 测试驱动开发过程40114.6 现代软体工程其他新方法401习题14404附录:软体工程师职业素质及道德规範405 F1. 软体工程师职业素质405F2. 软体工程师道德规範406