自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

需求如何進行敏捷設計

開發(fā) 項目管理
敏捷開發(fā)其實不光光要求開發(fā)層面和測試層面的敏捷,其實對需求設計層面也是要敏捷的,這樣才能配合后續(xù)的開發(fā)和測試,使之真正的敏捷起來,前面介紹過敏捷開發(fā)的大體模式了,這次主要分享一下實際操作過程當中需求層面如何進行敏捷設計。

敏捷開發(fā)其實不光光要求開發(fā)層面和測試層面的敏捷,其實對需求設計層面也是要敏捷的,這樣才能配合后續(xù)的開發(fā)和測試,使之真正的敏捷起來,前面介紹過敏捷開發(fā)的大體模式了,這次主要分享一下實際操作過程當中需求層面如何進行敏捷設計。

大多數(shù)情況下需求的處理過程都可以分為需求分析和需求設計兩部分,前者要將業(yè)務需求轉化成產(chǎn)品需求,后者要將產(chǎn)品需求轉化為產(chǎn)品設計,也即成品的 PRD。在做需求分析的時候,我們也是接到一部分需求之后,按鈕業(yè)務優(yōu)先級來做分析,每次分析肯定是將相互關聯(lián)的需求放在一起分析,或者是先分析優(yōu)先級較高的,后分析優(yōu)先級較低,這個過程將分析的任務進行了劃分,因此其也較為接近于敏捷的模式,這里撇開不談,主要講需求設計部分如何與后面的開發(fā)、測試結合起來。

在真正開始談敏捷設計之前,我覺得有必要思考一下是否所有的需求都適合用敏捷設計?為什么有這樣的疑問,在于敏捷開發(fā)其實是較為靈活的,并不是一味的為了敏捷而敏捷,其也可以分成產(chǎn)品敏捷和項目敏捷兩種方式,在我的理解里面,產(chǎn)品敏捷是真正的將敏捷設計、敏捷開發(fā)、敏捷測試結合在一起的,從產(chǎn)品的層面講所有的任務都用敏捷的方式進行管理;而項目敏捷則采用的是需求設計走的是瀑布的模式,開發(fā)和測試才是敏捷的,因此兩者之間還是有點差異,為什么有的需求不適合用敏捷的方式的來設計呢?

敏捷的模式總的來講就是將整體拆為多個個體,然后再單獨的完成各個個體以達到這些個體合成之后就是整體的效果,所以這里就有一個問題存在,產(chǎn)品的整體需求是否適合拆分?個人在操作經(jīng)驗中總結如下:

1、各功能之間較為獨立的適合敏捷。一個產(chǎn)品有十個功能點,各個功能點之間相互依賴關系不強的,松耦合,就可以每個功能點單獨抽取出來做設計;

2、功能本身的邏輯遵循某種操作流程的適合敏捷。功能的實現(xiàn)是按照一個較為固定的流程一步一步往下走的,這樣可以將每一個步驟單獨拆分開;

3、產(chǎn)品上線之后的版本維護適合敏捷。上線之后,對一些BUG、問題、小需求的縫縫補補,都適合用敏捷的方式來設計;

4、上線后的新增需求適合敏捷。上線的的新增需求一般都針對某個功能模塊來進行設計,相對來說較為獨立,因此也適合敏捷設計;

反之,如果不能滿足以上幾個條件的,特別是耦合度較高的需求,個人建議還是走瀑布的模式,把整體的需求都梳理清楚之后做整體的需求設計,這樣可以避免后面的設計過程要改動前面的設計結果的問題,減少一部分的需求變更,敏捷雖然說很大的一個優(yōu)勢就在于可以較好的適應需求變化,但這個需求變化是指來自于業(yè)務層面的,而不是來自于產(chǎn)品設計人員或者產(chǎn)品經(jīng)理自身的工作方式所導致產(chǎn)生的。當然肯定也有人是全部都走敏捷的,這樣的話對其產(chǎn)品規(guī)劃能力要求較高,整體思維邏輯要很清晰,才能避免出錯,這里只是個人建議,僅供參考。

說完是否需要采用敏捷設計之后,下面講一下敏捷設計的產(chǎn)出如何維護。平常我們稱一個功能點為一個CASE或者是一個Story,而在敏捷里面稱之為 backlog產(chǎn)品條目,其實只是換了個名稱而已,實質沒有變。之前我也說過在學習他人長處的時候,重要的是理解和變通,而不是照抄。

產(chǎn)品backlog是敏捷的核心,也是整個產(chǎn)品敏捷過程的起源。從根本上說,它就是一個需求、或故事、或特性等組成的列表,按照重要性的級別進行了排序。它里面包含的是用戶或者業(yè)務方想要的東西,并用用戶或者業(yè)務方可以理解的術語加以描述。通常有如下幾個部分:

backlog示例

序號ID:統(tǒng)一標識符,就是個自增長的數(shù)字而已,用以唯一標示每個backlog,主要用來做標示用,以及在PRD當中標注每個backlog所對應的需求設計描述;

