什么是敏捷软件开发?
什么是敏捷軟件開發(fā)?
敏捷軟件開發(fā)是一套方法,可以為您的客戶快速而頻繁地提供價值。它通過高度協(xié)作的跨職能團隊促進精心策劃的小型迭代。敏捷方法提供了傳統(tǒng)上與瀑布相關(guān)的順序開發(fā)和長期發(fā)布周期的替代方案。
敏捷適合任何規(guī)模的企業(yè)(從創(chuàng)業(yè)到企業(yè)),任何規(guī)模的團隊(從小到大)和大多數(shù)項目。也就是說,采納敏捷的組織必須在文化上為變革做好準(zhǔn)備,并致力于指導(dǎo)或培訓(xùn)。
為什么敏捷很重要
| ◼ |
更大的透明度 從利益相關(guān)者到工作團隊(測試人員,開發(fā)人員,設(shè)計人員,項目經(jīng)理等)的每個人都參與并明確了目前正在進行的工作以及還需要完成的工作。 |
|
| ◼ |
更大的可預(yù)測性 工作顯然是優(yōu)先考慮的,時間緊張,理想情況下是1-2周的時間。作為持續(xù)交付周期的一部分,新功能經(jīng)常出貨,而且更具可預(yù)測性。 |
|
| ◼ |
極大的靈活性 當(dāng)由于反饋或新業(yè)務(wù)需求而改變優(yōu)先級時,可以立即在積壓中插入和重新排列故事。 |
|
| ◼ |
專注于商業(yè)價值 利益相關(guān)者決定功能的建立順序,使團隊清楚業(yè)務(wù)最重要的部分。 |
|
| ◼ |
關(guān)注用戶 用戶故事旨在滿足真實用戶的需求。每個設(shè)計和開發(fā)的功能都可以提供增值服務(wù)。 |
|
| ◼ |
注重質(zhì)量 由于所有的工作都分解成可管理的單元和頻繁的構(gòu)建,所以測試和評論更為集中。由于能夠更容易和更快地定位和修復(fù)缺陷,質(zhì)量得到了改善。 |
考慮敏捷?要記住什么
盡管世界正在從傳統(tǒng)的瀑布方法轉(zhuǎn)向敏捷軟件開發(fā),但成功采用敏捷技術(shù)需要改變工作流程的思維方式和對常見陷阱的認識。開始之前,得到一些答案:
你的團隊是否在同一艘船上?
敏捷是一個非常合作的過程。因為這不是一個強有力的,自上而下的工作流程,需要在各個層面上采用。讓人激動。解釋這將如何使組織和他們受益,并向他們保證,這不僅僅是一種時尚。敏捷方面的投資推動了創(chuàng)新,靈活性和更短的開發(fā)周期。
你想一個人去嗎?
如果你是,停下來。找出您的團隊中對采用敏捷工作流程熟悉且興奮的人員。讓敏捷在基層實施,并提供足夠的發(fā)起人支持,以解決此類變更可能對其他團隊,管理層和業(yè)務(wù)合作伙伴造成的任何可能的阻力。理想情況下,聘請一名顧問幫助事情開始并朝著正確的方向前進。這將有助于降低風(fēng)險并增加采用的時間。
訓(xùn)練到位,人們將如何練習(xí)?
你需要一個計劃來訓(xùn)練你的團隊。減少進程的承諾可能導(dǎo)致執(zhí)行不力。敏捷是一套必須學(xué)習(xí)和遵守才能成功的團隊。但是比單純的訓(xùn)練更重要的是讓你的團隊通過干練來學(xué)習(xí)。讓他們在一個實際的項目上工作,以非常有形的方式學(xué)習(xí)和強化敏捷的好處。
每個人都準(zhǔn)備好改變流程和工具嗎?
您目前使用哪些產(chǎn)品管理工具,是否適合敏捷?您是否準(zhǔn)備好實施測試驅(qū)動開發(fā)(TDD),持續(xù)集成(CI)和持續(xù)部署(CD)?你包括你的設(shè)計和用戶體驗團隊嗎?組織越大,你就需要把更多的心靈和思想聯(lián)系在一起。采用敏捷是非常可行的,但做得很好,變化貫穿于整個組織。
巨大的差異:敏捷與瀑布
|
共同的情況 |
敏捷方法 |
瀑布方法 |
|---|---|---|
|
項目經(jīng)理希望在開發(fā)過程中添加一個新功能 |
附加功能在每周沖刺期間添加,以確保產(chǎn)品符合最新的客戶和業(yè)務(wù)要求。 |
開發(fā)商已經(jīng)完成了開發(fā)的設(shè)計和施工階段,直到下一個六個月的項目計劃階段才開始添加新功能。 |
|
在測試過程中發(fā)現(xiàn)一個顯示塞子錯誤 |
這個bug是在每周沖刺結(jié)束時發(fā)現(xiàn)的。為了預(yù)料會發(fā)現(xiàn)一些小問題,開發(fā)團隊在下周的沖刺日歷中加入了修補程序,項目按時按預(yù)算進行。 |
這個錯誤是在開發(fā)的最后階段發(fā)現(xiàn)的,影響了整個項目編寫代碼的方式。意料之外的重新安排時間來修復(fù)錯誤和上游代碼將意味著該項目會遲到,超出預(yù)算。 |
|
客戶或客戶提供反饋 |
在下一次沖刺運行之前,反饋會被協(xié)同并逐步地融入到設(shè)計中。 |
反饋是有記錄的,但是直到下一個版本才會被納入到項目中。 |
敏捷和極限編程
極限編程被認為是敏捷的一種風(fēng)格,它獨特地適應(yīng)了開發(fā)團隊的需求。Extreme的元素包括:成對編程,所有代碼的自動化測試,在實際需要之前避免對功能進行編程,代碼的簡單性和清晰性,隨著時間的推移需要改變客戶需求,并且問題得到更好的理解,客戶和程序員之間。
在關(guān)鍵日的一
總結(jié)
以上是生活随笔為你收集整理的什么是敏捷软件开发?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SAP Spartacus的版本机制
- 下一篇: 研究生简历自我介绍模板 研究生简历自我介