转载

将领域带回软件开发

如果你理解如今的商业压力,将会发现商业方面会把IT看成令他们止步不前的障碍。从80年代开始,商业就已经在讨论敏捷了,而IT却是在2000年前期才开始去实现敏捷, David West 在近期阿姆斯特丹 DDD欧洲大会 的演讲中说。

当《 面向对象思维 》的作者开始在一家银行于60年代初从事IT工作时,他是第一个非银行职员。因此,他接受了银行的强制性培训,每个季度30个小时。他后来成了一个编写代码的领域专家。这意味着他的工作是由领域驱动的,向领域作出响应,这也是他当时的职业状态。

随着软件工程方面高等教育的发展,领域以及用户的所有关注点已经与编程的关注点分离开了,这导致商业越来越多地把IT视为限制而非战略优势了。

在这些年间,人们尝试去调整IT和商业之间的关系;面向对象被用来创建公共词汇表就是这样的一个例子。当领域驱动设计出现时,它还承认了这样一个事实,就是我们所追求的专用机制是错误的;我们需要理解所从事的领域才能构建出有用的系统。

不幸的是,没有一种尝试能取得持久的效果。要寻找一种前进的路,我们需要一些先决条件,West说。首先,我们需要更好地理解机制及其运转方式。其次,我们必须把关注焦点从机器上转移到领域上。他还说,我们在计算机科学和软件工程中存在的大多数问题本质上并不是我们要去解决的问题,但我们尝试解决这些问题时使用的却是计算机的做法。

West强调说,即使你们全是大师级程序员,发挥的作用也很有限。好的设计和优秀的软件来自于交付团队,来自于具备多种技能的人才,来自于具备 T形 或Pi形技能的人才,他们不仅是一个或两个领域的专家,而且还具备广泛的知识结构,能够与其他领域的专家协作。West特别强调的其中一个领域是生物学,他从中找到许多用于解决问题的 隐喻 。

按West的说法,我们最早需要做的是开始阅读,主要是我们所从事的领域的相关资料。如果你正从事银行业,通常就需要阅读银行以及商业方面的资料,特别是与你所从事的领域密切相关的主题,对于银行业来说,可能就是销售和管理方面。West还建议说,阅读商业正在如何进行调整以适应变革的相关资料。然而,他也提到了阅读一些感兴趣的、与工作无关的书籍的重要性。

查看英文原文: Bringing the Domain Back to Software Development

原文  http://www.infoq.com/cn/news/2017/02/domains-software-development
正文到此结束
Loading...