做需求分析的工作將近一年了凡泣,第一次看到“正確的需求”這樣的詞語時(shí)會(huì)有點(diǎn)困惑,需求本不是什么標(biāo)準(zhǔn)答案,難道還有正確和錯(cuò)誤之分庇绽?
《掌握需求過程》說需求就是產(chǎn)品支持其擁有著的業(yè)務(wù)所必須完成的事抹恳,或讓擁有者接受并感興趣所必須具備的品質(zhì)员凝。軟件是一種解決方案,要提供有價(jià)值的解決方案首先要理解要解決的問題奋献,也就是真正的問題健霹。我想,正確的需求可以理解為為了解決真正的問題業(yè)務(wù)所必須完成的事瓶蚂。
而為了發(fā)現(xiàn)正確糖埋、完整的需求,需要某種有序的過程窃这,《掌握需求過程》就描述了這樣一個(gè)過程瞳别,也就是如何得到正確的需求。大概過程如下:
項(xiàng)目啟動(dòng) ? ?項(xiàng)目的啟動(dòng)會(huì)通常會(huì)先確定業(yè)務(wù)問題的范圍杭攻,同時(shí)確定的還有利益相關(guān)者祟敛。
網(wǎng)羅需求 ? ?啟動(dòng)結(jié)束后,業(yè)務(wù)分析師開始學(xué)習(xí)“這部分業(yè)務(wù)是做什么的”兆解,也就是了解真正的問題馆铁,獲取真正的需求。
業(yè)務(wù)建模 ? ??了解了業(yè)務(wù)痪宰,分析師可以有效利用快速的草圖叼架,對(duì)調(diào)研的工作進(jìn)行建模。
場(chǎng)景討論 ? ? ?用場(chǎng)景描述業(yè)務(wù)過程衣撬,達(dá)成一致意見乖订。場(chǎng)景是需求的基礎(chǔ)。
編寫需求 ? ? ?為了避免需求被系統(tǒng)開發(fā)誤解具练,分析師必須以一種無二義的乍构、可測(cè)試的方式寫下需求,同時(shí)確保提出需求的利益相關(guān)者理解并同意寫下的需求,然后再傳遞給開發(fā)者哥遮。
這個(gè)過程當(dāng)中我認(rèn)為難度最大的就是網(wǎng)羅需求了岂丘,因?yàn)樾枰谶@個(gè)階段發(fā)現(xiàn)真正的問題。
書中介紹了許多網(wǎng)羅需求的技巧眠饮,最常用的應(yīng)該還是業(yè)務(wù)用例研討會(huì)和訪談奥帘。研討會(huì)通常討論的對(duì)象就是場(chǎng)景,也就是通過結(jié)構(gòu)化的方式敘述業(yè)務(wù)用例的故事仪召。使用場(chǎng)景寨蹋,以一系列的步驟,描述業(yè)務(wù)用例完成的工作扔茅,對(duì)于利益相關(guān)者而言會(huì)非常易于理解已旧。而訪談最難的便是如何提問。書中介紹了一種非常有效的方式召娜,或者說是視角——Brown Cow模型运褪。
作者通過這張圖告訴我們?nèi)绾伟l(fā)現(xiàn)真正的需求:我們通常會(huì)從左下象限開始,了解目前的業(yè)務(wù)是怎么運(yùn)作的玖瘸;去除當(dāng)前情況中一些技術(shù)化石和過時(shí)的組織機(jī)構(gòu)流程秸讹,我們也就可以看到純粹的、沒有雜質(zhì)的業(yè)務(wù)問題了店读,也就是左上象限嗦枢;繼而轉(zhuǎn)向右上角攀芯,這個(gè)象限的價(jià)值是準(zhǔn)確展示了擁有者想要做什么屯断,這里我們可以跟利益相關(guān)者討論然后達(dá)成共識(shí)。加上實(shí)現(xiàn)的手段侣诺、技術(shù)殖演,使得他們的想法能夠?qū)崿F(xiàn),也就是最右下象限了年鸳。
這樣一個(gè)過程中趴久,看上去按部就班執(zhí)行就可以了,但要注意的是搔确,橫線之上才是業(yè)務(wù)的真正本質(zhì)彼棍,而我們通常很難發(fā)現(xiàn),而且在跟利益相關(guān)者探討的過程當(dāng)中膳算,很容易就“跑偏”了座硕。
第一個(gè)“障眼”的是Future-How。比如我們?cè)谠L談時(shí)涕蜂,客戶說华匾,“我想要一個(gè)報(bào)表來顯示我每年都在哪些項(xiàng)目上做了哪些任務(wù)”,這個(gè)時(shí)候客戶已經(jīng)在描述他期望的未來是什么樣的工作模式机隙。但這并不是真正的問題蜘拉。
怎樣才能識(shí)別對(duì)方說的到底是不是業(yè)務(wù)問題萨西,書中給出了一種方法,看這樣的“需求”當(dāng)中有沒有包含技術(shù)旭旭。比如“報(bào)表”谎脯,其實(shí)就是一種技術(shù),所以客戶已經(jīng)在描述一種解決方案了持寄,但我們只有了解和理解了真正的業(yè)務(wù)問題穿肄,才能定義針對(duì)性的解決方案,到時(shí)候報(bào)表也許還可以是一種解決方案际看,但不一定是最好的咸产。
如何才能發(fā)現(xiàn)真正的業(yè)務(wù)問題呢,這個(gè)時(shí)候不妨多問一句仲闽,“請(qǐng)問您需要了解每年在多少項(xiàng)目上做了多少任務(wù)是什么目的呢脑溢,這對(duì)您有什么幫助嗎”±敌溃客戶想要這樣一個(gè)統(tǒng)計(jì)結(jié)果屑彻,也許是方便自我總結(jié)經(jīng)驗(yàn)教訓(xùn),為第二年做準(zhǔn)備顶吮;也許是總覺得工作安排不過來社牲,不知道時(shí)間去哪兒了;這個(gè)時(shí)候我們的解決方案也許就不是報(bào)表那么簡(jiǎn)單了悴了。
簡(jiǎn)單來說搏恤,需求不應(yīng)預(yù)先確定實(shí)現(xiàn)方式,不論某種技術(shù)是多么具有吸引力湃交。如果我們?cè)谝婚_始就認(rèn)為客戶表達(dá)的正是他的需求熟空,最后的結(jié)局很可能就是“我知道這是我提出的,但這不是我想要的”搞莺。也就是說你并沒有解決客戶真正的業(yè)務(wù)問題息罗,因?yàn)檎嬲膯栴}從未闡明,所以從沒有正確的理解才沧。
第二個(gè)“障眼”的是Now-How迈喉。泳道圖是我們常用的業(yè)務(wù)建模的工具,來對(duì)當(dāng)前的業(yè)務(wù)開展模式進(jìn)行描述温圆。但泳道圖其實(shí)很容易誤導(dǎo)讀者挨摸,讓他們認(rèn)為泳道代表的處理節(jié)點(diǎn)邊界應(yīng)該在將來的實(shí)現(xiàn)中保留。而尋找業(yè)務(wù)本質(zhì)的重要一步捌木,就是查看端到端的過程油坝,忽略當(dāng)前工作在部門間的劃分,這些劃分的方式其實(shí)是基于當(dāng)時(shí)的技術(shù)或者業(yè)務(wù)結(jié)構(gòu)的,所以當(dāng)前的實(shí)現(xiàn)通常掩蓋了真正的業(yè)務(wù)本質(zhì)澈圈。所以彬檀,不妨試試把泳道從模型中去除,業(yè)務(wù)分析師和利益相關(guān)者就更容易看到一些活動(dòng)瞬女,這些活動(dòng)也不需要和以前執(zhí)行的位置或順序相同窍帝,而是一種純粹的端到端的業(yè)務(wù)。簡(jiǎn)單來說诽偷,放眼整個(gè)泳池坤学,我們才能更容易發(fā)現(xiàn)業(yè)務(wù)的本質(zhì)。
這本書其實(shí)是有很多干貨的报慕,一步接一步深浮、一個(gè)模板接一個(gè)模板、一個(gè)例子接一個(gè)例子地展示了Volere方法眠冈,這是業(yè)務(wù)分析的前輩們?cè)诙嗄陰椭蛻舾倪M(jìn)需求的過程中積累而得的產(chǎn)物飞苇,對(duì)于業(yè)務(wù)分析師們非常受用。Get了這些方法和技能蜗顽,相信我們離正確的需求就不遠(yuǎn)了布卡。