作者:吴穹 来源:CSDN博客 酷勤网收集 2008-09-29
摘要
由于软件的开发、部署和维护是一项高度智力密集型的工作,保证进度,降低成本、提高质量的工作最终还要落实到参与的个人。而对于个人而言,影响效率和质量的有四个要素:方法、流程、工具和热情。
所谓软件工程就是将软件开发、部署和维护的过程工程化,其目标无非是保证进度、降低成本、提高质量。由于软件的开发、部署和维护是一项高度智力密集型的工作,保证进度,降低成本、提高质量的工作最终还要落实到参与的个人。而对于个人而言,影响效率和质量的有四个要素:方法、流程、工具和热情。
如果把加入Rational当成入行软件工程的开始的话,那么在我入行的十年中,可以看到软件工程的热点在上述几个要素之间反复切换:
- 方法:98年-02年,面向对象方法风行
- 流程:02年-06年,RUP/CMM(I)大行其道
- 热情:06年-08年,敏捷气候小成
如前一篇博文所述,敏捷的贡献主要在于社会工程,它第一次将注意力聚焦到人的工作热情上。然而,在热点切换的过程中,有几个现象值得注意:
对新热点,期望太高、失望太快:人们往往将新的热点当成银弹,希望能够立竿见影;稍有挫折,就另寻热点了。其实时至今日,有多少项目真正能把面向对象建模作的很好呢?
对原有热点的成果,付之一炬:新热点的引入往往会分散对旧有热点的痴迷,这有它积极的意义,但要避免矫枉过正,全盘否定旧有热点的积极成果;
Ivar最近在谈“Be Smart”,其实我觉得这里Smart应该被翻译成“明智”,其核心就是在针对各要素的改进当中达成一个平衡。其实这暗合了中国的中庸之道:「不偏之谓中;不易之谓庸。」中者,天下之正道。庸者,天下之定理。
评论
- #jiangtao 发表于2008-06-28 09:47:48 IP: 221.220.17.*
- 敏捷的风行是否和基于互联网的快速开发模式驱动有关呢?
- 2008-06-29 22:10:57作者回复
- #jackhatedance 发表于2008-06-30 13:16:34 IP: 61.241.79.*
- 小团队管理应该很容易吧,软工要解决的应该是大团队的管理问题。
- #chjl2020 发表于2008-07-01 00:14:20 IP: 58.60.44.*
- 小团队需要管理,大团队需要好的管理.
一些小公司的团队.就那么五六个人.根本就没有管理的概念,
- #routent 发表于2008-09-12 13:00:14 IP: 219.238.182.*
- 敏捷的真正价值在于它明确肯定了人在软件开发中的作用,把人作为软件开发的第一位要素。至于迭代开发,适应性开发都可以在其他开发方法中找到影子。这和以前的RUP,CMMI强调过程的作用是不同的。虽然RUP,CMMI也不否认人的作用,但是从来没有提到这个高度。
所谓人的作用,不止是热情,还有能力,素质等等的集合。这些都是开发高质量软件的关键因素。
强调人的作用,就要理解软件开发过程就是要为人,开发者服务的,而不是相反,或者是为管理者服务。这也是敏捷方法和其他方法的区别。有兴趣可以看一下我的博客:
http://blog.csdn.net/routent/archive/2008/09/06/2892331.aspx
欢迎讨论- 2008-09-12 23:47:25作者回复
- #greenqingqingws 发表于2008-09-22 21:35:03 IP: 210.45.251.*
- 团队的人数越多,管理难度越大。如果团队成员没有团队协作精神,管理起来就相当复杂。所以我认为团队成员的团队精神和工作能力一样重要。
- #greenqingqingws 发表于2008-09-22 21:43:09 IP: 210.45.251.*
- "chjl2020:小团队需要管理,大团队需要好的管理.
一些小公司的团队.就那么五六个人.根本就没有管理的概念,"----我不是很同意你的观点。五六个人的团队,同样也需要好的管理,怎么样让这五六个人的能力都发挥出来,是一个很实在的问题。这时就需要一个好的管理方式。
来自:http://blog.csdn.net/adwu73/archive/2008/06/27/2590787.aspx

