敏捷的軟體開發(fā)流程

敏捷的軟體開發(fā)流程

ID:5582954

大?。?42.00 KB

頁(yè)數(shù):2頁(yè)

時(shí)間:2017-12-19

敏捷的軟體開發(fā)流程_第1頁(yè)
敏捷的軟體開發(fā)流程_第2頁(yè)
資源描述:

《敏捷的軟體開發(fā)流程》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫(kù)

1、敏捷的軟體開發(fā)流程  速度是企業(yè)競(jìng)爭(zhēng)致勝的關(guān)鍵因素,軟體專案的最大挑戰(zhàn)在于一方面要應(yīng)付變動(dòng)中的需求,一方面要在緊縮的時(shí)程內(nèi)完成專案,所以軟體團(tuán)隊(duì)除了在技術(shù)上必須日益精進(jìn),更需要運(yùn)用有效的開發(fā)流程,以確保團(tuán)隊(duì)能夠發(fā)揮綜效。這正是AgileProcess(敏捷的軟體開發(fā)流程)于近年來(lái)興起的主要原因,本文將介紹數(shù)種廣為接受的軟體開發(fā)流程,及其在運(yùn)用上的建議。  一、AgileProcess-敏捷的開發(fā)流程  幾乎所有的軟體專案都會(huì)在起始階段面臨選擇開發(fā)流程的困難,一種是完備的開發(fā)流程,另一種是簡(jiǎn)易輕便的流程。雖然我們了解采用完備的開發(fā)流程可以提高軟體

2、的品質(zhì),但是因?yàn)榍啡比肆?、工具與時(shí)間,我們常會(huì)被迫采用簡(jiǎn)化的流程,但事與愿違,大部分的情況我們?nèi)匀浑y以在預(yù)算內(nèi)及時(shí)完成專案?! gileProcess(敏捷的開發(fā)流程)是一種軟體開發(fā)流程的泛稱,AgileProcess具有下列幾項(xiàng)共通的特性:  1.客戶與開發(fā)人員形成密切合作的團(tuán)隊(duì),因?yàn)榭蛻魺o(wú)法于初期定義完整的規(guī)格,而開發(fā)人員于開發(fā)過(guò)程中也常常無(wú)法知悉外在環(huán)境或業(yè)務(wù)的變動(dòng),所以需要兩者密切合作方能開發(fā)適用的軟體?! ?.專案最終的目標(biāo)是可執(zhí)行的程式,因此所有的中間產(chǎn)品必須經(jīng)過(guò)審慎評(píng)估,確認(rèn)有助于最終目標(biāo),才需要制作中間產(chǎn)品?! ?.采用Ite

3、rative與Incremental方式分階段進(jìn)行,密集review是否符合需求?! ?.流程可以簡(jiǎn)單,但規(guī)劃與執(zhí)行必須嚴(yán)謹(jǐn)?! ?.強(qiáng)調(diào)團(tuán)隊(duì)合作,賦予高度的責(zé)任,團(tuán)隊(duì)有自主權(quán)得以因應(yīng)變化做調(diào)整?! 《UP開發(fā)流程-RationalUnifyProcess  RUP為IBMRational公司經(jīng)過(guò)多年的研發(fā)與經(jīng)驗(yàn)所提出的軟體開發(fā)流程,其內(nèi)容含蓋Businessmodeling,RequirementModeling,LogicalDesign,Implementation,Testing,Deployment等軟體開發(fā)生命周期的直接工作,與

4、ProjectManagement,Change&ConfigurationManagement,Environmentsupport等支援性工作。RUP的內(nèi)容非常豐富,不同的專案需要不同調(diào)整,IBMRational提供RUPworkbench工具,方便調(diào)整RUP,并公布于Web,方便專案成員遵循統(tǒng)一的流程規(guī)范進(jìn)行工作?! UP的主要精神為:1.專案進(jìn)行采用Iterative程序分階段漸進(jìn)地完成專案功能;2.廣泛使用VisualModeling于商業(yè)需求分析、系統(tǒng)分析與系統(tǒng)設(shè)計(jì);3.強(qiáng)調(diào)架構(gòu)設(shè)計(jì);4.對(duì)每項(xiàng)工作所需要的技術(shù)、工具、做法、范本、

5、檢查項(xiàng)目均有詳細(xì)的定義,架構(gòu)完備且具有可調(diào)整的彈性?! ∫?yàn)镽UP的流程規(guī)范與相關(guān)技術(shù)較復(fù)雜,所以導(dǎo)入時(shí)必須注意幾個(gè)因素:1.主管的支持以確保足夠的資源投入;2.分階段導(dǎo)入;3.適當(dāng)?shù)挠?xùn)練與密切的顧問咨詢;4.使用Modeling技術(shù)時(shí)需要考量Coding的實(shí)作環(huán)境;5.良好團(tuán)隊(duì)的管理,以溝通、耐心與堅(jiān)持解決變革的人性阻力?! ∪?、XP開發(fā)流程-eXtremeProgramming  XP亦稱為終極流程,是最輕量級(jí)的開發(fā)流程,其最主要的精神是『在客戶有系統(tǒng)需求時(shí),給予及時(shí)滿意的可執(zhí)行程式』,所以最適合需求快速變動(dòng)的專案。XP經(jīng)過(guò)6年的實(shí)作與修改

6、,已演化為精致的開發(fā)流程,但仍不失其精簡(jiǎn)的特性,它強(qiáng)調(diào)客戶所要的是workable的執(zhí)行碼,所以把與撰寫程式無(wú)關(guān)的工作降至最低,并要求客戶與開發(fā)人員最好以side-by-side的方式一起工作?! P開發(fā)流程的基本步驟為:1.開發(fā)人員隨時(shí)可以和客戶進(jìn)行有效溝通,撰寫userstories以確認(rèn)需求。2.簡(jiǎn)易快速的系統(tǒng)設(shè)計(jì),撰寫?yīng)毩⒌尿?yàn)證程式以解決特殊困難的問題,找出演算法即可丟棄驗(yàn)證程式。3.規(guī)劃多次小型階段的專案計(jì)劃,以最快速度完成每一階段的程式交付客戶,客戶負(fù)責(zé)Acceptancetests;4.Coding前必須完成UnitTest與A

7、cceptancetests程序,所有模組整合前都須經(jīng)過(guò)UnitTests;5.開發(fā)人員必須快速回應(yīng)Bug與需求變更;6.要求二人一組使用一臺(tái)電腦設(shè)計(jì)程式,當(dāng)一人coding時(shí),另一人負(fù)責(zé)思考與設(shè)計(jì);7.程式必須符合程式規(guī)范,并常做程式的重整(Refactoring)。  XP屬于較精簡(jiǎn)的流程,于導(dǎo)入應(yīng)注意幾件事情:1.最好有顧問給予協(xié)助;2.持續(xù)的Review;3.可適當(dāng)調(diào)整流程,但不可失去其基本精神。  四、SCRUM開發(fā)流程  SCRUM開發(fā)流程是AgileProcess的一種,以英式橄欖球爭(zhēng)球隊(duì)形(Scrum)為名,基本假設(shè)是『開發(fā)軟體

8、就像開發(fā)新產(chǎn)品,無(wú)法一開始就能定義FinalProduct的規(guī)程,過(guò)程中需要研發(fā)、創(chuàng)意、嘗試錯(cuò)誤,所以沒有一種固定的流程可以保證專案成功』。Scrum

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。