用例分析建模

用例分析是一种简单方便的建模方法,基本过程是根据已有的用例进行分析,找到领域的模型类、属性以及模型之间的关联关系。因此,通过这种方式建模主要输入为用例。完整的用例编写需要耗费大量的时间,而且需要专业的培训,在现实的工作中我还从来没见过哪个项目有完整的用例,常见的就是需要的PRD,之前讨论了使用实例化需求来对PRD进行分析,得到业务规则,我们可以使用业务规则来代替用例。

方法步骤

找名词:我们可以简单把用例中的名词都列出来,这些名词会作为模型类或者属性的候选者

找动词:动词往往可以发现模型之间的关联关系

确定模型类与属性:从第一步中确定模型类与属性,主要在于判断哪些名词应该作为类,哪些作为属性;一般如果是单值名词(或者可以通过基本数据类型表示的)往往可以作为属性,或者一个名词只关联了一个概念的

确定模型的关联关系:通过动词来分析出模型之间的关联关系

整个步骤很简单,只需要找到用例中的名词、动词,然后集合场景分析即可。在内网上也看到过通过用例的主谓宾定状结构来分析的,方法会更精细一些。不过从分析过程来看,两种方式效果差不多,通过主谓宾定状来分析步骤会麻烦一些。

另外由于用例的不但完善也会推进模型的不断的完善,也可以通过额外的用例来对已有的模型进行验证与修正。

工作中的一个例子

最近在工作中遇到一个需求,需要调整收银台中支付宝支付方式的置灰规则,通过实例化需求分解之后业务规则如下:

当用户支付金额大于10w时,而且不在白名单内,将支付宝置灰;

当用户支付金额大于10w时,在白名单内,将支付宝不置灰; 

当用户支付金额大于5w小于10w,不在人群内,将支付宝不置灰; 

当用户支付金额大于5w小于10w,在人群内,不在白名单内,将支付宝置灰; 

当用户支付金额大于5w小于10w,在人群内,在白名单内,将支付宝不置灰; 

当用户支付金额小于5w,将支付宝不置灰; 

1. 找名词:用户、支付金额、金额下限(大于5w)、金额下限(小于10w)、人群(白名单也是一种人群)、支付工具(支付宝)

2. 找动词:置灰、属于(在人群内)

3. 模型与属性:

    模型:用户、支付工具、人群、置灰规则、咨询行为; 其中咨询行为是基于已有模型得来的(也可以参考业界已有模型),置灰规则是上面用例中的隐含主语

   属性:金额上限、金额下限、支付金额

4. 确定关系:置灰说明规则是与支付方式关联;属于说明用户与人群有关联

最后得到的模型如下

上面得到的是问题域模型,在真正系统实现的是时候可以根据需要对模型进行适当的调整,例如将人群作为用户的属性进行表示等。

你可能感兴趣的:(用例分析建模)