本书由最基本的管理思想开始讲述,每一章节都是一个单独的主题。作者以其丰富的实践经验、严谨的工程思想及幽默风趣的讲解方式,为读者带来了项目管理中众多问题的全新视角与观点。.
本书可供软件开发和软件项目管理人员阅读。对于项目管理人员以及普通开发者,本书的许多章节都值得细细品味。...
Joe Marasco是IBM公司旗下五大品牌之一Rational Software软件公司的一名已退休事业部经理和高级副总裁。他负责过许多产品的开发、营销工作,主要负责Rational Apex产品以及为微软Visual Studio设计的Visual Modeler。1998年,他成为Rational的高级运营副总裁,2003年从Rational退休。他曾获得美国库伯联合学院化学工程学学士学位、加州大学尔湾分校科学管理硕士学位,以及瑞士日内瓦大学物理学博士学位。在不从事写作的时候,他喜欢野餐烤肉和打高尔夫球;他的烤肉技术高于其球技。...
..
<< 查看详细
作者简介. xix
前言 xxi
序 xxiii
第1部分 综合管理 1
第1章 开篇寄语 3
1.1 优良软件的重要性 4
1.2 沼泽中的坚硬石头 5
1.3 读者 6
1.4 迭代式的问题解决周期 6
1.5 回顾 10
第2章 计算之源 11
2.1 催化剂 11
2.2 答案 12
2.3 这一计划是如何实施的 13
2.4 为什么这一代工程师与众不同 15
2.5 计算 16
2.6 从它们的名称中得出数字大小 17
2.7 当年的计算机是怎样的呢 18
2.8 我们的计算传统 20
2.9 回顾 20
.第3章 登山 23
3.1 勇攀高峰 24
3.2 失败的共同根源 30
3.3 成功的要素 31
3.4 人的因素 32
3.5 回顾 32
第4章 管理 33
4.1 管理团队 34
4.2 回顾 40
第2部分 软件差别 41
第5章 重中之重 43
5.1 迭代式开发 43
5.2 Roscoe Leroy 44
5.3 跨越瀑布式开发 45
5.4 另一个极端 47
5.5 Roscoe的第一幅图 47
5.6 Roscoe的第二幅图 48
5.7 等一等 49
5.8 保持向量短小 49
5.9 软件开发上的应用 50
5.10 面向应用的学习与短向量方向 51
5.11 风险定位 51
5.12 你之前听过这样的事情么 52
5.13 关于实践式学习的更多内容 53
5.14 商业含义 54
5.15 人员配置效应 55
5.16 仅仅只是常识问题 57
5.17 回顾 58
第6章 建模 59
6.1 如何解释UML 60
6.2 什么是UML,为什么它很重要 61
6.3 第二个稍微复杂一些的例子 61
6.4 第三个例子 63
6.5 如今与软件的相关性 65
6.6 提升抽象的级别 66
6.7 回顾 66
第7章 编码 69
7.1 经理们如何来学习一门新的程序设计语言 70
7.2 定义良好的问题 71
7.3 这个标准应当包括什么呢 71
7.4 动物游戏 72
7.5 动物游戏满足这一标准么 73
7.6 它是否通过了“那又怎么样”测试 74
7.7 这是你的游戏 76
7.8 回顾 76
第8章 构建与发布 77
8.1 如果你构建它,那么它们就会出现 78
8.2 在一开始设置一个沙箱 79
8.3 产品构建到底为什么会困难 79
8.4 如何对迭代式开发进行构建 84
8.5 回顾 85
第3部分 项目管理观点 87
第9章 权衡 89
9.1 项目管理金字塔 90
9.2 五,而非四 92
9.3 进入金字塔 93
9.4 高度变量 94
9.5 金字塔体积恒定不变 94
9.6 一个统计上的小插曲 95
9.7 正确的想法,错误的分布 97
9.8 对于真实项目的暗示 99
9.9 怎样才能让成功率接近掷硬币游戏 99
9.10 更多信心 100
9.11 至关重要的警告 101
9.12 一切为了风险 105
9.13 回顾 106
第10章 估计 107
10.1 如果我们使用常识的话会怎样 108
10.2 香草巧克力 108
10.3 Roscoe的解释 109
10.4 Roscoe继续深入 109
10.5 Roscoe的日历 110
10.6 Roscoe的计算 111
10.7 Roscoe进入软件领域 111
10.8 Roscoe报道 111
10.9 猜一下我们做对了什么事情 112
10.10 Roscoe的概括 113
10.11 Roscoe捡起一块骨头 113
10.12 第2部分:猜测我们做对了某些东西 114
10.13 Roscoe被软件项目经理联合会所承认 115
10.14 回顾 115
第11章 日程安排 117
11.1 Roscoe摆出问题:你将会延迟多久 118
11.2 Joe扳回了些许劣势 119
11.3 Roscoe反击 120
11.4 Roscoe的“犯罪分子相册” 120
11.5 Roscoe的图 121
11.6 最后一个异议 122
11.7 Roscoe的临别赠言 123
11.8 回顾 123
第12章 节奏.. 125
12.1 物理学家看项目过程 126
12.2 现实闯入 134
12.3 迭代开发如何呢 135
12.4 最终的图表 140
12.5 回顾 142
第4部分 人的因素 143
第13章 政治 145
13.1 背景 146
13.2 定义 147
13.3 三种情景 147
13.4 政治是不可避免的,但是 148
13.5 当问题演变为政治 149
13.6 工程计划 152
13.7 高度信任的环境 153
13.8 无益政治的其他变种 154
13.9 回顾 155
第14章 沟通 157
14.1 沟通无处不在 158
14.2 Roscoe解释其理论 158
14.3 已经完成了吗 164
14.4 回顾 165
第15章 承诺 167
15.1 Roscoe碰了一鼻子灰 168
15.2 即刻进入案例 168
15.3 维苏威火山般的喷发 168
15.4 德克萨斯的作风 169
15.5 应用到软件业 170
15.6 狗吞了我的任务 170
15.7 规范大战 171
15.8 三个最普遍的借口 172
15.9 其他 174
15.10 穿刺、躲避与还击 174
15.11 大型项目中的胆小者 175
15.12 软件开发项目会如你所愿地完成吗 175
15.13 细化 VS 构建 176
15.14 吃一堑,长一智 177
15.15 回顾 177
第16章 薪酬 179
16.1 渐入“佳境” 180
16.2 流动槽与软件开发绩效 181
16.3 利用流动模型来管理薪酬 182
16.4 金钱不是万能的 191
16.5 回顾 192
第5部分 横向思考 195
第17章 历史教训 197
17.1 不要让国王成为你的架构师 198
17.2 事物并非总是如你所见 198
17.3 仔细检查设计 198
17.4 知道什么是你所不知道的 198
17.5 始终如一的领导层 199
17.6 照例追赶工期 199
17.7 集中精力于错误的特性 199
17.8 当没有进行良好的设计时 199
17.9 适当的测试 200
17.10 原型 VS 产品 200
17.11 审讯 200
17.12 回顾 200
第18章 不当类比 201
18.1 休斯顿,我们遇上麻烦了 201
18.2 误解牛顿 203
18.3 一切事物都是相对的 205
18.4 量子力学的误解 207
18.5 热寂 211
18.6 其他例子 213
18.7 有益的科学 213
18.8 回顾 214
第19章 软件更新 215
19.1 嵌入式软件的更新 216
19.2 现状 217
19.3 软件更新游戏 218
19.4 一点陋见 218
19.5 回到更新问题 219
19.6 免费的午餐 220
19.7 为何可行 221
19.8 改进 222
19.9 怎样应对软件盗版问题 223
19.10 只要太阳能没有普及开来 223
19.11 回顾 224
第20章 妙解随机数 225
20.1 Roscoe设定了故事背景 226
20.2 模拟击球手 226
20.3 步骤一 228
20.4 步骤二 230
20.5 产生更多的概率 230
20.6 显然,我们已经离开棒球的世界了 232
20.7 现实是丑陋的 233
20.8 星期一的解决方案 234
20.9 受益匪浅 239
20.10 回顾 240
第6部分 进阶主题 241
第21章 危机 243
21.1 鱼的五天 244
21.2 鱼市 244
21.3 第一天:尚未察觉 244
21.4 第二天:避免麻烦 244
21.5 第三天:“问题处理者”到来 245
21.6 第四天:转折点 245
21.7 第五天:两条关键路径 246
21.8 故事的寓意 246
21.9 回顾 247
第22章 增长 249
22.1 增长中的问题 249
22.2 Naive模型 251
22.3 模型的推论 253
22.4 一个说明性的例子 259
22.5 非线性关系 260
22.6 付诸实践 261
22.7 结论 263
22.8 列线图 264
22.9 电子表格 265
22.10 回顾 267
第23章 文化 269
23.1 什么是企业文化 270
23.2 强势和弱势文化 271
23.3 定义企业价值 271
23.4 软件领域的适用性 274
23.5 建立强势文化 275
23.6 如果你正在寻找一份工作 279
23.7 底线 280
23.8 回顾 280
第24章 总结 281
24.1 奉行者 282
24.2 创造者 284
24.3 贤明者 286
24.4 关于贤明者的更多话题 287
24.5 人数分布 288
24.6 关于模型最后的思考 289
24.7 回顾 290
致谢 293
索引... 297
作为一名软件从业人员,随着国内软件图书出版行业的迅速发展,引进的软件工程与项目管理领域的优秀书籍层出不穷,现在可以与世界同步,博览新书。从CMMI到敏捷开发,从项目管理的基本原则到巨细靡遗的指导手册,我们能够了解、认识并吸收国外优秀软件工程师的知识和经验。而摆在我面前的这本《软件开发的边界》,正是一系列饕餮大餐中一道别致的菜肴,它可能不像经典著作那样赫赫有名,但凡是认真读过本书的人都会给予它很高的评价;它可能不如一些教材那样面面俱到,但书中一些精选的话题一定会让你受益匪浅。.
本书的作者Joe Marasco是在软件行业开发一线奋战了数十年的老前辈,他从工程类院校毕业,投身软件开发行业,从一名最底层的程序员成长为Rational Rose公司的高级副总裁(已退休)。这种从士兵到将军的经历让他具备了数十年亲身参加并组织各种软件开发项目的深厚经验。通过这本书,他与读者分享这些价值非凡的经验。物理学专业出身的他具有严谨的思维和工程学逻辑,对每一个问题的分析都会让你理解并信服。他在讲解本书时不失生动和风趣,某些章节多次采用苏格拉底式的对话来引导话题的深入,可能习惯东方式思维的我们一开始并不适应,但如果仔细品味,就会发现其中的精妙之处,并让自己慢慢地融入情景之中。
这并不是一本一步一步指导你如何进行项目管理的教科书,作者近乎剑走偏锋的行文特点,为我们提供了众多有趣的话题和深入的讨论,下面列举一二:
在第1部分的“计算之源”中,作者会带你回到冷战时期美国年轻的老一代工程师们激情飞扬的年代,让你体会美国软件行业的深厚底蕴;
第3部分“项目管理观点”,在对我们所熟知的项目管理“四要素”进行分析时,作者提出的金字塔模型会令我们耳目一新;
第4部分“人的要素”,对于薪酬、任务难度和工作绩效的精彩论述也能给我们带来一个全新的视角;..
第6部分“高级主题”,关心软件组织或者企业发展壮大这一热门话题的读者们,一定能够在“增长”一章中得到许多有益的启示。
目前的软件行业正走入全球化的时代,可能你坐在中国成都的办公室里,中午与一名印度班加罗尔的工程师讨论技术细节,下午向德国的项目经理报告任务进度与风险,晚上向美国的同事咨询系统架构事宜。这一趋势在软件开发项目规模、范围与难度都不断扩大的今天,无论作为一名软件项目管理者还是作为一名开发者,都会越来越重视自己的“Soft Skill”。如何在具备足够技术功底的情况下,成功地管理或者参与一个项目,是许多从业人员都要反思和自我提升的一个过程。我很高兴能够看到《软件开发的边界》这类书籍的出现,尽管我也是技术出身的开发者,但这样一本没有任何程序设计方法和技巧的软件工程书籍却能够深深吸引自己。因为作者的一些闪光思想和观点,能够带给我很多技术之外的思考。
尽管本书涉及软件项目管理的很多方面,但几乎每一章都可以作为一篇独立的软件开发的短文,当你在某一方面遇到了问题正苦思冥想的时候,可以看看本书中的某些章节,看看Joe Marasco的经验能否让你豁然开朗。
总之,对于从事软件项目管理或者作为软件项目团队一员的你,本书的价值在于能够让你用一种开放式的思维,去重新审视书中涉及项目管理的那些关键之处,作者采用的大量类比和隐喻能够让你拥有愉快的阅读体验,并从中发现一些闪光点和启示。
感谢Joe Marasco先生用自己数十年的深厚积累为我们写出了一本优秀的著作,我从本书中学到了很多。我相信它也不会令读者失望。
感谢博文视点周筠老师、编辑陈元玉女士为译者提供翻译本书的机会和她们为本书所做的辛勤工作,以及技术编辑方舟先生在后期校阅过程中的细致工作。最后特别感谢我的女友非非,在我忙于工作与翻译之时,她给了我很大的帮助和支持。限于译者的能力,翻译处理如有不当之处,欢迎广大读者来信指正。...
SAP全球研发服务中心(成都) 雷程炜
2006年10月
Milan.lei@sap.com
为何每个人在软件开发方面都得听听Joe Marasco说些什么?.
1991年春,Joe获得了公司五年一次的服务奖。当时的Rational Software规模较小,还有精力考虑这些奖项,且Joe在当时是相当与众不同的。我们从一辆Mack牌卡车上取下了经典的牛头犬标志,并将其裱进荣誉奖章的牌匾中。每个人都认为这个奖项代表了Joe的贡献和特点。
因此,在接下来的那年,当我们选择Joe来负责一项关键的开发工作时大家并不感到十分意外。那时,我们的旗舰产品运行于个人电脑平台上,我们认识到将其搭建至UNIX平台上运行至关重要。虽然这样的移植是必须的,但是充满了风险:事实上,许多其他公司正在尝试将他们的软件方案从个人硬件转移到标准工业平台上。任务确实非常困难,结果也是未知的。
另一方面,按照硅谷的标准来看,46岁的Joe绝对是老字辈了。但我们都相信他的经验和作为舵手的手腕将带领我们成功完成任务。我们同时也相信Joe会尽其所能来完成该项目。
历史本身说明了一切。1991年9月,由Joe领导的开发团队计划两年内在两个UNIX平台上发布“Rational II”。7个月后,功能有所限制的原型开始投入运行。16个月后,开发团队变得“自主”起来,这意味着产品可以通过自我完善来完成最终的开发。这时,开发团队发布了著名的基于UNIX平台的Rational Apex。两年计划最终得以实现。..
Apex是一款非常成功的产品,至今仍然有其客户群。Joe在发布2.0和3.0版时是事业部经理,同时在发布其与UNIX和Windows平台的接口时对其进行监督。更重要的是,在1993年发布Apex 1.0版后的10年时间里,每当我们在这一产品上遇到困难时,Joe总是会“随叫随到”,替我们排忧解难。随着企业的成长、不断兼并和壮大,Joe始终扮演着排忧解难的角色,总在我们最需要的地方、压力最大的时候给予帮助。
Joe在发布产品方面如此成功的原因之一在于:他同他的开发人员一起花费了大量的时间来理解产品的细节和开发难题。但同时他也花费了大量时间同公司的顾客交流,深刻理解他们的需求。每次产品的发布都是许多折中的结果,Joe每次作出决断的时候都是在收集了翔实的信息后作出的正确判断。
在Rational公司工作的后期,Joe开始写一些软件开发的文章发表于公司的电子杂志《The Rational Edge》上,那些文章与我们的“三友”所写的文章不同,它们更边缘化,折射了Joe早期的以及在Rational公司的经验。我们发现Joe十分中肯地介绍其经验,并且担当了全世界软件项目开发经理的启蒙导师这一角色。大家对这些文章的评论都非常积极,非常高兴这些文章如今得以归集成书。
这不是软件开发领域理论性的论述。那并非Joe所指。Joe可以带领他的团队发布引以为豪的产品,这些产品可以轻易地满足客户的真实需要。如果你也希望如此,该书则为您的必读书目。...
Mike Devlin
IBM Rational Software公司总经理
本书是收集了21世纪初Rational Software公司的电子杂志《The Rational Edge》上的“Franklin's Kite”专栏中的一些篇章而编纂成的。这些文章面向软件项目开发经理人,其目标是帮助读者避免在软件开发项目和团队中普遍出现的缺陷和不足。在连续刊登了20周之后,编辑Mike Perrow和我都发现读者开始每月都精读这部分专栏。.
我的目的不仅仅是罗列这些文章,还在于用某种形式将它们结合在一起,使它们更加有益于软件项目开发的经理及其总经理。我根据其主题重新编排了次序。这使得我在一些地方做了小小的改动。同时我也花费了一些精力在脚注上,之前许多脚注都以URL的形式表示,现改用比较正式的形式表示。最后,我在每一章节的前后都增加了内容,使得每章的上下文更清晰地成为整体的一部分。
读者很容易注意到各个章节都有其不同的风格。一些是解释性的,一些是注重分析的,还有一些是作者与其虚拟出来的Roscoe Leroy友好的“苏格拉底式对话”。Roscoe是创作出来的人物,一位最初对软件开发一知半解的优秀的技术总经理。他在本书中起着陪衬作用,他的“初出茅庐”使我不得不抛弃术语来解释事情。我的方法非常普通,我运用了许多技巧来传递我想要传递的信息。一些章节将吸引一些读者,而其他章节又将吸引另一些读者。我的这种把戏学自Horace,他写了《诗的艺术》一书,该书既给他
带来了利润也带来了愉悦。在指导读者的同时也给读者带来了乐趣。..
我将该书分为六个部分,每部分四个章节,大体是:
●综合管理:这些章节涉及的内容有益于每一位经理人,其中介绍了我的一些背景和偏好。在此部分,我将读者置于理解后面的章节所需的共同基线之上。
●软件差别:在这部分,我们主要探讨软件开发管理与其他管理的不同之处。
●项目管理观点:我视软件开发项目为普通项目的一个变量,因而受到经典的项目管理技术的束缚。另一方面,我仍试图指出软件开发的不同之处。
●人的因素:在这一部分,我将眼光放在从事软件开发的人身上。我再次试图对比找出软件开发项目的不同和相似之处。
●横向思维:软件业者因其自己的看法不同而出现的问题。我将试图引导读者从独特的视角出发,思考其从未想到过的问题。
●进阶主题:成功的软件开发经理就像优秀的弹子机玩家:空手套白狼。我们将要在这部分讨论成功所面临的挑战。
本书共有24章。你可以连续读完,也可以一次挑选其中的一章来读,这取决于你自己的选择。这是一本优秀的“飞行读物”,阅读其中的一个章节,然后在余下的飞行时间中思考。如果你能从其中的一篇中获得哪怕一个新的想法,这本书就算是物有所值了。而我也算获得成功了。
在作了如上说明之后,让我们正式进入本书。...