需求分析方法之——逐字逐句審讀法(上)(C系架構(gòu)設(shè)計(jì)法)
需求分析的一個(gè)重要方法——逐字逐句審讀法。
現(xiàn)在給大家講的這些方法,并不是教科書式的方法,也不是特別宏大的方法論。這些方法,都是咱們多年架構(gòu)設(shè)計(jì)實(shí)戰(zhàn)經(jīng)驗(yàn)的總結(jié),證明他是行之有效的,把這些方法總結(jié)出來講給大家。
逐字逐句審讀法,光看名字就知道,就是拿著需求文檔,逐字逐句去讀,那么怎么讀?要審讀,就是帶著思考的去審視它,去閱讀它。這個(gè)方法的主要目的:就是要發(fā)現(xiàn)功能點(diǎn)和業(yè)務(wù)流程。
一份需求文檔,真正要讀,也不是讀一遍就結(jié)束的,可能反反復(fù)復(fù)要讀很多遍,那么這個(gè)中間的過程,咱們也會(huì)采用迭代的思路。
我們做需求分析也是這樣,不是說一步到位,一下就把所有的功能點(diǎn),業(yè)務(wù)流程理解的特別透徹,也是采用迭代的方式,首先去發(fā)現(xiàn)這里面有哪些功能點(diǎn),還有相應(yīng)的業(yè)務(wù)流程,這就可以做一個(gè)迭代周期。
當(dāng)我發(fā)現(xiàn)這些功能點(diǎn)和業(yè)務(wù)流程過后,咱們還會(huì)有具體的方法來幫助大家去繼續(xù)明確這些業(yè)務(wù)功能點(diǎn)的業(yè)務(wù)功能;還有,去分析每一個(gè)業(yè)務(wù)流程,咱們也會(huì)有相應(yīng)的方法。
所以,逐字逐句審讀法,最主要的目的,就是來發(fā)現(xiàn)功能點(diǎn)和業(yè)務(wù)流程。就好比說現(xiàn)在,我只知道我要做一個(gè)系統(tǒng),這個(gè)系統(tǒng)里頭有什么功能呢?對(duì)不起,不知道。這個(gè)時(shí)候我拿到一份需求文檔,是不是要來分析,對(duì)吧。這里來做個(gè)簡(jiǎn)單的示范。

我找了一個(gè)簡(jiǎn)單的功能,叫做供應(yīng)商產(chǎn)品下架的功能,這都是實(shí)際的需求文檔里摘出來的,我一個(gè)字都沒改,原封不動(dòng)的搬過來的,如下:
供應(yīng)商產(chǎn)品下架:
1. 供應(yīng)商因停產(chǎn)、缺貨等其他原因無法供應(yīng)產(chǎn)品時(shí),通過預(yù)約下架 提前申請(qǐng)。
2. 采購人員判斷是否下架,如不同意則拒絕下架;如同意,在下架產(chǎn)品時(shí)間開始時(shí),采購人員則解除與該供應(yīng)商的供應(yīng)關(guān)系,供應(yīng)商產(chǎn)品下架生效。
假想我們現(xiàn)在做的業(yè)務(wù)系統(tǒng)就只有這么大,只需要完成這么點(diǎn)功能,那我們?cè)趺磥硎褂弥鹱种鹁鋵徸x法呢?一起來練一下。
首先 “供應(yīng)商因停產(chǎn)缺貨等其他原因無法供應(yīng)產(chǎn)品”,大家看到有供應(yīng)商,這就說明,最起碼,這里面有兩塊,一大塊是供應(yīng)商的功能,一大塊是采購方的功能,對(duì)吧?也就是說,你看到這句話,就知道應(yīng)該有兩方。
繼續(xù),“因停產(chǎn)缺貨或其他原因無法供應(yīng)產(chǎn)品“,這就意味著,整個(gè)功能的一個(gè)場(chǎng)景,就說是出現(xiàn)這樣的情況的時(shí)候,這句話沒什么可講的。
“通過預(yù)約下架提前申請(qǐng)”,大家看清楚,這里其實(shí)就有功能了,“預(yù)約下架”,大家看看是不是一個(gè)功能,肯定是的,對(duì)吧。那么誰來預(yù)約?在哪兒預(yù)約呢?這個(gè)功能是做在供應(yīng)商這邊,還是采購方這邊呢?
我們來深入思考一下,供應(yīng)商在這個(gè)功能里頭,他主要做什么?他是不是就是來填寫一些下架的申請(qǐng),就說這個(gè)產(chǎn)品,因?yàn)槟撤N原因,不能夠正常的供應(yīng)給采購方了,因此,我預(yù)約下架。
這個(gè)“下架”的功能,就會(huì)涉及到兩方,不能你說下架就下架,對(duì)吧。你得給采購方來申請(qǐng)一下吧,那就要把預(yù)約的這些信息提供給采購方,由采購方來審核。那么,有沒有比較復(fù)雜的審核流程呢,咱們先有這么個(gè)疑問,先存疑,往后去看,因?yàn)楹竺婵赡軙?huì)講到你想的這些問題。
咱們接著來,這句話沒完呢,預(yù)約下架是個(gè)功能,大家看后面還有個(gè)叫“提前申請(qǐng)”,你看“提前”倆字,申請(qǐng)是功能,關(guān)鍵啥叫提前?怎么提前?多久算提前?問題就來了,如果供應(yīng)商他預(yù)先知道他的某些產(chǎn)品供應(yīng)不上的時(shí)候,他需要提前多久通知采購方,你看,這就有個(gè)潛在的功能。
多久算提前?比方說是要提前一個(gè)月通知采購方,還是發(fā)現(xiàn)要缺貨的時(shí)候隨時(shí)跟采購方去報(bào)告。一般來說,這種業(yè)務(wù)他肯定是要有一個(gè)雙方的約定的。那么這就引申出一個(gè)新的功能,就是提前的設(shè)置,至于這個(gè)在哪里,現(xiàn)在不知道,可以把它歸結(jié)到一個(gè)第三方系統(tǒng)。
如果這種提前的設(shè)置功能簡(jiǎn)單點(diǎn)的,就是所有的供應(yīng)商,所有的商品在缺貨的情況下,都提前一個(gè)固定的日期,比方說提前一個(gè)星期通知采購方,或者是15天通知采購方,這是一種可能的方案,當(dāng)然比較偷懶。
另外一種可能更友好一些的方式是,分供應(yīng)商、分產(chǎn)品給采購方提示,因?yàn)橛行┊a(chǎn)品賣的快,有些產(chǎn)品賣的慢,如果都統(tǒng)一是15天,那賣的快的那些,你提前15天才通知采購方,中間可能有段時(shí)間真的就會(huì)斷貨,這肯定不是采購方希望的。
所以說,這個(gè)預(yù)約下架到底提前多久的這個(gè)設(shè)置,是一個(gè)問題,你該記錄下來,對(duì)吧,至少在現(xiàn)在這個(gè)文檔里頭你是看不到的,你是不知道的。這個(gè)時(shí)候,我們就要把自己思考的這些問題記錄下來,能夠跟需求調(diào)研人員去溝通的,那就跟他再確認(rèn)。其實(shí)這個(gè)時(shí)候,需求分析人員就相當(dāng)于是在做需求調(diào)研,而需求調(diào)研人員這個(gè)時(shí)候就成了客戶。

