所在位置:答疑 - 内容   
从字段列表谈"意念式"和"意淫式"需求
 

jeri 2019-6-6 9:55

在字段列表里定义这种格式,是不是把设计环节提前引入了?


UMLChina潘加宇

把自己设想的数据库设计往需求里一扔。这种问题很常见。我归纳为"意念式"和"意淫式"需求。

不放这样一个东西到需求里,会怎么样?

哎呀,不行啊,不写这些的话,

(1)如果外部系统输入的信息格式不对,目标系统照单全收,系统里的数据不就乱了吗?

(2)如果不这样提醒后面的设计人员,他水平太差不会设计数据库怎么办?

(1)属于"意念式"。

如果需要防止(1)发生,像念咒语一样扔一个这个也是无法生效的,需要有行动。

行动方案A:

要求外部系统保证信息格式合法,如果出现不合法的情况,枪毙外部系统相关的涉众。枪毙人数多了,合法的概率会大大提高。

行动方案A和目标系统没有关系,需求规约里不需要上面图片的内容。

行动方案B:

目标系统需要在这个用例中(注意这个前提)验证以保证信息格式合法,那么,就要在这个用例的用例规约里说清楚:在哪一步做的验证(步骤),验证的规则是什么(业务规则),同样不能念咒语。

(2)属于"意淫式"。

只要系统能满足用例规约里写的各种内容就可以,不需要去"意淫"设计人员会怎么做。

不管设计人员选择存储数据方案时使用文本文件、关系数据库还是非关系数据库,都不会影响系统的需求。

即使周围没有人会做这个系统,也不会影响系统的需求。系统的需求只和涉众利益有关。

一个水平很差的设计人员会因为没有掌握设计技能而搞砸很多东西,但这和这个用例甚至这个系统没有特定关系。

可以用《软件方法》中的"投币法"("团灭法"),在业务建模和需求工作流,让所有的分析设计人员冬眠,所有分析设计工具封存,谁想系统内部怎么构成谁遭雷劈。有这样的决心,才能得到高质量的需求。