新書推薦:
《
荷马:伊利亚特(英文)-西方人文经典影印21
》
售價:NT$
490.0
《
我的心理医生是只猫
》
售價:NT$
225.0
《
巴拉吉预言
》
售價:NT$
340.0
《
股权控制战略:如何实现公司控制和有效激励(第2版)
》
售價:NT$
449.0
《
汉译名著·哲学经典十种
》
售價:NT$
3460.0
《
成吉思汗传:看历代帝王将相谋略 修炼安身成事之根本
》
售價:NT$
280.0
《
爱丁堡古罗马史-罗马城的起源和共和国的崛起
》
售價:NT$
349.0
《
自伤自恋的精神分析
》
售價:NT$
240.0
編輯推薦:
“做中学Learning By Doing”的授课方式和面向实战超大量的项目实践给学生带来了明显的帮助。基础好能力强的学生如虎添翼,基础一般的学生更是从中获益,能力得到显著提升。——李未院士力荐
內容簡介:
软件工程牵涉的范围很广, 同时也是一般院校的同学反映比较空洞乏味的课程。 但是软件工程的技术对于投身IT 产业的学生来说是非常重要的。作者邹欣有长达20年的一线软件开发经验,他利用业余时间在数所高校进行了长达6年的软件工程教学实践,总结出了在16周的时间内让同学们通过 “做中学 Learning By Doing” 掌握实用的软件工程技术的教学计划,并得到高校师生的积极反馈。在此基础上,作者对软件工程的各个知识点和技能要求进行了系统性整理,形成教材。
本书共分17章,对照美国ACMIEEE2013年新出版的计算机科学教学指导(Computer ScienceCurricula 2013)中的软件工程相关部分,这本教材覆盖了其中大多数Core-Tier1和Core-Tier2的内容。可以说,全书对软件工程内容的覆盖不逊于任何一本现行的教材,同时讲述了业界最新实践方法。
關於作者:
邹欣现任微软Windows中国工程团队首席研发总监。
1996—2003年,邹欣在微软Outlook团队从事开发工作,2003~2005年,他在微软内部质量工具团队和Visual Studio团队负责软件项目管理工具的开发。2005—2012年,他担任微软亚洲研究院技术创新组研发主管,负责研究成果的产品化和创新项目。2012—2014年,他担任微软亚洲互联网工程院首席研发总监,负责必应搜索客户端、必应输入法、必应词典等产品。加入微软前,邹欣从事过商用Unix系统、GPSGIS软件开发及测试工作。
他在2007年出版了《移山之道》,于2008年出版了《编程之美》 (合作)。
他于1991年获北京大学计算机软件专业学士学位。1996年获美国韦恩州立大学(Wayne State University)计算机软件专业硕士学位。
目錄 :
I前言
V给任课老师和助教的建议
第1章概论
1.1软件=程序+软件工程1
1.2软件工程是什么9
1.3练习与讨论18
第2章个人技术和流程
2.1单元测试20
2.2效能分析工具29
2.3个人开发流程34
2.4实践37
2.5练习与讨论42
第3章软件工程师的成长
3.1个人能力的衡量与发展43
3.2软件工程师的职业发展48
3.3技能的反面52
3.4练习与讨论55
第4章两人合作
4.1代码规范56
4.2代码风格规范58
4.3代码设计规范63
4.4代码复审66
4.5结对编程72
4.6两人合作的不同阶段和技巧77
4.7练习与讨论83
第5章团队和流
5.1非团队和团队84
5.2软件团队的模式85
5.3开发流程90
5.4练习与讨论100
第6章敏捷流程
6.1敏捷的流程101
6.2敏捷流程的问题和解法104
6.3敏捷的团队109
6.4敏捷总结110
6.5敏捷的故事—兼酒后问答112
6.6练习与讨论119
第7章MSF
7.1MSF简史121
7.2MSF基本原则122
7.3MSF团队模型134
7.4MSF过程模型136
7.5MSF敏捷开发模式137
7.6MSFCMMI开发模式139
7.7练习与讨论140
第8章需求分析
8.1软件需求142
8.2软件产品的利益相关者144
8.3获取用户需求—用户调查144
8.4竞争性需求分析的框架155
8.5功能的定位—四象限方法158
8.6计划和估计161
8.7分而治之(WorkBreakdownStructure)169
8.8练习与讨论171
第9章项目经理
9.1PM是啥175
9.2微软PM的来历176
9.3PM做开发和测试之外的所有事情178
9.4PM的能力要求和任务181
9.5练习与讨论184
第10章典型用户和场景
10.1典型场景和典型用户185
10.2规格说明书197
10.3功能驱动的设计202
10.4练习与讨论204
第11章软件设计与实现
11.1从Spec到实现205
11.2开发阶段的日常管理208
11.3练习与讨论217
第12章用户体验
12.1用户体验的要素219
12.2用户体验设计的步骤和目标232
12.3评价标准233
12.4练习与讨论235
第13章软件测试
13.1基本名词解释及分类238
13.2各种测试方法242
13.3实战中的测试254
13.4运用测试工具260
13.5练习与讨论266
第14章质量保障
14.1软件的质量268
14.2软件的质量保障工作274
14.3练习与讨论282
第15章稳定和发布阶段
15.1从代码完成到发布284
15.2发布之后—事后诸葛亮会议294
15.3练习和讨论300
第16章IT行业的创新
16.1创新的迷思301
16.2创新的时机317
16.3创新的招数322
16.4魔方的创新327
16.5创新和作坊330
16.6练习与讨论335
第17章人、绩效和职业道德
17.1猪、鸡和鹦鹉的故事337
17.2其实还是人的问题340
17.3绩效管理342
17.4萝卜与白菜348
17.5团队合作的几个阶段350
17.6软件工程师的职业道德354
17.7练习与讨论357
索引
內容試閱 :
读完《构建之法——现代软件工程》,不禁惊叹,软件工程的书还可以这样写!像团队和流程、敏捷流程、需求分析、设计与实现这些章节我看了又看,看完之后不禁拍大腿(书里说的“拍脑门、拍胸脯、拍屁股”的三拍有点不全,还差“拍大腿”):为什么邹欣老师会把原本无趣的问题写得这么吸引人?我深深地感觉到,不会讲故事的软件工程老师不是好老师!这本书给我最大的感受是,作者能把一个个鲜活的例子(或故事)与软件工程的相关问题恰到好处地结合起来,让软件工程的理论和方法更好地落地。
——王赞(http:weibo.comscswz)天津大学软件学院
将对软件工程思想的理解内化为软件工程师的职业习惯,是软件工程教学的核心目标,本书的实验设计恰恰非常有助于这一内化过程。个人项目、两人项目和团队项目由易到难,循序渐进,不断总结。我在教学中借鉴这一思路,从学生较为熟悉的编程训练入手,以范例演示基本编码规范、 No Design时的代码、经过基本Modularity also called separation of concerns设计的代码、writing code to make it reusable on future projects以及一些特殊的接口设计……从编码实践中理解软件工程思想,就会跳出纸上谈兵的框框。
——孟宁(http:staff.ustc.edu.cn~mengning,http:weibo.commengning997 )
中国科技大学软件学院
软件工程在大学是最难讲,也是最容易讲的一门课,容易在这门课涵盖的内容和外延特别丰富,这些内容学生基本没概念,短期也无法落到实处来验证有用没用,所以老师可以大讲特讲,人畜无害;难在你要在学生一片空白(没有很强的代码能力、没有团队概念、没有项目经验)的情况下去让他们懂得这些东西。 在我认识的人中,能有丰富的项目经验又愿意花时间在教学实践上,最终能把各种知识理论体系化的人寥寥无几。邹欣老师恰好这几点都具备。快速翻完整本书,最大的感受是这本书出版得恰逢其时,传统的软件工程教材早就该翻新了!
——徐亚波(http:ss.sysu.edu.cn~xyb,http:weibo.comarber)中山大学软件学院