软件工程牵涉的范围很广, 同时也是一般院校的同学反映比较空洞乏味的课程。 但是软件工程的技术对于投身IT 产业的学生来说是非常重要的。作者邹欣有长达20年的一线软件开发经验,他利用业余时间在数所高校进行了长达6年的软件工程教学实践,总结出了在16周的时间内让同学们通过 “做中学 (Learning By Doing)” 掌握实用的软件工程技术的教学计划,并得到高校师生的积极反馈。在此基础上,作者对软件工程的各个知识点和技能要求进行了系统性整理,形成教材。 本书共分17章,对照美国ACM IEEE2013年新出版的计算机科学教学指导(Computer ScienceCurricula 2013)中的软件工程相关部分,这本教材覆盖了其中大多数Core-Tier1和Core-Tier2的内容。可以说,全书对软件工程内容的覆盖不逊于任何一本现行的教材,同时讲述了业界zui新实践方法。
目录
- I 推荐序
- III 读者反馈
- V 第三版前言
- VII 第二版前言
- VIII 第一版前言
- 1 第1章 概 论
- 1.1 软件 = 程序 软件工程
- 1.2 软件工程是什么
- 1.3 练习与讨论
- 21 第2章 个人技术和流程
- 2.1 单元测试
- 2.2 效能分析工具
- 2.3 个人开发流程
- 2.4 实践
- 2.5 练习与讨论
- 46 第3章 软件工程师的成长
- 3.1 个人能力的衡量与发展
- 3.2 软件工程师的思维误区
- 3.3 软件工程师的职业发展
- 3.4 技能的反面
- 3.5 练习与讨论
- 68 第4章 两人合作
- 4.1 代码规范
- 4.2 代码风格规范
- 4.3 代码设计规范
- 4.4 代码复审
- 4.5 结对编程
- 4.6 两人合作的不同阶段和技巧
- 4.7 练习与讨论
- 96 第5章 团队和流程
- 5.1 非团队和团队
- 5.2 软件团队的模式
- 5.3 开发流程9
- 5.4 练习与讨论
- 114 第6章 敏捷流程
- 6.1 敏捷的流程简介
- 6.2 敏捷流程的问题和解法
- 6.3 敏捷的团队
- 6.4 敏捷总结
- 6.5 敏捷的问答
- 6.6 练习与讨论
- 133 第7章 实战中的软件工程
- 7.1 MSF简史
- 7.2 MSF基本原则
- 7.3 MSF团队模型
- 7.4 MSF过程模型
- 7.5 实战中的软件工程
- 7.6 练习与讨论
- 157 第8章 需求分析
- 8.1 软件需求
- 8.2 软件产品的利益相关者
- 8.3 获取用户需求—用户调研
- 8.4 竞争性需求分析的框架
- 8.5 功能的定位和优先级
- 8.6 计划和估计
- 8.7 分而治之(Work Breakdown Structure)
- 8.8 练习与讨论
- 191 第9章 项目经理
- 9.1 PM是啥
- 9.2 微软PM的来历
- 9.3 PM做开发和测试之外的所有事情
- 9.4 领导力—高效的团队讨论
- 9.5 PM 和风险管理
- 9.6 练习与讨论
- 211 第10章 典型用户和场景
- 10.1 典型用户和典型场景
- 10.2 用例(Use Case)
- 10.3 规格说明书
- 10.4 功能驱动的设计
- 10.5 练习与讨论
- 232 第11章 软件设计与实现
- 11.1 分析和设计方法
- 11.2 图形建模和分析方法
- 11.3 其他设计方法
- 11.4 从Spec到实现
- 11.5 开发阶段的日常管理
- 11.6 实战中的源代码管理
- 11.7 代码完成(Code Complete)
- 11.8 练习与讨论
- 258 第12章 用户体验
- 12.1 用户体验的要素
- 12.2 用户体验设计的步骤和目标
- 12.3 评价标准
- 12.4 贯穿多种设备的用户体验
- 12.5 练习与讨论
- 279 第13章 软件测试
- 13.1 基本名词解释及分类
- 13.2 各种测试方法
- 13.3 实战中的测试
- 13.4 运用测试工具
- 13.5 练习与讨论
- 310 第14章 质量保障
- 14.1 软件的质量
- 14.2 软件的质量保障工作
- 14.3 练习与讨论
- 329 第15章 稳定和发布阶段
- 15.1 从代码完成到发布
- 15.2 不同频率和不同覆盖范围的渐进发布
- 15.3 发布之后—事后诸葛亮会议
- 15.4 练习与讨论
- 346 第16章 IT行业的创新
- 16.1 创新的迷思
- 16.2 创新的时机
- 16.3 创新的招数
- 16.4 魔方的创新
- 16.5 创新和作坊
- 16.6 练习与讨论
- 384 第17章 人,绩效和职业道德
- 17.1 领导力
- 17.2 领导力—知人善任
- 17.3 领导力—带领团队成长
- 17.4 猪、鸡和鹦鹉的故事
- 17.5 其实还是人的问题
- 17.6 绩效管理
- 17.7 萝卜与白菜
- 17.8 软件工程师的职业道德
- 17.9 练习与讨论
- 420 给任课老师和助教的建议
- 课程安排
- 师生关系
- 给授课老师和助教的建议
- 436 索引