手機(jī)版| 您好,歡迎訪問中國(guó)機(jī)電產(chǎn)品交易網(wǎng)! 網(wǎng)站地圖| 聯(lián)系我們
當(dāng)前位置: 首頁 ? 行業(yè)資訊 ? 行業(yè)分析 ? 正文

微軟軟件研發(fā)策略轉(zhuǎn)變之路 從瀑布式走向敏捷開發(fā)(附圖)

放大字體??縮小字體 發(fā)布日期:2014-08-07
核心提示:雖然微軟在軟件開發(fā)中并沒有使用純粹意義上的瀑布式開發(fā)模式(部分開發(fā)過程有所反復(fù)),但總體上來說還是沿用了瀑布式開發(fā)流程。就目前情況而言,微軟是否會(huì)將敏捷開發(fā)模式應(yīng)用到桌面版Office的研發(fā)中還不確定,但至少微軟已經(jīng)主動(dòng)進(jìn)行了若干嘗試,
   長(zhǎng)久以來,身為“軟件開發(fā)商”的微軟的名聲并不太好,倒不是人們對(duì)微軟的軟件產(chǎn)品不滿意,而是其更新周期太過漫長(zhǎng),比如Office、Windows、SQL Server和Exchange等主打產(chǎn)品的更新周期都長(zhǎng)達(dá)3年左右,這其中的主要原因就是微軟在軟件項(xiàng)目的開發(fā)中采用了瀑布式開發(fā)模式。但隨著用戶對(duì)軟件的需求越來越苛刻,瀑布式開發(fā)模式已經(jīng)難以滿足新型軟件的開發(fā)要求,而微軟也不得不改變自己的軟件研發(fā)策略。
  國(guó)外科技媒體Arstechnica日前發(fā)文對(duì)微軟軟件研發(fā)策略的轉(zhuǎn)變之路進(jìn)行了分析。
 
  以下是文章的主要內(nèi)容:
 
  在大部分人的印象里,微軟的新版本軟件好像很少按照既定時(shí)間發(fā)布(Windows 95、Windows 2000和Windows Vista均延期發(fā)布),而微軟本身也很少就軟件延期發(fā)布正式的官方聲明,所以此時(shí)關(guān)于微軟的各種傳聞、假設(shè)和猜測(cè)似乎已經(jīng)成了慣例。盡管如此,微軟仍然取得了巨大的成功,因?yàn)樵S多競(jìng)爭(zhēng)對(duì)手的情況也大同小異,大家針對(duì)付費(fèi)軟件的更新速度都比較慢,所以微軟也就顯得沒有那么突兀了。
 
  瀑布式開發(fā)模式
 
  客觀地講,延期發(fā)布在大型軟件項(xiàng)目的開發(fā)中非常普遍,畢竟這其中充滿了各種未知的復(fù)雜因素,而目前尚未出現(xiàn)一套行之有效的方法來對(duì)此進(jìn)行管理,所以許多軟件項(xiàng)目最終都很難在既定的時(shí)間和預(yù)算內(nèi)完成開發(fā)。針對(duì)這種情況,許多計(jì)算機(jī)領(lǐng)域的科學(xué)家和工程師嘗試了多種正規(guī)化的方法來改善軟件開發(fā)的流程,這其中就包括微軟和大部分軟件企業(yè)普遍使用的瀑布式開發(fā)模式。
 
  瀑布式開發(fā)模式將軟件開發(fā)的過程分為系統(tǒng)計(jì)劃、需求分析、系統(tǒng)設(shè)計(jì)、系統(tǒng)編碼、系統(tǒng)測(cè)試、系統(tǒng)運(yùn)行和維護(hù)6個(gè)階段,每一階段工作的完成是下一階段工作開始的前提,每一階段都要進(jìn)行嚴(yán)格的評(píng)審,保證各階段的工作做得足夠好時(shí)才允許進(jìn)入下一階段。
 
  瀑布式開發(fā)模式在上世紀(jì)70年代被正式命名之后就備受爭(zhēng)議,盡管有不少公司在軟件開發(fā)中使用該模型,但它一直未能獲得業(yè)界的廣泛認(rèn)可,相反,還有許多業(yè)內(nèi)人士該模型是造成軟件開發(fā)延期或失敗的主要原因。
 
  盡管如此,瀑布式開發(fā)模式在如今的制造業(yè)和建筑業(yè)領(lǐng)域中應(yīng)用仍然非常廣泛,因?yàn)檫@兩個(gè)行業(yè)中的項(xiàng)目進(jìn)度大多是不可逆的,所以使用這套略顯刻板的模型反而能夠避免一些不必要的成本支出。
 
  相比之下,軟件項(xiàng)目在后期進(jìn)行修改的成本要比一棟樓簡(jiǎn)單許多,同時(shí)軟件開發(fā)過程中的不確定因素也要更多一些,所以許多軟件項(xiàng)目往往會(huì)在某一階段的開發(fā)完成之后再對(duì)需求做出修改,這顯然與瀑布式開發(fā)模式的理念是相悖的。
 
  瀑布式開發(fā)模式在微軟的應(yīng)用
 
  雖然微軟在軟件開發(fā)中并沒有使用純粹意義上的瀑布式開發(fā)模式(部分開發(fā)過程有所反復(fù)),但總體上來說還是沿用了瀑布式開發(fā)流程,其中的一個(gè)代表作的就是Visual Studio。
 
  相對(duì)于Windows和Office等軟件3年的更新周期來說,Visual Studio的版本更新速度要稍快一些,為兩年左右。這兩年通常會(huì)被分成若干個(gè)階段,其中軟件的規(guī)劃和設(shè)計(jì)工作要占到4到6個(gè)月,之后是6到8周的代碼編寫和為期4個(gè)月的測(cè)試階段,接下來如果出現(xiàn)較大的需求變更,就需要6到8周的時(shí)間來進(jìn)行第二輪的代碼編寫和4個(gè)月的第二輪測(cè)試,如果無需大的調(diào)整,則進(jìn)入到4個(gè)月的穩(wěn)定期直到產(chǎn)品最終發(fā)布。
 
  從中不難看出,即便在需求發(fā)生變更的情況下,軟件代碼的編寫時(shí)間也不過只有4個(gè)月,而軟件測(cè)試階段所需的時(shí)間卻是代碼編寫的兩倍左右,多少有些本末倒置。
 
  其實(shí)微軟的組織結(jié)構(gòu)也符合瀑布式開發(fā)模式的要求,其在軟件開發(fā)項(xiàng)目中主要有三個(gè)角色,分別是負(fù)責(zé)功能說明和設(shè)計(jì)的項(xiàng)目經(jīng)理、負(fù)責(zé)代碼編寫的開發(fā)人員以及負(fù)責(zé)功能實(shí)現(xiàn)的質(zhì)保人員,這三個(gè)角色在管理架構(gòu)上屬于平級(jí),三方相互合作和制約來完成一個(gè)軟件項(xiàng)目的開發(fā)。
 
  上述的這種開發(fā)流程和架構(gòu)看似很是嚴(yán)謹(jǐn),但操作起來卻不甚理想。舉例來說,當(dāng)某個(gè)用戶安裝了Visual Studio的Beta版本并進(jìn)行了1個(gè)月的測(cè)試之后發(fā)現(xiàn)并提交了其中的一個(gè)Bug,而此時(shí)對(duì)于開發(fā)人員來說,是應(yīng)該對(duì)這個(gè)Bug進(jìn)行修復(fù)的,但由于此時(shí)軟件的開發(fā)已經(jīng)進(jìn)入尾聲,所以如果這個(gè)Bug比較嚴(yán)重的話,可能就只能到下一個(gè)版本的開發(fā)階段再對(duì)其進(jìn)行修復(fù),這顯然會(huì)影響該軟件的最終質(zhì)量。
 
  敏捷開發(fā)模式
 
  網(wǎng)絡(luò)的逐漸興起開始對(duì)軟件交付模式產(chǎn)生巨大影響,用戶是在體驗(yàn)?zāi)晨钴浖r(shí)無需再將其安裝到本地計(jì)算機(jī)上,只需訪問某個(gè)網(wǎng)站就能夠體驗(yàn)到具體的外觀和功能,這對(duì)于軟件測(cè)試來說無疑是非常方便的。也正是在這個(gè)時(shí)候,“敏捷開發(fā)”模式開始出現(xiàn)在軟件開發(fā)領(lǐng)域之中。
 
  “敏捷開發(fā)”一詞最早出現(xiàn)在上世紀(jì)的90年代,并在2001年被正式定名,當(dāng)時(shí)一組開發(fā)人員公布了所謂的“敏捷開發(fā)宣言”:“個(gè)體和交互勝過過程和工具、可以工作的軟件勝過面面俱到的文檔、客戶合作勝過合同談判、響應(yīng)變化勝過遵循計(jì)劃、雖然右邊的項(xiàng)也具有價(jià)值,但我們認(rèn)為左邊的項(xiàng)具有更大的價(jià)值。”
 
  簡(jiǎn)單的說,敏捷開發(fā)是一種以用戶需求進(jìn)化為核心、迭代、循序漸進(jìn)的開發(fā)方法。在敏捷開發(fā)中,軟件項(xiàng)目的構(gòu)建被切分成多個(gè)子項(xiàng)目,各個(gè)子項(xiàng)目的成果都經(jīng)過測(cè)試,具備集成和可運(yùn)行的特征。換言之,就是把一個(gè)大項(xiàng)目分為多個(gè)相互聯(lián)系,但也可獨(dú)立運(yùn)行的小項(xiàng)目,并分別完成,在此過程中軟件一直處于可使用狀態(tài)。
 
  很顯然,敏捷開發(fā)與瀑布式開發(fā)有著質(zhì)的區(qū)別,前者采用了“迭代式”的開發(fā)模式,事先并不先入為主地確定用戶的需求,而是先做一些原型試驗(yàn)品來讓那些關(guān)鍵用戶去體驗(yàn),然后再根據(jù)用戶的反饋意見不斷做修改和調(diào)整。在整個(gè)研發(fā)流程中,產(chǎn)品的最初設(shè)想和最終設(shè)計(jì)往往是不相同的。
 
  敏捷開發(fā)模式在微軟的應(yīng)用
 
  微軟的Visual Studio團(tuán)隊(duì)是公司內(nèi)部首個(gè)采用敏捷開發(fā)模式的研發(fā)團(tuán)隊(duì),盡管最初微軟內(nèi)部仍然以使用瀑布式開發(fā)模式,但由于Visual Studio的第三方開發(fā)者強(qiáng)烈要求使用敏捷開發(fā)模式,所以微軟的研發(fā)部門不得不做出改變,這也為敏捷開發(fā)模式在Visual Studio中的應(yīng)用鋪平了道路。
 
  Visual Studio 2010是首個(gè)因敏捷開發(fā)模式而受益的Visual Studio版本,該軟件發(fā)布于2010年4月,當(dāng)時(shí)同樣耗費(fèi)了兩年的時(shí)間完成開發(fā),但隨后研發(fā)團(tuán)隊(duì)就發(fā)現(xiàn)軟件中的許多模板對(duì)于敏捷開發(fā)者來說太過籠統(tǒng),幾乎沒有太大的實(shí)際意義。針對(duì)這種情況,微軟的研發(fā)部門推出了鼎鼎大名的Team Foundation Server(TFS),這個(gè)功能強(qiáng)大的服務(wù)器平臺(tái)能為微軟的產(chǎn)品提供源代碼管理、數(shù)據(jù)收集、定義工作流程和管理項(xiàng)目進(jìn)度等,而微軟的軟件研發(fā)策略也就從此開始發(fā)生巨大變化,以往兩到三年的產(chǎn)品更新周期逐漸變得更短,軟件開發(fā)的流程也變得更加靈活高效,而敏捷開發(fā)模式也開始在微軟內(nèi)部流行開來
 
  盡管敏捷開發(fā)模式已被證明是非常高效的軟件開發(fā)模式,但在微軟這種規(guī)模龐大的公司中推行起來還是頗為困難的,微軟擁有大量的軟件開發(fā)者,其中僅研發(fā)部門的員工就在3000人以上,同時(shí)還有數(shù)百個(gè)研發(fā)團(tuán)隊(duì),所以要想讓大家從早已習(xí)以為常的瀑布式開發(fā)模式轉(zhuǎn)換為敏捷開發(fā)模式,其難度不亞于“壯士斷腕”。
 
  然而,微軟的管理層已經(jīng)意識(shí)到敏捷開發(fā)模式對(duì)于公司未來發(fā)展的重要性,于是開始積極地制定各種措施來推動(dòng)這一模式在各個(gè)研發(fā)團(tuán)隊(duì)進(jìn)行普及,其中包括知識(shí)培訓(xùn)、改變研發(fā)團(tuán)隊(duì)組織結(jié)構(gòu)、建立新的層級(jí)匯報(bào)機(jī)制等等,這都在一定程度上盤活了微軟內(nèi)部的研發(fā)資源,明顯提升了產(chǎn)品的研發(fā)進(jìn)度。以Visual Studio為例,目前的版本更新速度已經(jīng)縮短至一個(gè)季度左右,這在瀑布式開發(fā)模式下是難以想象的。
 
  “保守”的微軟Office
 
  Office應(yīng)該算是微軟最為傳統(tǒng)的應(yīng)用軟件了,由于該軟件擁有非常廣泛的用戶群,所以微軟在Office的開發(fā)策略上相對(duì)比較保守,而Office用戶也大多不喜歡比較頻繁的版本更新,因?yàn)檫@樣可能會(huì)打亂他們既有的工作流程。
 
  但是,微軟另辟蹊徑地鼓勵(lì)用戶轉(zhuǎn)向Office 365訂閱服務(wù),該服務(wù)為用戶提供定期的版本更新以及新的功能。同時(shí),微軟的iPad版Office團(tuán)隊(duì)在進(jìn)行產(chǎn)品研發(fā)時(shí)也采用了敏捷開發(fā)模式,通過定期產(chǎn)品迭代來為用戶帶來更棒的使用體驗(yàn)。
 
  就目前情況而言,微軟是否會(huì)將敏捷開發(fā)模式應(yīng)用到桌面版Office的研發(fā)中還不確定,但至少微軟已經(jīng)主動(dòng)進(jìn)行了若干嘗試,雖然公司并未改變Office為期3年的產(chǎn)品更新周期,但微軟也承認(rèn)如今的用戶期待獲得更多的功能,所以未來微軟會(huì)通過其他方式來滿足用戶的需求。由此不難看出,一旦微軟發(fā)現(xiàn)敏捷開發(fā)模式能夠?yàn)橛脩魩砀舻氖褂皿w驗(yàn)的話,那么完全有可能在未來數(shù)年內(nèi)拋棄瀑布式開發(fā)模式。
 
  結(jié)語
 
  對(duì)于微軟的用戶來說,敏捷開發(fā)模式為Visual Studio的開發(fā)而帶來的改進(jìn)是顯而易見的,每隔數(shù)月該產(chǎn)品就能進(jìn)行一些版本更新(網(wǎng)絡(luò)版的更新速度更快),這無疑將會(huì)吸引更多的開發(fā)者積極加入到Visual Studio的陣營(yíng)中來,從而實(shí)現(xiàn)良性循環(huán)。
 
  而微軟也在內(nèi)部大力推動(dòng)敏捷開發(fā)模式的進(jìn)展,畢竟這種模式明顯提升了軟件項(xiàng)目研發(fā)的速度和質(zhì)量,同時(shí)該模式所帶來的優(yōu)質(zhì)體驗(yàn)也讓用戶變得更加忠誠(chéng),所以我們有理由相信敏捷開發(fā)模式未來將會(huì)在微軟逐漸普及,并推動(dòng)這家軟件巨頭打造出更為優(yōu)秀的應(yīng)用軟件。譯者:璞玉
?
?
分享到:0
?
?
[ 行業(yè)資訊搜索 ]? [ ]? [ 告訴好友 ]? [ 打印本文 ]? [ 關(guān)閉窗口 ]
?
?

?
0條 [查看全部]  相關(guān)評(píng)論

?
推薦行業(yè)資訊
圖文資訊
人工智能+模擬電路的市場(chǎng)機(jī)會(huì)在哪里? “機(jī)器人+安防”珠聯(lián)璧合 機(jī)器換人指日可待
風(fēng)電清潔供暖電價(jià)問題及經(jīng)濟(jì)性幾何 氣動(dòng)隔膜泵6大優(yōu)勢(shì)和在哪些地方可以派上用場(chǎng)?
點(diǎn)擊排行

客服熱線:0551-69106578 業(yè)務(wù)咨詢:0551-69106578 郵箱:2268263116@qq.com

媒體合作: 點(diǎn)擊這里給我發(fā)消息 ??在線客服: 點(diǎn)擊這里給我發(fā)消息

Copyright (c) 2012 機(jī)電產(chǎn)品交易網(wǎng) . 版權(quán)所有 皖I(lǐng)CP備12004440號(hào)-2