本书自第1版出版至今,近40年来在软件工程界产生了巨大而深远的影响。第9版继承了之前版本的风格与优势,全面系统地讲解软件过程、建模、质量与安全、软件项目管理等知识,涵盖相关的概念、原则、方法和工具,并且提供了丰富的扩展阅读资源和网络资源。同时,本书调整了篇章结构,使内容更加简洁,更适于教学。本书是面向本科生的版本,保留了完整版中的基础内容,压缩或删除了一些高级内容,更加适合作为高等院校计算机、软件工程及相关专业的软件工程课程教材。<br><br>
改编者序<br/>译者序<br/>前言<br/>作者简介<br/>第1章 软件与软件工程 1<br/>1.1 软件的本质 3<br/>1.1.1 定义软件 4<br/>1.1.2 软件应用领域 5<br/>1.1.3 遗留软件 6<br/>1.2 定义软件工程学科 6<br/>1.3 软件过程 7<br/>1.3.1 过程框架 7<br/>1.3.2 普适性活动 8<br/>1.3.3 过程的适应性调整 9<br/>1.4 软件工程实践 9<br/>1.4.1 实践的精髓 9<br/>1.4.2 通用原则 10<br/>1.5 这一切是如何开始的 12<br/>1.6 小结 13<br/>习题与思考题 13<br/>第一部分 软件过程<br/>第2章 过程模型 16<br/>2.1 通用过程模型 16<br/>2.2 定义框架活动 18<br/>2.3 明确任务集 19<br/>2.4 惯用过程模型 19<br/>2.4.1 瀑布模型 20<br/>2.4.2 原型开发过程模型 21<br/>2.4.3 演化过程模型 22<br/>2.4.4 统一过程模型 24<br/>2.5 产品和过程 26<br/>2.6 小结 27<br/>习题与思考题 27<br/>第3章 敏捷和敏捷过程 29<br/>3.1 什么是敏捷 30<br/>3.2 敏捷及变更成本 30<br/>3.3 什么是敏捷过程 31<br/>3.3.1 敏捷原则 31<br/>3.3.2 敏捷开发战略 32<br/>3.4 Scrum 32<br/>3.4.1 Scrum团队和制品 34<br/>3.4.2 冲刺规划会议 34<br/>3.4.3 每日Scrum会议 34<br/>3.4.4 冲刺评审会议 35<br/>3.4.5 冲刺回顾 35<br/>3.5 其他敏捷框架 35<br/>3.5.1 XP框架 36<br/>3.5.2 看板法 37<br/>3.5.3 DevOps 38<br/>3.6 小结 39<br/>习题与思考题 40<br/>第4章 推荐的过程模型 41<br/>4.1 需求定义 44<br/>4.2 初步体系结构设计 44<br/>4.3 资源估算 45<br/>4.4 首次原型构建 46<br/>4.5 原型评价 48<br/>4.6 继续与否的决策 49<br/>4.7 原型演化 50<br/>4.7.1 新原型范围 51<br/>4.7.2 构建新原型 51<br/>4.7.3 测试新原型 51<br/>4.8 原型发布 52<br/>4.9 维护发布软件 52<br/>4.10 小结 54<br/>习题与思考题 55<br/>第5章 软件工程的人员方面 56<br/>5.1 软件工程师的特质 56<br/>5.2 软件工程心理学 57<br/>5.3 软件团队 58<br/>5.4 团队结构 59<br/>5.5 社交媒体的影响 60<br/>5.6 全球化团队 60<br/>5.7 小结 61<br/>习题与思考题 61<br/>第二部分 建模<br/>第6章 理解需求 64<br/>6.1 需求工程 65<br/>6.1.1 起始 65<br/>6.1.2 获取 65<br/>6.1.3 细化 66<br/>6.1.4 协商 66<br/>6.1.5 规格说明 66<br/>6.1.6 确认 67<br/>6.1.7 需求管理 67<br/>6.2 建立根基 68<br/>6.2.1 确认利益相关者 68<br/>6.2.2 识别多重观点 68<br/>6.2.3 协作 68<br/>6.2.4 首次提问 69<br/>6.2.5 非功能需求 70<br/>6.2.6 可追溯性 70<br/>6.3 获取需求 70<br/>6.3.1 协作收集需求 70<br/>6.3.2 使用场景 73<br/>6.3.3 获取工作产品 74<br/>6.4 开发用例 74<br/>6.5 构建分析模型 77<br/>6.5.1 分析模型的元素 78<br/>6.5.2 分析模式 79<br/>6.6 协商需求 80<br/>6.7 需求监控 81<br/>6.8 确认需求 81<br/>6.9 小结 81<br/>习题与思考题 82<br/>第7章 需求建模——?一种推荐的方法 83<br/>7.1 需求分析 84<br/>7.1.1 总体目标和原理 84<br/>7.1.2 分析的经验原则 85<br/>7.1.3 需求建模原则 85<br/>7.2 基于场景建模 86<br/>7.2.1 参与者和用户概要文件 86<br/>7.2.2 创建用例 86<br/>7.2.3 编写用例 89<br/>7.3 基于类建模 91<br/>7.3.1 识别分析类 91<br/>7.3.2 定义属性和操作 93<br/>7.3.3 UML类模型 94<br/>7.3.4 类–职责–协作者建模 96<br/>7.4 功能建模 98<br/>7.4.1 过程视图 98<br/>7.4.2 UML顺序图 99<br/>7.5 行为建模 100<br/>7.5.1 识别用例事件 100<br/>7.5.2 UML状态图 101<br/>7.5.3 UML活动图 102<br/>7.6 小结 104<br/>习题与思考题 105<br/>第8章 设计概念 106<br/>8.1 软件工程中的设计 107<br/>8.2 设计过程 109<br/>8.2.1 软件质量指导原则和属性 109<br/>8.2.2 软件设计的演化 110<br/>8.3 设计概念 111<br/>8.3.1 抽象 111<br/>8.3.2 体系结构 112<br/>8.3.3 模式 112<br/>8.3.4 关注点分离 113<br/>8.3.5 模块化 113<br/>8.3.6 信息隐蔽 114<br/>8.3.7 功能独立 114<br/>8.3.8 逐步求精 115<br/>8.3.9 重构 115<br/>8.3.10 设计类 116<br/>8.4 设计模型 118<br/>8.4.1 设计建模原则 119<br/>8.4.2 数据设计元素 120<br/>8.4.3 体系结构设计元素 120<br/>8.4.4 接口设计元素 120<br/>8.4.5 构件级设计元素 122<br/>8.4.6 部署级设计元素 122<br/>8.5 小结 123<br/>习题与思考题 124<br/>......
温馨提示:请使用长沙图书馆的读者帐号和密码进行登录