名稱Name:簡短的、描述性的backlog標題,比如“查看你自己的交易明細”。它必須要含義明確,這樣開發(fā)人員、測試人員才能大致明白我們說的是什么東西,其實也方便產(chǎn)品經(jīng)理自身做checklist檢查,可以跟其他backlog區(qū)分開,它一般由2到10個字組成;拆分backlog是有要求的,一般要求每條backlog都能在規(guī)定的單個迭代周期里面完成;

重要性Importance:產(chǎn)品經(jīng)理評出一個數(shù)值,指示這個backlog有多重要,一般為1到10之間的整數(shù)值,分數(shù)越高越重要。其實就是優(yōu)先級,只不過有的人所理解的優(yōu)先級是1***先,所以這里用重要性來表述。優(yōu)先級的評定主要參考兩個維度,一是業(yè)務價值,二是緊迫性,其他的都可以暫不考慮;

工作量估算Initial estimate:團隊的初步工作量估算,表示完成該backlog所需的工作量,最小的單位是0.5人/天。為盡量提高估算的準確性,目前個人采用的是整個團隊每人都寫一個估算工作量,去掉一個***的,去掉一個***的,剩下做平均,呵呵,然后再安排各自講解一下為什么,最終要在團隊內部達成一致;

演示How to demo:大略描述了這個backlog應該如何進行示范,本質就是一個簡單的測試規(guī)范。一般為“先這樣做,然后那樣做,就應該得到……的結果”,敏捷對每個backlog的要求就是可演示可單獨上線的;

備注Notes:相關信息、解釋說明和對其它資料的引用等等,一般都非常簡短;

通常都把backlog存放在共享的Excel文檔里面,以便團隊成員都可以隨時查看編輯。一般來說這個文檔歸產(chǎn)品經(jīng)理維護,但也并不把其他團隊成員排斥在外。開發(fā)人員和測試人員常常要打開這個文檔,弄清一些事情,或者修改估算值。

這里又會產(chǎn)生一個問題,那就是如何讓產(chǎn)品backlog停留在業(yè)務層面上?舉例來說,如果產(chǎn)品經(jīng)理有技術相關的背景,那他就可能添加這樣一個 backlog:“給Events表添加索引”。真正目的也許是“要提高在后臺系統(tǒng)中搜索事件表單的響應速度”。到后面可能會發(fā)現(xiàn)索引并不是帶來表單速度變慢的瓶頸,也許原因與索引完全不相干。

所以指出如何解決問題的應該是開發(fā)團隊,產(chǎn)品經(jīng)理只需要關注業(yè)務目標即可。這種面向技術的backlog,可以一直問下去“為什么”,直到發(fā)現(xiàn)內在的目的為止,然后再用真正的目的來改寫這個backlog(“提高在后臺系統(tǒng)中搜索并生成表單的響應速度”)。最開始的技術描述只會作為一個注解存在(“為事件表添加索引可能會解決這個問題”)。

維護backlog表就是一個對產(chǎn)品需求進行拆分的過程,拆分完成后再根據(jù)迭代計劃來設計具體的實現(xiàn),前面所講的項目敏捷則是將所有需求都設計完成之后才進行拆分,這時主要就是為了把開發(fā)任務和測試任務拆分出來了。

相對來說,敏捷還是一種較為新穎的模式,目前在互聯(lián)網(wǎng)行業(yè)用的較多,每個公司在用的時候實際情況可能都不大一樣,其實沒有關系的,適合自己的就是***的,只要能提高產(chǎn)品迭代發(fā)布的效率,就可以了,先用起來,然后在用的過程當中慢慢優(yōu)化,發(fā)揮敏捷的***的效用。

原文鏈接:http://www.itfarmer.com.cn/1740.html

責任編輯:林師授 來源: IT民工 or IT精英
相關推薦

2013-01-05 10:16:26

需求開發(fā)

2009-04-24 10:14:21

敏捷SOA中小企業(yè)

2010-06-12 09:37:02

UML需求分析

2010-03-01 16:32:36

Python語言

2010-08-03 14:52:49

Flex界面設計

2011-05-25 00:00:00

數(shù)據(jù)庫設計

2022-10-10 09:11:12

互聯(lián)網(wǎng)存儲系統(tǒng)云計算

2022-05-13 11:02:45

數(shù)據(jù)中心配電設計

2016-09-22 15:55:39

互聯(lián)網(wǎng)架構容量設計

2019-05-13 10:30:34

互聯(lián)網(wǎng)架構容量

2010-06-02 14:16:18

SVN版本控制

2023-03-24 16:18:08

微服務架構

2010-02-03 13:55:51

Python 代碼

2010-07-21 14:17:07

Linux telne

2010-09-13 10:45:04

2011-07-28 14:07:30

2023-09-03 23:49:35

2010-07-22 10:58:49

batch Telne

2010-02-05 16:35:35

Android操作系統(tǒng)

2010-06-18 10:34:05

UML面向對象
點贊
收藏

51CTO技術棧公眾號