敏捷开发_全面解析瀑布式开发和敏捷式开发
??很多人畢業后,都在從事跟所學專業不同的工作,有的人一籌莫展,有的人習以為常。
我是一名編導生,畢業后去做抗戰紀錄片,工作中接觸更多的是歷史、影像與表達。但一個偶然的契機,讓我轉戰 向 互聯網產品行業,工作中對接的是產品經理、開發和測試,用戶畫像、CDN 、 UV 、 PV 等一大堆新概念也撲面而來。
后來又從產品逐漸深入到軟件行業,有朋友認為這是新世界的大門;也有朋友覺得這是當下社會的縮影,各行各業的發展牽動著人性的各種追求與欲望,畢竟人們總想要追求新事物。于我而言,每天推陳出新,不斷收獲,享受當下就好,然而,接納新事物其實沒那么簡單。
最開始接觸軟件行業,最常聽到的就是瀑布式開發、敏捷開發,于是心里就有了疑問,我翻閱了各大網站查找相關的資料,去B 站上觀看圖文結合的相關視頻, 結合自己的理解,以剛入行的視角現給大家整理了一份有關敏捷式開發與瀑布式開發的概念解析。
參考資料推薦: 禪道官網、 CSDN博客、 B站視頻
一、什么是瀑布式開發
瀑布式開發的基本流程是 需求 → 設計 → 開發 → 測試 , 是一個更傾向于嚴格控制的管理模式 。 要求有明確的需求,大家按照需求一步步做好規劃,每一階段工作的完成是下一階段工作開始的前提,每一階段都要進行嚴格的評審,保證各階段的工作做得足夠好時才允許進入下一階段。這種模式一般適用于需求比較明確、to B 端的項目。
不得不說瀑布項目失敗率會比較高,因為它有一個很大的缺陷, 就是受各種條件的制約。當產品研發完成后, 到了產品測試階段 萬一發現問題 ,或者發現其無法滿足市場需求, 那么就需要重新開發,甚至需要重新規劃產品,這 間接導致了產品延期發布的高發性 與不確定性。
微軟 的瀑布式開發模式就是個很好的例子。隨著用戶對軟件的需求越來越苛刻,微軟的軟件產品曾經遭受了大家的不滿,原因并非是產品的使用問題,而是其更新周期太過漫長 。
比如微軟Office 、 Windows 等主打產品的更新周期長達 3 年左右,軟件延期發布實屬家常便飯,此時微軟的瀑布式開發模式已經難以滿足新型軟件的開發要求,不得不改變產品的研發策略。
隨著網絡的逐漸興起,軟件交付模式發生了巨大變化,也正是在 那 個時候,“敏捷開發”模式被國外的軟件先行者們探索出來了。
二、什么是敏捷式開發
簡單的說,敏捷開發是一種以用戶需求進化為核心、迭代、循序漸進的開發方法。首先把 用戶(客戶 )最關注的軟件原型做出來,交付或上線,在實際場景中去 快速 修改彌補需求中的不足,再次發布版本。通過一些敏捷實踐方式,細化story ,提供更小的迭代。如此循環,直到用戶(客戶)滿意。適用于需求不明確、創新性或者需要搶占市場的項目。
還是拿微軟來說,微軟的Visual Studio 2010是公司內部首個因敏捷開發模式而受益的Visual Studio版本,該軟件發布于2010年4月,耗費了兩年的時間完成開發,但隨后研發團隊發現軟件中的許多模板對于敏捷開發者來說太過籠統,幾乎沒有太大的實際意義,微軟的軟件研發策略也就從此開始發生了巨大變化。以往的產品更新周期為兩到三年,目前的版本更新速度已經縮短至一個季度左右,這在瀑布式開發模式下是難以想象的。
敏捷式開發在 國外大放異彩, 當然在國內也不例外,國內很多研發者們結合 當下軟件市場環境,也有了新的研發策略。
國產開源的禪道項目管理軟件,2009 年開始 遵循Scrum ( 敏捷式開發中比較流行的一種方式)的管理思想,發布了第一個 產品版本 。自發布以來,禪道曾數次 打敗JIRA 及其他強有力的競品, 連續四年榮膺國內外軟件測試行業最常用測試管理工具第一名 ,也算是國產軟件 的驕傲了。
在產品開發過程中, 禪道 研發團隊認為Scrum方法 雖然 注重實效,操作性強,非常適合軟件研發項目的快速迭代開發 , 但它只規定了核心的管理框架,還有很多細節流程沒有完善。于是禪道團隊結合國內研發現狀,整合了bug管理、測試用例管理、發布管理、文檔管理等功能,完整的覆蓋了軟件研發項目的整個流程。
在禪道軟件中,明確將產品、項目、測試三者概念區分開,產品人員、開發團隊、測試人員,三者分立,互相配合,又互相制約,通過需求、任務、bug來進行交相互動,終通過項目拿到合格的產品,是敏捷式開發的優秀案例。
(禪道軟件界面圖)三、瀑布式開發與敏捷式開發對比
很顯然,敏捷式開發與瀑布式開發有著質的區別,但總的來說,在管理項目過程中,都不會嚴格的按照完全的敏捷或者完全的瀑布模式進行開發,而是各自摻雜了其他的方式。
可見,項目管理過程中,過于強調模式并沒有意義,重要的是要能預防問題的發生,在問題發生之后,能用最小的成本解決,模式起到的更多是一個參考作用。
接受新事物的過程雖說不易,但每天有所收獲是件多么幸運的事兒啊。但愿不論何時的我們,都擁有一顆擁抱新事物的心,對這個世界永遠保持好奇,這樣我們就不會變老吧。
總結
以上是生活随笔為你收集整理的敏捷开发_全面解析瀑布式开发和敏捷式开发的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python for in循环_Pyth
- 下一篇: lisp pl线线段数_vlisp每日源