IBM推廣RUP多年 卻被XP搶走用戶?
1 IBM推廣 RUP 這么多年,卻被 XP 極限編程 搶走很多的用戶,主要原因在哪里呢? 這個世界是一個多元的社會,只有一種軟件開發方法存在顯然是不合理的,也不利于整個 軟件工程 技術的發展。RUP和XP等 敏捷 方法都是很好的軟件開發方法,各有各的市
1 IBM推廣
RUP這么多年,卻被
XP極限編程搶走很多的用戶,主要原因在哪里呢?
這個世界是一個多元的社會,只有一種軟件開發方法存在顯然是不合理的,也不利于整個
軟件工程技術的發展。RUP和XP等
敏捷方法都是很好的軟件開發方法,各有各的市場。XP強調極限編程,即所有的開發活動都是以編碼為中心來展開的,比較附合目前國內很多開發人員的想法,因為他們大部分都是從做一些小型軟件開發項目開始的,對傳統軟件工程的規范要求心存疑慮,擔心會大幅增加自己的開發工作量,XP方法的起點比較低,很好地滿足了這部分開發人員提升軟件開發方法的
需求。很多人認為XP要比RUP輕量很多,這是一種誤解,RUP也可以變得很輕量。RUP只是提供了一個通用的軟件開發流程框架,在將RUP應用到實際項目之前,我們需要根據項目的實際情況來定制RUP,只留下滿足項目開發需要的最小集合。但是面對復雜一些的大中型項目,我們就需采用重量一些的流程,這時候XP可能就不太適用了,要解決大型團隊的溝通問題,一些正式的文檔(如需求、軟件開發計劃、設計模型等)就必不可少了,各種開發工作也必須更加嚴格地按照預定義的流程來執行,這樣才能夠保證團隊協作的步調一致。所以我們也有很多的客戶在實踐RUP,甚至是基于RUP定制出了他們自己版本的RUP,如IBM實驗室定制了IRUP(IBM RUP),愛立信定制了ERUP(Ericsson RUP)等。 所以我們看到的是一個合諧社會,既有開發團隊在用各種敏捷方法,又有團隊以RUP為指導來進行開發。
很多人看到灝如煙海的RUP電子文檔就頭暈了,但這恰恰說明了RUP的內容豐富,能夠滿足各種類型項目開發的需要。很多對于RUP的誤解都是因為對RUP不夠了解而造成的,如:RUP太龐大了,RUP只適合于大項目而不適合于小項目,RUP只適合于新系統開發而不適合于遺留系統的改造等。但實際上RUP是對過去幾十年業界最佳實踐經驗的總結,你總能找到一些適合于你的方法為你的項目所用,關鍵在于如何來裁剪RUP,要做到這一點要求熟練掌握RUP方法論。武俠小說中的高手是不會拘泥于門戶派別的,能為我所用的招式都可以信手拈來,并且根據形勢而靈活變化,到了最高境界就是無招勝于有招,一定要區分清楚打的這一拳是少林的還是武當的嗎?另一方面,RUP的功能也在不斷地發展和完善,例有專門針對
SOA應用開發的RUP版本,有專門針對
嵌入式系統開發的"RUP for System Engineering"等,跟其他的軟件開發流程相比,伴隨著軟件
開發技術與時俱進是RUP的一個很大競爭優勢。
我們平時所做的軟件開發項目,其中很大一部分是難度不那么高的,有很多項目只是在現有系統上修修補補,這類項目的復雜度不是那么高,所以輕量級的敏捷方法適得其所,經過裁剪的RUP也能成為一種敏捷的開發方法。做復雜的大型軟件開發項目,就一定需要非常正式的工作流程和交付件,這種場合就非RUP莫屬了,只有大而全的RUP才能勝任這類項目的開發。對任何一家公司來說,必然是既有比較簡單的項目,又有復雜的項目,所以敏捷方法和RUP各有用武之地。這就需要開發團隊同時掌握這兩種方法,這樣才能根據項目的情況來決定采用哪一種流程,并且開發人員可以在采用不同方法的項目之間進行流動。從降低學習成本的角度來看,把所有的開發人員統一到一種方法上更好一些,這也是統一開發流程這一名稱的來由,并且它是適用于所有類型項目的。從學習的效果來看,與其讓開發人員掌握幾種方法(但可能對每一種的理解都不深),還不如讓他們掌握一種方法。RUP就是降龍十八掌,同樣練武,靖哥哥老老實實練降龍十八掌,對敵的時候這幾招就管用了;蓉兒雜七雜八學了很多,便沒有一樣練到最高水平的。
2 比較一下RUP和XP中
缺陷管理的區別。
根據目前對XP的了解,這兩種方法中的缺陷管理沒有太大區別,都需要建立缺陷庫來追蹤管理所有的缺陷。
3 有人認為“軟件企業使用Rational系列產品最大的問題就是成本太高。例如ClearCase的一個License就要5000美金,
ClearQuest的一個License報價也在5萬人民幣?!盜BM的產品在幫助中小企業的方面有沒有什么新的舉措?
我們的客戶都是基于 Rational 給他們所帶來回報來決定采購 Rational 產品的,沒有一個客戶愿意花一萬元去采購一個只能給他帶來5000元回報的產品。另外我們也設計了一些產品促銷包來降低客戶的采購成本,我們的 ClearCase 產品也提供易捷版 ClearCaseLT 來降低客戶進入的門檻。
4 有人認為“維護也是一個問題。Rational系列產品給人總體的感覺就是人性化太差(或許這就是造成業績太差,以致給IBM收購的原因吧),如果一個軟件企業使用 Rational系列產品的話,至少需要培養一個專職的維護工程師,以備隨時解決問題,而這類工程師的價位一般也需要在6千大元以上?!盜BM是如何看待這個問題,是否有代培維護工程師這方面的舉措呢?
糾正一下觀點,業績差的公司是不會有人收購的,就象買股票一樣,績優股才是股民選擇的對象。Rational 產品的定位是一個給專業人員使用的開發工具,就象專業照相機必然比我們平時用的傻瓜相機復雜一樣,專業工具追求的是
性能,同時對使用者的要求比較高,如果你不掌握
面向對象分析設計方法的話是不可能用好 Rational 的建模工具的。另外大家對 Rational 產品易用性的某些批評是不夠客觀的,比如 ClearCase 為我們的客戶提供了一個非常高級的統一變更管理流程 UCM (Unified Change Management),這一流程將整個開發團隊的開發過程整合了起來,大大提高了客戶的軟件開發管理水平。但有人會把 UCM 跟其他的版本管理工具相比,而在比較過程中忽略了 UCM 所帶來的其他好處,這是不太公平的。想象一下把汽車和自行車相比的話,我們也能得出汽車使用成本高、一但出車禍就會造成更大的傷害等結論。
IBM 收購 Rational 之后一直在改進產品的易用性,包括開發新一代的基于 Eclipse 的桌面工具產品,提供大量的電子自學教程等等。我們也發展了一些
培訓合作伙伴來為我們的客戶提供更多的培訓機會。
5 涉外軟件企業采用Rational的產品比較多,他們主要是出于什么考慮?
我們國家的軟件產業發展方向之一是軟件外包,中國的勞動力已經通過制造業出口到全球,我們的一下目標就是要讓全球的軟件也打上"Made in China"的標識。國外招一個軟件開發人員很困難,中國卻相對容易很多,并且具有成本上的優勢,這幾年已經有越來越多的跨國企業在中國設立研發中心,進行離岸軟件外包開發。在這種跨地域的合作模式中,必然要求兩地的團隊統一在同一個開發平臺之上,否則就會出現雞同鴨講的溝通問題,RUP在這里扮演著越來越重要的角色。
原文轉自:http://www.kjueaiud.com