可不是咋的!产量高的领域驱动设计作品评点01

27 阅读5分钟

我们来剖析《软件方法》强化自测题中的这道题:

图片

首先给出“投资少、见效快、产量高”的度量。计算有效字数/总字数,值最小为优胜。如果有多个选项的有效字数为0,总字数多者胜出。

(1)提升业务办理效率

这个可以,不算废话,算套话。什么叫提高效率,怎么度量,需要给出指标。

(2)完成账管业务办理

这个就有问题了。难道现在没有办法完成账管业务办理吗,否则银行怎么办业务,怎么活下来?

有时我指出这样的问题后,有的人会把目标改成这样:通过新一代养老金账户管理系统完成账管业务办理。有效信息依然是0。

就像去推销一款新手机:

问:你这手机好在哪里?

答:这款手机能发微信。

问:我现在的手机也能发微信呀!

答:不一样,以前是用老手机发微信,现在是用新手机发微信。

您别笑,不少DDD Fans觉得这个回答挺好。有时候这个回答会变成这样:目标是系统的市场占有率达到**%——这个回答看起来更加高大上,但有效信息依然是0。

市场占有率当然越高越好,许个愿的事情谁都会,但你的东西好在哪里,有什么理由能有市场占有率?

(3)降低经办人员技能要求

这句不算废话。

(4)满足监管要求

这个和“完成账管业务办理”类似。难道现在没有满足监管要求吗?现在也满足的,只不过可能付出的代价比较高。

①不全是废话,有效字数>0。

(1)是一个管理养老金账户的产品

合起来就是:新一代养老金账户管理系统是一个管理养老金账户的产品。

可不是咋的!

注意,此处还用到了领域驱动设计的“换词”创新技巧:把“系统”巧妙地换成了“产品”,这样给读者带来新鲜感。

可惜,这个词换错了。这个是“产品”吗?它似乎是专门某银行定制的一个系统,因为下面有“更好满足”、“自主可控”等字。

②的有效字数为0,总字数13,莫非这个是正确选项?

(1)实现精细化运营

这句不是废话,意思是银行的运营现状不够精细(度量指标需要给出),但是这一句和上面的“提升业务办理效率”冲突了。要精细,应该多几个环节,甚至让不同的人、不同的系统,不同的AI都做一遍,比对之后选择最佳结果。

在某个时间点,改进目标只能是一个。如果“精细化”是目标,“提高效率”就不能是。

这里经常有人会想不通,他这样说:领导(严格来说是排位最高的涉众)要的是平衡发展,不能走极端,既要讲效率,也要讲质量,还要讲**。

这有什么奇怪吗?大家都是这样啊!但是,在某个时间点,改进目标只能是一个。领导要平衡发展,这很正常,那么,现在这个时间点,哪一个指标耽误了领导想看到的“平衡发展”呢?是效率,还是质量?

同样,“精细化运营”也和“降低经办人员技能要求”冲突。要“精细化”,每个岗位的人员应该优中选优,怎么能降低要求?

还有人会想,简单啊,我做出一个巨牛×的系统,把ABCD指标都改进了不行吗?既然这样,不如再大胆一些:叮,神豪系统上线,宿主每日签到完毕即获得100亿美元。还做什么系统,竞争对手有什么动向,拿钱砸。

当前时间点,领导最在意指标A,这是不得不做到的。如果做出来的系统够牛,BCD也顺便改进了,领导也会高兴(吧?其实不一定),但不能以损害A为代价。

你想一想,如果一个人连当前时间点领导最在意什么指标都没有意愿也没有能力搞清楚,他“做出一个巨牛×的系统,把ABCD指标都改进了”的可能性有多大?

不过,领域驱动设计是革命性的创造,是划时代的洞见,有可能做到“彻底解决”:

图片

邦邦邦邦列出ABCD一大堆指标,也是有好处的。这个好处就是:为“灵活应变”留下了空间。

A做不到,可以做B嘛,B做不到,可以做C嘛,至少混个没有功劳也有苦劳。如果直接讲清楚“当前时间点,领导最在意指标A,这是不得不做到的”,那多被动啊!

(2)高效完成账管业务办理

这里同样用了领域驱动设计的“换词”技巧。把“提高效率”换成“高效”,然后把它和“完成账管业务办理”相加。

图片

高效完成账管业务办理 = 提升业务办理效率 + 完成账管业务办理

妙!

③中的“精细化”3个字有效,有效字数>0,不如②,这个选项被排除。

(1)不同于行业内其他账管系统

可不是咋的!相同还得了?

有效字数为0,但总字数12,拼不过②,这个选项被排除。

(1)更好满足我行业务需求

可不是咋的! 

注意,此处在“需求”前面加了“业务”二字,这用上了领域驱动设计的“砌词”技巧。如果愿意,还可以继续扩展成“业务用户领域需求”甚至“业务用户领域功能逻辑架构技术设计需求”。

(2)实施和维护复杂度低

可不是咋的! 

(3)自主可控能力强

可不是咋的!

不是更好满足,你做它干啥?不是……,你做它干啥?这3条和要做的系统有特定关系吗?

⑤的有效字数为0,总字数31。

答案

⑤是正确选项。

你,学会了吗?