什么是需求建模

 产品经理获取用户的需求后,需要对需求建立模型。将一个抽象的,大概的业务或者产品需求,一步步抽丝剥茧,使之具体化,用一整套文档来描述这个产品需求因何而来,需求如何实现,系统如何响应用户的请求

 

 

什么是需求模型

在一间不大的办公室里,小白和大牛开始了第一课。大牛在黑板上写下了第一课的学习内容。

第一课的内容

什么是需求模型

为什么要建立需求模型

大牛对小白说道:“黑板上写的是这节课要讲的内容要点,第一个要点是弄明白什么是需求建模;第二个要点是为什么要对需求建立模型”。

小白对大牛说:“牛老师,后面要讲的内容能不能浅显一点,讲的内容理论性太强的话,我容易犯困,也听不进去”。

大牛笑道:“在制作教案时,我也充分考虑到了这一点,教案内容都是从案例入手,由浅入深,即使没有任何软件基础的人也能听懂”。

大牛很快在黑板上写了一个案例

某一快餐连锁店,一直为顾客提供快餐服务,由于价格实惠,服务优良,到店吃饭的顾客很多,顾客需要排很长的队才能点餐和配餐,严重影响了顾客体验。快餐老板希望能够实现顾客电话预订餐,顾客提前通过电话预定餐,并预约到店时间,这样快餐店可以提前做准备,缩短了顾客在餐厅的等候时间。

如果该店老板请你做在线电话点餐的技术顾问,你能否帮他分析一下在线电话点餐需要提供哪些功能?

大牛在黑板上写完案例内容对小白说:“案例中的快餐店老板希望做个电话在线订餐系统,顾客可以提前通过电话订餐,并约定到店就餐的时间,你能不能帮这个快餐店的老板分析一下这个电话在线订餐系统需要提供哪些功能?”。

小白认真思考了一会儿,拿起粉笔在黑板的案例内容下面写下了她对电话在线订餐系统的分析。

电话在线订餐系统需要提供如下功能:

 

(1)接顾客的电话

(2)记下顾客预订的食品和到店时间

然后对大牛说:“我是这么分析的,既然是电话订餐,那一定要提供接电话的功能了,另外还要记录顾客的订餐内容和取餐时间,就想到这么多了”。

大牛说:“你提到的接顾客的电话和记录顾客预订的食品和到店时间,都是系统需要提供的功能。我们还可以再进一步考虑,电话订餐由于描述和理解问题,可能会发生一些纠纷,如果提供电话录音功能,当出现纠纷时,调出录音就有据可寻了;另外,电话订餐的都是快餐店的新老客户,系统还应该提供客户管理功能,当快餐店举办优惠活动或对老客户回馈时,提供客户资料;还有其它一些功能,例如:未接电话的提醒、客户定餐统计等,我就不一一细说了”。

随后,大牛又在黑板上补充了电话在线订餐系统的功能。

电话在线订餐系统需要提供如下功能:

(1)接顾客的电话

(2)记下顾客预订的食品和到店时间

(3)电话录音管理

(4)订餐客户管理

(5)未接电话提醒

(6)客户定餐统计

大牛用粉笔在黑板上把补充完成的功能列表圈了一下。说道:“小白,刚才咱们共同分析了电话在线订餐系统,并依据分析的结果列出了系统需要提供的功能列表,实际上刚才的分析过程就是建模过程,建模的成果物就是黑板上的功能列表”。

小白想了下说:“我明白了,快餐店老板对他需要的电话订餐系统提出了要求(需求),但这个要求很模糊,也就是大概需要这么个东西,需求建模就是帮助他把需求确定下来,把具体的功能要求列举出来。”

大牛对着小白伸了一下大拇指,说:“说的对啊,需求建模就是对模糊的需求澄清的过程,黑板上的功能列表就是在快餐店老板提出需求的基础上,咱们进一步分析和完善得出的”。

小白说:“这么说,功能列表就是电话在线订餐系统的需求模型了?在我的印象中,模型应该是一些图形之类的,我也听说过UML建模,我们列的功能列表只是一些简单的文字,也可以称为模型?”。

大牛笑了笑:“只要是能够反映系统需求的事物或表述形式都可以称为需求模型,黑板上的功能列表虽然是文字形式,但它能够反映出电话订餐系统的实际功能需求,因此也是模型,是文字模型,如果我们把文字模型通过绘图工具转换成图形,就是图形模型了”。

小白又问道:“我还有个问题,对电话订餐系统的需求建模这样就完成了吗?”

大牛说:“这仅是需求模型的雏形,需求模型需要在和用户沟通的过程中不断地补充和完善,建立需求模型目的就是能够同用户进行很好地沟通,用户可以通过模型感知或认识到系统,并进一步提出问题和改进需求,避免出现实际研发出的系统和用户最初的期望相背离的问题”。

大牛接着说:“另外,需求模型除了功能模型外,还需要建立一些与系统业务、活动相关的模型,从而反映出系统的整体需求框架,这些模型我们在后面都会用到”。

说完,大牛走到黑板前,把先前内容擦掉,对需求模型进行了重新描述。

什么是需求模型

需求模型就是采用文字、图形化、表格化、公式化的方式,按照系统需求情况对系统进行可视化描述,提供一种详细说明系统的结构或行为的方法。

大牛问小白:“现在明白什么是需求模型了吧?说说你对需求模型的理解”

小白回答道:“按照我的理解,需求模型就是一段文字或一些图形,这些文字或图形对系统各方面进行了描述,人们可以通过这些文字或图形来了解系统的需求和构成”。

大牛伸了大拇指说:“理解的很好,需求模型就是需求分析后产生的成果物,成果物由一系列需求文档组成,包括调研资料、会议资料、需求规格说明书等文档”。

为什么要对建立需求模型

大牛又对小白说道:“记得你说过,建立需求模型用处不大,现在还这么认为吗?”

小白嘿嘿笑了笑,说:“现在看来,需求建模真的很重要。没有需求模型,系统需求就无法落实到纸面上,与用户产生沟通障碍,一旦完成后的系统不能满足用户的要求,可能就会出现大麻烦。”

大牛接连伸了几个大拇指,对小白的话语点赞!

大牛:“再就是需求模型可以帮助系统分析员更好地理解系统,系统分析员可以建立多个模型,从不同层面描述系统;还有就是建模过程就是分析系统的过程,没有建模过程也就没有系统分析了,这是很可怕的事情。”

最后,大牛在黑板上对建模的意义做了一个小结:

建模小结

在建模过程中了解信息

通过抽象降低复杂性

有助于回忆所有的细节

有助于和其他项目开发成员进行交流

有助于和各种用户以及系统相关者进行交流

为以后的系统维护和升级提供了文档

小白也认为自己对需求建模有了更深的了解。但她还有一个疑惑,刚才为电话在线订餐系统建立的是文字模型,图形模型该如何建立呢?

  • 11
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值