与DDD领域专家共事

在2016年年初举行的领域驱动设计欧洲大会上,Cyrille Martraire在演讲中分享了他在DDD驱动的环境中与领域专家共事的经验。他指出,在领域驱动设计中,与领域专家对话及所使用的语言是关键,这通常会因为所说的语言不同而出现困难。

Martraire是“巴黎软件工艺社区(Paris Software Craftsmanship Community)”的创始人,同时也是arolla的联合创始人。他指出,要想与领域专家成功地对话,首先需要自学一些领域知识。做好功课,提前准备一些知识,例如读书或在互联网上查找信息。

在Martraire看来,展示一些领域知识是一种和专家建立信任及改善沟通的方式。以下是三种简单的方式:

显得你真的很好奇,并展示你的知识; 提出更好的问题,并随着对话进行改进它们; 挑战,但要恭敬。
Martraire指出密切注意词汇避免转换或其他曲解的重要性。他特别提到,积极聆听非常困难,所以他创建了一种他称之为Word Safari的技术,从中他可以标记出所有出自领域专家之口的新词。然后,他就可以检查下它们是新概念还是同义词。他强调,这不仅仅是一个简单的技巧——注意DDD中使用的语言至关重要。

Martraire发现,“引导对话(navigating the conversation)”是一项实用的技术。你可以将对话向上引导,引向一个更抽象的层次,总结并发现意图。这里的关键问题是“为什么”,通常要问多次。你还可以将对话向下引导,引向更具体的细节,这时,示例成了发现误解的一个重要手段。使用示例的一种方式是使用行为驱动开发(BDD)和专家一起描述具体的行为示例。第三种引导对话的方法是偏离对话主线,拓宽领域。有时候,这可以揭示出根本就没讨论到的环节。

让领域专家清楚地认识到,与你对话很安全,你没有计划窃取他们的工作,Martraire认为这是一条特别重要的原则。这样做的一个结果是你什么东西都要求验证;最终,你和领域专家就领域达成共识。

这一切看上去很美好,也很简单,但根据Martraire的经验,有时候很难找到一位优秀的领域专家。他指出:

最差的领域专家是那些专业知识来自错综复杂的现有系统的专家。

同时,他还指出,他的经验可能有点片面,因为他通常是根据DDD潜力以及相关人员的整体心态选择项目。

本文转自d1net(转载)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值