构建之法现代软件工程pdf下载pdf下载

构建之法现代软件工程百度网盘pdf下载

作者:
简介:本篇主要提供构建之法现代软件工程pdf下载
出版社:人民邮电出版社
出版时间:2017-06
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

编辑推荐

适读人群 :高等院校计算机系和软件学院的软件工程教师和学生,想要系统经过现代软件工程训练的IT专业人士

本书赞誉:

《构建之法》倡导的“Learning by doing”,不仅是软件工程实践的重要理念,更成为我教学、科研和团队组织的方法论,已经变成我的“口头禅”。
——张栋/福州大学数学与计算机科学学院

在教学中,学生通过“做中学”学会了软件工程的实践方法,我也在教学过程中通过“做中学”不断改进软件工程的教学方法,互相促进。在科研中,我也鼓励学生“做中学”,通过实践来验证和发现新的想法,避免空谈。
——罗杰/北京航空航天大学计算机学院

我希望按相同的原则研发、教学、生活,《构建之法》在所有方面皆能提供指导原则和具体方法。度量与估算,契约与核查。作业如此,代码如此,为人谋也如此,时时对照三省吾身。构建之法,存乎一心。
——杨贵福/东北师范大学计算机系

《构建之法》改变了我的教学和生活。在教学中,我尝试当教练,带领学生”做中学”,让“以学生为主体,以老师为主导”的想法落地,大大提高了教学质量。在生活中运用构建之法,我成功地减肥,提高了乒乓球技能,背了两万单词。
——娄嘉鹏/北京电子科技学院信息安全系

《构建之法》不仅帮助我开设面向机械专业的控制软件设计课程,也启发我“构建”其他专业课的教学,指导我更有效地开展科研。勤动手,把简单的事情做到位;勤写作,把复杂的问题描述清楚;勤交流,和团队协作完成任务。边读《构建之法》边实践,才是有效的阅读方式。
——陈冰/华中科技大学机械科学与工程学院

第三版增加若干知识点,删掉不少累赘之外,这一版的重点是增加了很多实战的内容,如下所示:
第2章:敏捷软件开发的原则在实践中和教学中的运用
第3章:软件工程师的思维误区和职业发展的故事
第7章:软件工程在微软公司的实战中
第8章:用Kano 图分析三种不同的功能投资和回报
第9章:高效的团队讨论
第11章:实战中的源代码管理
第12章:贯穿多种设备的用户体验
第17章:基于能力和动力模型的领导力


内容简介

软件工程牵涉的范围很广, 同时也是一般院校的同学反映比较空洞乏味的课程。 但是软件工程的技术对于投身IT 产业的学生来说是非常重要的。作者邹欣有长达20年的一线软件开发经验,他利用业余时间在数所高校进行了长达6年的软件工程教学实践,总结出了在16周的时间内让同学们通过 “做中学 (Learning By Doing)” 掌握实用的软件工程技术的教学计划,并得到高校师生的积极反馈。在此基础上,作者对软件工程的各个知识点和技能要求进行了系统性整理,形成教材。

本书共分17章,对照美国ACM/IEEE2013年新出版的计算机科学教学指导(Computer ScienceCurricula 2013)中的软件工程相关部分,这本教材覆盖了其中大多数Core-Tier1和Core-Tier2的内容。可以说,全书对软件工程内容的覆盖不逊于任何一本现行的教材,同时讲述了业界zui新实践方法。

作者简介

邹欣现任微软Windows中国工程团队首席研发总监。 1996—2003年,邹欣在微软Outlook团队从事 开发工作,2003—2005年,他在微软内部质量 工具团队和Visual Studio团队负责软件项目管理工具的开发。2005—2012年,他担任微软亚洲研究院技术创新组研发主管,负责研究成果的产品化和创新项目。2012—2014年,他担任微软亚洲互联网工程院首席研发总监,负责必应搜索客户端、必应输入法、必应词典等产品。加入微软前,邹欣从事过商用Unix系统、
GPS/GIS软件开发及测试工作。
他在2007年出版了《移山之道》,于2008年出版了《编程之美》 (合作)。他于1991年获北京大学计算机软件专业学士学位。1996年获美国美国韦恩州立大学(Wayne State University)计算机软件专业硕士学位。
微博 http://weibo.com/sdxinz
博客 http://www.cnblogs.com/xinz
专栏 http://zhuanlan.zhihu.com/goujianzhifa

目录

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 索引

精彩书摘

  《构建之法 现代软件工程(第三版)》:
  1.纵坐标是产品收入,横坐标是时间。
  2.左下角是技术发展的生命周期,描述了一门新技术的发展周期(创新的想法|早期尝鲜者|早期大众|晚期大众|落伍者),大家注意到那个“鸿沟”还在。在这一阶段,产品处于“新兴市场”,变化很剧烈。此时这种技术处于颠覆阶段。
  3.当—个新技术被早期大众接受时,使用这个颠覆式技术的产品就进入了成长期,这时候产品的收入急剧增长。对于最新进入这个市场的公司来说,这是一个“蓝海”。
  4.然后产品就进入了一个成熟稳定期,这时候对于这项技术的研究已经从开始的“颠覆性”转化为“改良性”,各个竞争者在纷纷改进技术,增加功能,提高效率,降低售价,这个时期可长可短。对于在这个行业竞争的公司来说,这是一个“红海”。另外,不同的产品会由于产品特点和用户特性展现自身销量特点,例如MP3播放器在节假日期间销量会很高,每到考试之前,英语单词相关的软件使用率会大幅提高,等等。很多产品成为了市场研究所谓的大路货、大宗商品(Commodity)。
  5.最后,产品不可避免地进入了衰退期,虽然还是有很多用户和很大的市场(说不定还有很多周边市场),但是这个市场的加速度是负数。
  6.再然后,就是生命周期的末期,公司宣布对产品停止服务,或者法规不允许此类产品在市场流通,等等。有些商品的早期版本会成为收藏家搜索的目标。
  16.3.4 效能过剩和竞争的各个阶段
  我们说了两种技术:维持性的技术和颠覆性的技术,但是没有一种技术生来就是维持性的技术,那么如何判断一种技术已经到了维持性的阶段呢?一个重要的特性就是效能过剩(Performance Oversupply)。例如,在2013年:
  卖电脑的还会宣传CPU的速度么?还有显示器的尺寸、分辨率?
  数码相机能照多少兆的相片?USB盘的容量?(2013年,作者想去买一个2GB的U盘,却发现所有U盘都是4GB以上的了。)
  还有,桌面字处理软件中功能的数量?
  这些技术都到了效能过剩阶段。
  ……