乙個在美國
ibm 工作過
2 年,在印度公司工作了
4 年的專案
經理與我公司資深
軟體開發經理有
這樣一段對話。
印方經理問
:"你們
每月生產
多少行**?
" 我方
經理掂量了很久,謙虛地
說:"人均**1
萬多行吧,不到
2 萬行" 。
印方經理聽後,眼睛瞪得
圓圓的:
"喔!你們已
經遠遠超過國
際最高水平了。
" 我方
經理惴惴不安地反問:
"你們的呢?
" 印方經理很
認真地回答:"我
們公司目前的效率
為每人每月
300
行。"
這是乙個真
實的故事,我想
換了其他人(包括以前的我)也會給出同
樣的答案。為什麼
與軟體大國有
這麼大的差距呢?
首先我們
沒有生產
率的概念。大多數人是
這麼算的,一天
編400
行-500
行**還
不是小菜一碟。乙個月有
30天,
這樣每月
1萬多行還不是
輕鬆搞掂?
殊不知,這個
偉大的假
設有兩個致命的
錯誤:第
一、沒有考
慮需求分析、概要設計、
詳細設計、單
元測試、整合測試
、系統測試的時間
,也沒有考
慮文件的
時間,甚至都有可能不知道有這些
過程。這不是笑話,
試問:我
們有需求分析嗎?我
們有單元
測試嗎?我們有
程式設計規範,但我
們遵守了嗎?
我們的**
花花綠綠,風
格千奇百怪
――
我們不是有"開發
完了,還
沒有設計
文件的經歷"嗎
?我們不是有"要
轉中試了,所有人才開始埋
頭苦幹寫文件"的
經歷嗎?我們
不是有人在文件中寫過,
"該軟體對
人畜沒有傷害
"嗎?當然,我
們更不可能想到有
review 的時間
,根本考慮不到
質量控制
? 我
們最熟悉寫程式、系
統測試、
維護,其他的都是多餘。
這是典型的小公司遊
擊戰的做法,乙個人搞乙個小
軟體,不需要任何流程,沒有任何
質量體系,除了寫**,
測試以外,什麼都不需要,非常自由,自以為"
牛得不行",
這很easy
,那很容易,
"管理是
羅嗦,流程是麻煩"
,但實際的結
果是什麼
樣大家都知道。
第二、一天能寫
400
-500 行**
,並不表示,你平均每個月能寫
12000
-15000 行**
,道理很
簡單,乙個人
100
公尺速度是
12秒,並不表示他的
3000
公尺速度是6 分
鐘。我們不是機械人,寫
軟體需要思考,寫嵌入式
軟體尤其需要質量。
印度工程
師是人,中國
軟體工程
師也是人,我們的代
碼生產率與水平能高到**去呢?正如大家都是凡人,你突然
說你比子
彈還快,一蹦3
層樓高。這真是
"無知"者
"無畏"? 其實我
們的生產率很低,自己不覺得
罷了,很多人並不相
信我司的公開數字――月
產**才
120
行?如果算一算所有的人力,所有階段的
時間,我
們就不會驚奇
這個資料了。不信的話,我
們拿乙個
產品算一算!或許我
們的經理自己都不知道在這個
產品投了多少人力。華為有
職業化的軟體開
發管理人才
嗎?目前幾乎沒有,或許我
們真的有月產2
萬行的編
程高手,也有很多自以為能寫
2 萬行**的
" 泡沫
"高手,但我
們沒有真正專業的
軟體人才!
目前我們
公司的銷
售情況很好,
賣得很火。但這是
專案開發成功了
嗎?不是,可能更多的是市
場的成功,以及產品
預研立項人
員的成功。生命週期內
還要花那麼多
維護費用,這
怎麼能算成功?如果我們造
飛機,我
們可能自己都不敢坐。衡量
專案成功的
標準與要素是什麼?很多人並不知道。印度
發展最快的
infosys
公司告訴我們
:衡量項
目成功的標準是
"質量、成本與
進?quot;
,達到這一目標
的重要條件是
"流程、技術、人
"。我們
做計畫時
,只有進
度,或許會考慮
一下成本,但從來沒有考
慮過質量。我們知道
專案開發的
質量活動是什麼嗎?我
們不知道;我們
知道我們的質
量目標嗎?我們
也沒有;我
們知道如何控制我們的
質量嗎?我
們沒有幹過。
所以我們
才無所畏懼,百摺不
饒。但如果我們知道
"折"一次要花
100
萬,我們還
會無所畏懼地"百摺
"嗎?再回頭
看看一些業界
標準:某印度合作公司通過了
cmm5 級,
聯合開發專案的生產率
為每月400
行。其中
編碼階段,印度工程
師每天可以寫
200
至900行**
。在4 個月的聯合開
發過程中
―― 在編碼
速度上,我方
優秀工程師與
對方差不多,但
別人教會了我
們如何保證代
碼規範以及程式設計
風格的一致;
在閱讀協議標
準方面,
對方的速度是我們的
4 -5 倍;在設計
方面,對
方有明顯的優勢
;在質量控制,我們與他
們就沒有辦法比
較了;在**
方面,對方估計
工作量為
36人月,我方估
計為22
人月,實際數為
35人月。通過對
比,我的
結論是:我
們富有,因為我
們有很多
bug ;我們
快速,因為我
們沒有質量體系。
有些人還以為
――
會使用配置工具
sourcesafe,
就知道什麼是配置管理;
會畫cantt
圖/pert
圖,就知道專案
計畫是怎麼回事了;
填一下**就是管理;
吃一頓飯
就是溝通。
沒有對質
量整體的
認識,不了解其為什麼
這麼做,大家就根據自己的過去
經驗"理解"
、"推測
"、"認識
"別人,有這
麼巨大的
認識差距就不足
為怪了。
目前,公司在
質量體系方面的培
訓與推行力度的不斷加
強,印度所
經驗的不斷推廣,在很多方面,如流程建設、
**、質量控制、度量系統,我
們已經初步了解
該怎麼做。但我
們還要不斷地宣
傳、不停地鬆土,
讓所有的人承
認自己無知,只有
這樣,我
們才能由"無知
"變為" 有
識"。"
藝低人膽大
",今後,我再也不想聽
這種大膽的豪言壯語:
「我們每月**1
萬行"
印度軟體水平和中國的程式設計師
印度軟體開發 我在工作中,接觸到印度軟體公司開發出來的軟體 整個體系架構非常清晰,按照我們的要求實現了全部功能,而且相當穩定。但是開啟具體的 一看,拖沓冗長,水平不咋樣。我們自己的一些程式設計師就有怪話了,說他們水平真低。但是!印度人能夠把軟體整體把握得很好,能夠完成軟體,並得到相當好的設計文件。而...
無知者無畏 中國程式設計師和印度程式設計師的對話
乙個在美國ibm工作過2年,在印度公司工作了4年的專案經理與我司資深軟體開發經理有這樣一段對話。印方經理問 你們每月生產多少行 我方經理掂量了很久,謙虛地說 人均 1萬多行吧,不到2萬行 印方經理聽後,眼睛瞪得圓圓的 喔!你們已經遠遠超過國際最高水平了。我方經理惴惴不安地反問 你們的呢?印方經理很認...
無知者無畏 中國程式設計師和印度程式設計師的對話
乙個在美國ibm工作過2年,在印度公司工作了4年的專案經理與我司資深軟體開發經理有這樣一段對話。印方經理問 你們每月生產多少行 我方經理掂量了很久,謙虛地說 人均 1萬多行吧,不到2萬行 印方經理聽後,眼睛瞪得圓圓的 喔!你們已經遠遠超過國際最高水平了。我方經理惴惴不安地反問 你們的呢?印方經理很認...