一個(gè)項(xiàng)目需求講到多少遍才能被大家理解。
我原以為這個(gè)次數(shù)應(yīng)該是三次,第一遍是讓對(duì)方有個(gè)輪廓印象,知道要做什么。
第二遍在講是為了讓彼此知道需求背后的流程和細(xì)節(jié),這個(gè)過程也是在審視需求的合理與不合理的地方。
第三遍是技術(shù)準(zhǔn)備動(dòng)工之前,雙方對(duì)功能實(shí)現(xiàn)路徑組織討論,為的是確??蓪?shí)施可執(zhí)行。
不過最近有一個(gè)項(xiàng)目需求討論了很多遍,跟技術(shù)團(tuán)隊(duì)很多人都講了三遍以上,最后發(fā)現(xiàn)不止一次還要跟具體開發(fā)人員再講一次。
于是,我發(fā)現(xiàn)自己這是在浪費(fèi)時(shí)間在重復(fù)做一件事,不斷的介紹一個(gè)項(xiàng)目需求,講給同一個(gè)人,講給不同的人。
而當(dāng)每次有人問新的問題時(shí),卻又發(fā)現(xiàn)一些之前沒有考慮到的地方,等于衍生出新的需求,一個(gè)需求背后又多了一些隱藏的需求。有種看到了一座冰山,而實(shí)際來到近前,才發(fā)現(xiàn)冰山下面的部分更加龐大。
需求管理是一門藝術(shù),也是一個(gè)反復(fù)溝通的過程。
于是,這幾天在技術(shù)的要求下,我開始踏上了畫圖之旅,畫了三張流程圖,然后又為它們配上邏輯判斷文檔。
后來又整理了一份又一份需求文檔。按理說,這些文檔材料都是開發(fā)所必須的。
不過,我卻也發(fā)現(xiàn)一個(gè)問題,就是我和開發(fā)團(tuán)隊(duì)之間的邊界在哪里呢?
我應(yīng)該負(fù)責(zé)的是需求管理,可是逐步已經(jīng)滲透到了開發(fā)功能邏輯,從表面的業(yè)務(wù)需求已經(jīng)深入到數(shù)據(jù)表和字段,以及它們之間的關(guān)系。
我察覺到自己可能越界了,跨界指揮,工作內(nèi)容超出了職業(yè)范圍。
那么為什么會(huì)分不清自己的邊界呢?
以前我也很少干涉具體技術(shù)開發(fā)細(xì)節(jié)的,把需求講清楚,給一個(gè)負(fù)責(zé)技術(shù)的產(chǎn)品經(jīng)理講明白,他有問題我們?cè)龠M(jìn)一步溝通。等于是我只要抓住一個(gè)人,他去給技術(shù)出文檔出規(guī)則。而如今,這個(gè)角色的人短期內(nèi)空缺了,于是就出現(xiàn)了一個(gè)需求跟團(tuán)隊(duì)幾乎每個(gè)人反復(fù)介紹,工作看似扁平化了,技術(shù)隨時(shí)有問題隨時(shí)來找我,而我也從技術(shù)外圍被卷進(jìn)了技術(shù)的中心。
每天有一半時(shí)間是在回答技術(shù)的問題,問題有需求邏輯的,有功能怎么做的,有字段存哪里的,也有跟我討論實(shí)現(xiàn)技術(shù)判斷流程的。
我一個(gè)技術(shù)外行與技術(shù)專家討論著大大小小的功能細(xì)節(jié),我內(nèi)心沒有多少激動(dòng),相反是如履薄冰,我一個(gè)人對(duì)接一個(gè)團(tuán)隊(duì),我講的需求他們不容易理解,而他們能理解的我又搞不懂。因?yàn)榧夹g(shù)人員的語言要么是邏輯流程,要么是算法,要么是表和字段的關(guān)聯(lián)。很遺憾,這三個(gè)方便都不是我擅長的,我努力把邏輯流程講清楚,講不清楚就畫流程圖,為此再次安裝VISO,畫完再補(bǔ)充文檔。有圖有字,互為補(bǔ)充。
這個(gè)過程我也發(fā)現(xiàn),從最初接到業(yè)務(wù)需求開始,這個(gè)需求就是比較模糊的,無論他提的多么具體,其實(shí)都不是清晰的需求。提出人能把自己想要什么說清楚就是很優(yōu)秀的,多數(shù)人是沒有想明白自己要什么,就直接提了一個(gè)自認(rèn)為很合理的需求。需求梳理后,距離把需求轉(zhuǎn)為技術(shù)可理解的需求還有好幾步路。
第一步,需求對(duì)應(yīng)功能是什么,是現(xiàn)有的還是新增的?
第二步,需求文檔有沒有,里面的取數(shù)規(guī)則是什么,完整流程是什么,展現(xiàn)規(guī)則是什么,存儲(chǔ)規(guī)則呢?
第三步,什么功能可以滿足需求,這個(gè)功能要做什么開發(fā)呢?開發(fā)的字段有什么,存在哪個(gè)表?是否有限制和檢驗(yàn),如何保證唯一性,如何保證錄入規(guī)范性。
第四步,需求的預(yù)計(jì)排期和優(yōu)先級(jí),什么時(shí)間要交付,優(yōu)先級(jí)是什么?哪個(gè)最重要?
第五步,給相關(guān)開發(fā)講解需求和功能設(shè)計(jì)。
有了這五步,一個(gè)需求才算是可以落地開發(fā)了,這就好比是我們一直說想買輛車,也去看了很多車,但是如果不加入具體訴求,使用場(chǎng)景,性能要求,資金限制,是否有替代方案,時(shí)間期限,優(yōu)先級(jí)等,那么可能一直在到處看車,不知道買什么,銷售人員也不知道如何向你推薦。
只是買一輛車,這不是可落地的需求。
買一輛什么車,一手還是二手,代步還是跑車,越野還是貨車,這個(gè)車用來做什么,是否要考慮油耗和動(dòng)力,能源是電動(dòng)還是油動(dòng)還是油電混,品牌預(yù)期,價(jià)位預(yù)期,買給誰,什么場(chǎng)景開車。這些都想明白了才能在有限范圍內(nèi)選擇,找到自己想要的汽車。
而有的人提需求可能是我要買一輛二手車,上下班代步用,最好的是大牌子。這樣的需求看似具體,但是沒有明確價(jià)位、性能、油耗、二手車公里數(shù)、是否汽車大修過等等。所以需求不明確還是不能支持做出準(zhǔn)確選擇。
做需求一方面要挖掘需求和場(chǎng)景,考慮整體流程和細(xì)節(jié),另一方面也玩考慮限制條件,比如時(shí)間、金錢、性價(jià)比、指向性等。
明確需求后,應(yīng)該繼續(xù)參與方案設(shè)計(jì),目的也是推動(dòng)需求轉(zhuǎn)為可執(zhí)行的具體行動(dòng)計(jì)劃,溝通團(tuán)隊(duì)對(duì)接人或者負(fù)責(zé)人,確保大家在需求開發(fā)上達(dá)成共識(shí),方向和理解在一個(gè)水平線上。