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