你真的知道敏捷和迭代吗?
在這敏捷開發(fā)橫行的時代中,人人都在談敏捷,人人都在談迭代,似乎大家好像都嘗到了敏捷帶來的甜頭,記得有一次跟朋友吃飯,說他們現(xiàn)在的項目用敏捷開發(fā),每個迭代都能看到不斷完善的產(chǎn)品,非常有成就感,客戶的滿意度也提升了不少;另一個朋友說,我們用迭代開發(fā),也是這樣,而且客戶想加什么需求就加什么,直接按照優(yōu)先級排到迭代周期就行,也不用為改需求而煩躁。當時我就想,敏捷開發(fā)不就是分迭代周期的嗎,他倆好像說的是一回事吧。回去過了好長一段時間,突然想起這件事了,在網(wǎng)上一查,還真不是一回事…
迭代開發(fā)流程:
什么叫迭代開發(fā)?在迭代開發(fā)中,整個開發(fā)工作被組織為一系列的短小的、固定長度(如3周)的小項目,被稱為一系列的迭代,這叫迭代開發(fā)。每一次迭代都包括了定義、需求分析、設(shè)計、實現(xiàn)與測試。而敏捷開發(fā)是以用戶的需求進化為核心,采用迭代、循序漸進的方法進行軟件開發(fā)。前者是軟件開發(fā)的生命周期模型,是一種開發(fā)過程;后者是多種軟件開發(fā)項目管理方法的集合,是一種開發(fā)方法。這是兩者最根本的區(qū)別。與迭代開發(fā)對應(yīng)是瀑布模型,螺旋模型等,而與敏捷開發(fā)對應(yīng)的是Scrum,XP(極限編程),Crystal(水晶編程)等開發(fā)方法,所以它倆根本就不是一回事!那么它們倆有沒有關(guān)系呢?答案是:有…
敏捷-Scrum開發(fā)流程:
敏捷開發(fā)的定義就已經(jīng)說明,采用迭代的方法進行軟件開發(fā)。那么有人會問,敏捷開發(fā)為什么要采用迭代開發(fā)呢?不要忘了敏捷開發(fā)的核心原則是擁抱變化,和遞增的變化。迭代式開發(fā)正適合在那些需求信息不明確的項目,這樣在開發(fā)過程中遇到需求的變化時,所帶來的影響要比其他模型小。而現(xiàn)在的很多項目中,需求在項目進行中變化的事兒經(jīng)常見,所以顯得迭代式開發(fā)的優(yōu)勢更明顯一些,這正符合敏捷開發(fā)的擁抱變化。而且迭代開發(fā)是不要求每一個階段的任務(wù)做的都是最完美的,明明知道還有很多不足的地方,卻偏偏不去完善它,而是把主要功能先搭建起來,以最短的時間,最少的損失先完成一個“不完美的成果物”直至提交,然后再通過客戶或用戶的反饋信息,在這個“不完美的成果物”上逐步進行完善,這正符合敏捷開發(fā)的遞增變化。當然,敏捷開發(fā)只是一個總體概念,而迭代式開發(fā)只是幾乎所有敏捷開發(fā)所采用的一個主要的基礎(chǔ)實踐。敏捷開發(fā)除迭代式開發(fā)外,還包含了其他許多管理與工程技術(shù)實踐,如演進式架構(gòu)設(shè)計、敏捷建模、重構(gòu)、自動回歸測試(ART)等等。總而言之,就是敏捷開發(fā)與迭代開發(fā)是整體與局部的關(guān)系,前者就像大家庭,而后者是大家庭中的一員。
敏捷發(fā)展歷史
敏捷和迭代雖然不一樣,但是它們也是分不開的,迭代和敏捷開發(fā)方式的結(jié)合,既保證了產(chǎn)品的質(zhì)量又在項目產(chǎn)品的持續(xù)改進中具有一定的優(yōu)勢。吸取精華,破其糟粕,只有這樣,項目才會達到趨于完美的程度。現(xiàn)在市面上也恰好有一款這樣的項目管理工具-華為軟件開發(fā)云,它就很好的把敏捷和迭代完美的融合到一起了,并且還配備代碼管理,代碼檢查,編譯構(gòu)建,部署和發(fā)布等一站式的流水線開發(fā)流程,大大提高了我們管理和開發(fā)人員的工作效率,這也是我們所有IT人,做任何項目都想達到的目標。
轉(zhuǎn)載于:https://www.cnblogs.com/goldenfish/p/7148870.html
總結(jié)
以上是生活随笔為你收集整理的你真的知道敏捷和迭代吗?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 《无痛苦N-S方程笔记》第二章知识点框架
- 下一篇: 并查集做题总结