一分鐘瞭解敏捷開發模式
敏捷開發是一種新型的開發方法,實際操作中採用種循序漸進的迭代式開發模型,力求在保證項平穩執行的情況下,逐次開發出需要使用的核心功能。
通俗場景解釋:餐廳點菜
服務員:歡迎觀臨,請問您有什麼需要?
客人:那個,我要蒸羊羔兒、蒸熊掌、蒸鹿尾兒、燒花鴨、燒雛雞、燒子鵝...一共18個菜。
服務員:好嘞,請稍等!
...
...
客人:老闆,都40分鐘了,才怎麼還沒上?
服務員:抱歉,您點了18道菜,需要過一會兒才能做好...
...
...
服務員:久等了,您點的18道菜全部做好了,一起給您上來了,請慢用。
客人:我嘞個去!
...
...
當然,這只是舉例,實際上沒有餐廳會把菜一起上,因為每一道菜都是獨立的,很容易單獨完成和交付。
但是專案研發就不一樣了,傳統的瀑布式開發就是要所有菜一起上,因為這些菜是放在一個盤子上的,沒做完是不可能端上來的。設計、編碼、測試、交付,每一個階段必須完成才能進入下一個階段,專案週期就會很長,如果能把專案開發像在餐廳一樣,邊上邊吃,那就會方便多了,對不對?這時候就用到了敏捷開發。
關於敏捷開發
就像開頭說的,敏捷開發(Agile)是一種以人為核心、迭代、循序漸進的開發方法。
在敏捷開發中,軟體專案的構建被切分成多個子專案,各個子專案的成果都經過測試,具備整合和可執行的特徵。
簡單地來說,敏捷開發並不追求前期完美的設計、完美編碼,而是力求在很短的週期內開發出產品的核心功能,儘早釋出出可用的版本。然後在後續的生產週期內,按照新需求不斷迭代升級,完善產品。
這就像某大佬的一句名言:
那麼,是誰提出了敏捷開發思想呢?
是一位名叫Martin Fowler的美國大叔,這優質的大腦瓜。
大叔不但是敏捷開發的創始人之一,還在物件導向開發、設計模式、UML建模領域做出了重要貢獻,擔任著ThoughtWorks公司的首席科學家。
敏捷開發模式的分類
敏捷開發的實現主要包括 SCRUM、XP(極限程式設計)、Crystal Methods、FDD(特性驅動開發)等等。其中SCRUM與XP最為流行。
同樣是敏捷開發,XP極限程式設計更側重於實踐,併力求把實踐做到極限。這一實踐可以是測試先行,也可以是結對程式設計等,關鍵要看具體的應用場景。
SCRUM則是一種開發流程框架,也可以說是一種套路。SCRUM框架中包含三個角色,三個工件,四個會議,聽起來很複雜,其目的是為了有效地完成每一次迭代週期的工作。在這裡我們重點討論的是SCRUM。
SCRUM的工作流程
學習Scrum之前,我們先要了解幾個基本術語:
Sprint:衝刺週期,通俗的講就是實現一個“小目標”的週期。一般需要2-6周時間。
User Story:使用者的外在業務需求。拿銀行系統來舉例的話,一個Story可以是使用者的存款行為,或者是查詢餘額等等。也就是所謂的小目標本身。
Task:由User Story 拆分成的具體開發任務。
Backlog:需求列表,可以看成是小目標的清單。分為Sprint Backlog和Product Backlog。
Daily meeting:每天的站會,用於監控專案進度。有些公司直接稱其為Scrum。
Sprint Review meeting: 衝刺評審會議,讓團隊成員們演示成果。
Sprint burn down:衝刺燃盡圖,說白了就是記錄當前週期的需求完成情況。
Rlease:開發週期完成,專案釋出新的可用版本。
如上圖所示,在專案啟動之前,會由團隊的產品負責人(Product owner)按照需求優先順序來明確出一份Product Backlog,為專案做出整體排期。
隨後在每一個小的迭代週期裡,團隊會根據計劃(Sprint Plan Meeting)確定本週期的Sprint Backlog,再細化成一個個Task,分配給團隊成員,進行具體開發工作。每一天,團隊成員都會進行Daily meeting,根據情況更新自己的Task狀態,整個團隊更新Sprint burn down chart。
當這一週期的Sprint backlog全部完成,團隊會進行Spring review meeting,也就是評審會議。一切順利的話,會發布出這一版本的Release,並且進行Sprint回顧會議(Sprint Retrospective Meeting)。
那麼,現實中的Scrum是什麼樣的情景呢?看看下面的照片就知道了:
其實在Excel裡面記錄工作進度也可以,但是這樣逼格高啊。
敏捷開發與Devops
敏捷開發的重心是開發,Devops的重心是開發和運維的協作。
Devops是Development和Operations的合成詞,其目標是要加強開發人員、測試人員、運維人員之間的溝通協調。如何實現這一目標呢?需要我們的專案做到持續整合、持續交付、持續部署。
時下流行的Jenkins、Bamboo,就是兩款優秀的持續整合工具,而Docker容器則為Devops提供了強大而有效的統一環境。
吃瓜。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31505134/viewspace-2655142/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 漫畫:三分鐘瞭解敏捷開發敏捷
- 一分鐘瞭解PON網路
- 一分鐘瞭解JAVA語言Java
- 一分鐘瞭解堆的基本操作
- 一分鐘瞭解降維演算法演算法
- 一分鐘瞭解HTTP代理不同的功能HTTP
- 一分鐘瞭解深度學習演算法深度學習演算法
- 一分鐘瞭解JDBC的構成和原理JDBC
- 一分鐘瞭解什麼是IP線上代理
- 一分鐘帶你瞭解Python私有變數的用法!Python變數
- 一分鐘帶你瞭解業界新品OCP網路卡
- 軟體開發趨勢:敏捷開發框架,瞭解一下?敏捷框架
- 一分鐘開發一個表單
- 軟體開發新模式:敏捷開發模式敏捷
- 一分鐘學會《模板方法模式》模式
- 過包率提升10% 一分鐘瞭解蘋果稽核機制蘋果
- 一分鐘帶你瞭解如何防範0day攻擊!
- 三分鐘讓你理解什麼是敏捷開發,這才是敏捷開發......敏捷
- 五分鐘瞭解設計模式(3)---介面卡模式設計模式
- 什麼是網路安全攻防實戰?瞭解只需一分鐘
- 一分鐘理解 JavaScript 釋出訂閱模式JavaScript模式
- 小白程式猿瞭解大廠的開發模式模式
- 什麼是低程式碼?一分鐘瞭解低程式碼「建議收藏」
- PowerBI_一分鐘瞭解POWERBI計算組_基礎運用篇(一)
- 一分鐘sed入門(一分鐘系列)
- 一分鐘一開大發,和值玩法訣竅
- 3分鐘瞭解Vue開發小程式的技術原理Vue
- AI開發者十問:10分鐘瞭解AI開發的基本過程AI
- 一分鐘開啟Tomcat https支援TomcatHTTP
- 乾貨!一分鐘帶你瞭解如何測試海外HTTP代理的ip可用率!HTTP
- 五分鐘瞭解 BlazorBlazor
- 【淺談設計模式(二)】讓你一分鐘讀懂設計模式設計模式
- [淺談設計模式(二)] 讓你一分鐘讀懂設計模式設計模式
- [淺談設計模式(一)] 讓你一分鐘讀懂設計模式設計模式
- [淺談設計模式(三)] 讓你一分鐘讀懂設計模式設計模式
- 【淺談設計模式(三)】讓你一分鐘讀懂設計模式設計模式
- 敏捷開發敏捷
- 5分鐘入門git模式開發Git模式