需求分析方法之——逐字逐句审读法(上)(C系架构设计法)

需求分析的一个重要方法——逐字逐句审读法。

现在给大家讲的这些方法,并不是教科书式的方法,也不是特别宏大的方法论。这些方法,都是咱们多年架构设计实战经验的总结,证明他是行之有效的,把这些方法总结出来讲给大家。

逐字逐句审读法,光看名字就知道,就是拿着需求文档,逐字逐句去读,那么怎么读?要审读,就是带着思考的去审视它,去阅读它这个方法的主要目的:就是要发现功能点和业务流程。

一份需求文档,真正要读,也不是读一遍就结束的,可能反反复复要读很多遍,那么这个中间的过程,咱们也会采用迭代的思路。

我们做需求分析也是这样,不是说一步到位,一下就把所有的功能点,业务流程理解的特别透彻,也是采用迭代的方式,首先去发现这里面有哪些功能点,还有相应的业务流程,这就可以做一个迭代周期。

当我发现这些功能点和业务流程过后,咱们还会有具体的方法来帮助大家去继续明确这些业务功能点的业务功能;还有,去分析每一个业务流程,咱们也会有相应的方法。

所以,逐字逐句审读法,最主要的目的,就是来发现功能点和业务流程。就好比说现在,我只知道我要做一个系统,这个系统里头有什么功能呢?对不起,不知道。这个时候我拿到一份需求文档,是不是要来分析,对吧。这里来做个简单的示范。

我找了一个简单的功能,叫做供应商产品下架的功能,这都是实际的需求文档里摘出来的,我一个字都没改,原封不动的搬过来的,如下:

供应商产品下架:

1. 供应商因停产、缺货等其他原因无法供应产品时,通过预约下架 提前申请。

2. 采购人员判断是否下架,如不同意则拒绝下架;如同意,在下架产品时间开始时,采购人员则解除与该供应商的供应关系,供应商产品下架生效。

假想我们现在做的业务系统就只有这么大,只需要完成这么点功能,那我们怎么来使用逐字逐句审读法呢?一起来练一下。

首先 “供应商因停产缺货等其他原因无法供应产品”,大家看到有供应商,这就说明,最起码,这里面有两块,一大块是供应商的功能,一大块是采购方的功能,对吧?也就是说,你看到这句话,就知道应该有两方。

继续,“因停产缺货或其他原因无法供应产品“,这就意味着,整个功能的一个场景,就说是出现这样的情况的时候,这句话没什么可讲的。

“通过预约下架提前申请”,大家看清楚,这里其实就有功能了,“预约下架”,大家看看是不是一个功能,肯定是的,对吧。那么谁来预约?在哪儿预约呢?这个功能是做在供应商这边,还是采购方这边呢?

我们来深入思考一下,供应商在这个功能里头,他主要做什么?他是不是就是来填写一些下架的申请,就说这个产品,因为某种原因,不能够正常的供应给采购方了,因此,我预约下架。

这个“下架”的功能,就会涉及到两方,不能你说下架就下架,对吧。你得给采购方来申请一下吧,那就要把预约的这些信息提供给采购方,由采购方来审核。那么,有没有比较复杂的审核流程呢,咱们先有这么个疑问,先存疑,往后去看,因为后面可能会讲到你想的这些问题。

咱们接着来,这句话没完呢,预约下架是个功能,大家看后面还有个叫“提前申请”,你看“提前”俩字,申请是功能,关键啥叫提前?怎么提前?多久算提前?问题就来了,如果供应商他预先知道他的某些产品供应不上的时候,他需要提前多久通知采购方,你看,这就有个潜在的功能。

多久算提前?比方说是要提前一个月通知采购方,还是发现要缺货的时候随时跟采购方去报告。一般来说,这种业务他肯定是要有一个双方的约定的。那么这就引申出一个新的功能,就是提前的设置,至于这个在哪里,现在不知道,可以把它归结到一个第三方系统。

如果这种提前的设置功能简单点的,就是所有的供应商,所有的商品在缺货的情况下,都提前一个固定的日期,比方说提前一个星期通知采购方,或者是15天通知采购方,这是一种可能的方案,当然比较偷懒。

另外一种可能更友好一些的方式是,分供应商、分产品给采购方提示,因为有些产品卖的快,有些产品卖的慢,如果都统一是15天,那卖的快的那些,你提前15天才通知采购方,中间可能有段时间真的就会断货,这肯定不是采购方希望的。

所以说,这个预约下架到底提前多久的这个设置,是一个问题,你该记录下来,对吧,至少在现在这个文档里头你是看不到的,你是不知道的。这个时候,我们就要把自己思考的这些问题记录下来,能够跟需求调研人员去沟通的,那就跟他再确认。其实这个时候,需求分析人员就相当于是在做需求调研,而需求调研人员这个时候就成了客户。

你看,这就分析出一些新的功能来了,还没完呢,如果说供应商没有提前,会怎么样?因为这是个功能啊,要求我提前申请,对不对?但是从业务的闭环上来讲,没提前怎么办?你看,这又会引申出一个新的问题,如果供应商没有向采购方提前申请预约下架的话,会有什么对应的业务呢?

实际系统中,还真有对应的功能,就是对供应商考核里面有。如果你没有在规定时间提前预约下架,导致采购方的货跟不上,中间出现断货,那么会对这个供应商进行扣分,因为采购方对供应商有评分系统,这个评分影响还比较多,会涉及到供应商的一个等级,还有供应商是否续约,甚至会影响到商品的一些采购价格。供应商等级越高,采购的价格,给的就更合理一些,更高一些,如果供应商等级比较低,采购方就把这个价格压的比较低,意思就是你想要跟我做生意,那么你的级别不够高的时候,我会把这个价格给你压下去。对这个供应商来讲,就会降低它的利润,所以你看,就这俩字“提前”,其实你能想到很多的东西。

再展开一下去想,这个提前的功能也还没有完,因为我是提前去申请,那么就有一个“下架生效”的时间。假如是提前15天申请,告诉采购方,这个东西需要下架,可能还能够供应15天,15天过后就没货了。这就意味着,已经预约了这个商品15天过后就要下架,那谁来做这件事情了?这就应该有一个定时任务的功能,也就是还会有另外的一个定时任务管理的系统,这都是延伸出来的功能。

大家看一下,我们就读了这一句话,就读出来了这么多信息。未完待续

为了大家更好的交流架构设计的思想和知识,大家可以加sishuok,拉你进架构设计群,一起共同学习,共同进步。

 

posted @ 2023-03-13 21:20  云飞龙行2021  阅读(18)  评论(0编辑  收藏  举报