你看,這就分析出一些新的功能來了,還沒完呢,如果說供應(yīng)商沒有提前,會(huì)怎么樣?因?yàn)檫@是個(gè)功能啊,要求我提前申請(qǐng),對(duì)不對(duì)?但是從業(yè)務(wù)的閉環(huán)上來講,沒提前怎么辦?你看,這又會(huì)引申出一個(gè)新的問題,如果供應(yīng)商沒有向采購方提前申請(qǐng)預(yù)約下架的話,會(huì)有什么對(duì)應(yīng)的業(yè)務(wù)呢?
實(shí)際系統(tǒng)中,還真有對(duì)應(yīng)的功能,就是對(duì)供應(yīng)商考核里面有。如果你沒有在規(guī)定時(shí)間提前預(yù)約下架,導(dǎo)致采購方的貨跟不上,中間出現(xiàn)斷貨,那么會(huì)對(duì)這個(gè)供應(yīng)商進(jìn)行扣分,因?yàn)椴少彿綄?duì)供應(yīng)商有評(píng)分系統(tǒng),這個(gè)評(píng)分影響還比較多,會(huì)涉及到供應(yīng)商的一個(gè)等級(jí),還有供應(yīng)商是否續(xù)約,甚至?xí)绊懙缴唐返囊恍┎少弮r(jià)格。供應(yīng)商等級(jí)越高,采購的價(jià)格,給的就更合理一些,更高一些,如果供應(yīng)商等級(jí)比較低,采購方就把這個(gè)價(jià)格壓的比較低,意思就是你想要跟我做生意,那么你的級(jí)別不夠高的時(shí)候,我會(huì)把這個(gè)價(jià)格給你壓下去。對(duì)這個(gè)供應(yīng)商來講,就會(huì)降低它的利潤,所以你看,就這倆字“提前”,其實(shí)你能想到很多的東西。
再展開一下去想,這個(gè)提前的功能也還沒有完,因?yàn)槲沂翘崆叭ド暾?qǐng),那么就有一個(gè)“下架生效”的時(shí)間。假如是提前15天申請(qǐng),告訴采購方,這個(gè)東西需要下架,可能還能夠供應(yīng)15天,15天過后就沒貨了。這就意味著,已經(jīng)預(yù)約了這個(gè)商品15天過后就要下架,那誰來做這件事情了?這就應(yīng)該有一個(gè)定時(shí)任務(wù)的功能,也就是還會(huì)有另外的一個(gè)定時(shí)任務(wù)管理的系統(tǒng),這都是延伸出來的功能。
大家看一下,我們就讀了這一句話,就讀出來了這么多信息。未完待續(xù)
為了大家更好的交流架構(gòu)設(shè)計(jì)的思想和知識(shí),大家可以加sishuok,拉你進(jìn)架構(gòu)設(shè)計(jì)群,一起共同學(xué)習(xí),共同進(jìn)步。