? 系統(tǒng)的設(shè)計汰具、團隊的協(xié)作、任務(wù)的開發(fā)計劃制定都離不開合理的需求拆解,需求拆解如此重要贤笆,大家不禁要問:如何對需求進行高效合理拆解蝇棉?
? ? 下面筆者針對多年工作實戰(zhàn)經(jīng)驗,談?wù)剛€人看法苏潜。
讓我們從工作中常見的2個需求拆解現(xiàn)象說起:
1银萍、不知道怎么拆,一個需求計劃一個月恤左,過了半個月發(fā)現(xiàn)好多坑,還得一個月搀绣。
2飞袋、拆的千絲萬縷的關(guān)系,依賴特別多链患,管理起來經(jīng)常顧了這個忘記那個巧鸭。
? 這里介紹常見的4種拆解的方法,供大家參考麻捻,破解我們在拆解過程中的難題:
一纲仍、按照工作流步驟拆分
? ? 識別出操作步驟
? ? 每個步驟該做什么事
? ? 按照步驟來拆解需求
舉個簡單的例子,有個需求描述:
需求:支持創(chuàng)建檢測任務(wù)
用戶點擊菜單“升級檢測-灰度測試”贸毕,輸入檢測條件郑叠,請求創(chuàng)建檢測任務(wù);
XX 向部署系統(tǒng)請求獲取升級任務(wù)覆蓋的機器明棍;
部署系統(tǒng)校驗當前任務(wù)狀態(tài)乡革;
部署系統(tǒng)返回升級機器序列;
XX 創(chuàng)建檢測任務(wù)成功摊腋。
這里的工作流沸版,我們梳理后發(fā)現(xiàn)是這樣:
? ? 請求創(chuàng)建檢測任務(wù)
? ? 請求獲取升級機
? ? 校驗及檢查
于是,我們就可以拆解為以上三個子需求兴蒸,安排不同的人完成视粮。
二、根據(jù)業(yè)務(wù)規(guī)則拆分
? ? 分析有哪些業(yè)務(wù)規(guī)則
? ? 討論每個業(yè)務(wù)規(guī)則流
? ? 按照業(yè)務(wù)規(guī)則拆分成小需求
比如有這樣的一條需求:XX 節(jié)點支持下發(fā)策略
按客戶需求配置回源量總數(shù)橙凳,或者出現(xiàn)源站異常需要配置下發(fā)回源控制策略時候蕾殴,需要按每個節(jié)點的回源數(shù)據(jù)或者節(jié)點數(shù)按比例下發(fā)。沒有指定情況痕惋,則統(tǒng)一下發(fā)一套策略区宇,每個節(jié)點每臺機器配置相同策略;
按照業(yè)務(wù)流來梳理值戳,會知道有三個業(yè)務(wù)流:
? ? 客戶指定回源
? ? 沒有指定情況
? ? 源站異常
拆解小貼士:有些需求初看起來很簡單议谷,但分析發(fā)現(xiàn)業(yè)務(wù)規(guī)則很復雜,在這種情況下堕虹,把一個需求按照業(yè)務(wù)規(guī)則拆解成幾個小需求卧晓,來應(yīng)對業(yè)務(wù)規(guī)則的復雜性芬首。
三、 從“簡單”到“復雜”的拆分
? ? 識別出最簡單核心的業(yè)務(wù)場景
? ? 再逐個討論復雜的業(yè)務(wù)場景
? ? 按照簡單→復雜的方式拆分需求
這里也舉個需求:恢復防控制任務(wù)
恢復任務(wù)首先需要判斷是否已經(jīng)超過防護控制任務(wù)時效逼裆,如果超過時效郁稍,提示“該任務(wù)已經(jīng)超過防護控制任務(wù)時效,任務(wù)恢復失敗胜宇,如需繼續(xù)控制耀怜,請點擊列表中任務(wù) ID,進入詳情界面進行修改桐愉〔破疲”,控制狀態(tài)顯示“失控”从诲,執(zhí)行狀態(tài)變?yōu)椤啊觥弊罅 H绻麤]有超過時效,則重新校驗報警指標走控制流程系洛,控制狀態(tài)為“在控”俊性。
看這一段的文字,好像有點繞暈了描扯,我們來按照"簡單"??"復雜"的原則來理一下:
? ? 正扯ㄒ常恢復的邏輯(最簡單的邏輯)
? ? 超過時效的邏輯
? ? 繼續(xù)控制(不恢復)的邏輯
拆解小貼士:當團隊在討論某個需求變得越來越大(關(guān)于 X 怎么樣?你考慮過 Y 嗎荆烈?)拯勉,停下來并問一問:“可以工作的最簡單版本是什么?“憔购,捕捉這一簡單版本做為一個單獨的需求宫峦,然后往上加需求的復雜度,就會輕松很多玫鸟。
四导绷、穿刺技術(shù)
需求可能過于復雜,或者現(xiàn)在根本就難以理解屎飘,在這種情況下妥曲,先利用穿刺技術(shù)探索,消除需求的風險和不確定性钦购,然后基于穿刺的結(jié)果檐盟,分割原來的需求。
? ? 技術(shù)穿刺:技術(shù)的基本研究押桃,使團隊熟悉新技術(shù)或新領(lǐng)域
? ? 功能穿刺:用戶交互實體模型葵萎、線框、頁面流等
根據(jù)穿刺結(jié)果,再使用其他的方法拆解需求羡忘,穿刺本身就是一個獨立的“需求”谎痢。
需求拆解小結(jié):
當做好需求拆分后,我們?nèi)菀紫萑胍粋€困惑卷雕,拆到什么程度算完呢节猿?拆太細了,團隊投入有點大漫雕,拆太粗了滨嘱,好像起不到作用。
每個團隊的實際情況不太一樣浸间,敏捷中也有指導的 INVEST 原則九孩,但我這里強調(diào)一下做拆分的目的:是要更快速地流動、更快地得到反饋发框,所以,當你無法做到十全十美煤墙,至少做到:
獨立梅惯、可測試
小周期(比如可以是小時、不大于 1-5 天仿野,根據(jù)團隊的實際來達成一致)