一切都是任务

来源:互联网 发布:sqlserver windows nt 编辑:程序博客网 时间:2024/04/29 23:15

 

21世纪,企业需要什样的信息系统?》之九

一切都是任务

2009.7(道仑软件)

一切都是任务。

——道仑软件

软件技术的发展,经历了从汇编语言,到面向过程,到现在的面向对象和面向构件的开发。很多人认为面向构件开发是解决软件问题的“银弹”,但在业务管理软件领域,效果并不理想。我认为原因有二:

1.   构件是软件设计人员的产物,属于技术层面的东西,不是一个业务对象,业务人员不能理解和直接使用它们。开发一个软件系统时,在业务需求与软件实现(构件)之间存在着一个很大的鸿沟。软件系统开发过程完全是软件开发人员自己玩的一种游戏,软件的最终用户既看不懂,也参与不了。系统建成后,如果满足不了业务需求,用户也不能进行改进。

2.   建模对象层次不够。在面向对象设计中,我们只看到了现实世界中具体的静态的对象诸如房子、汽车等并对它们建模,而没有看到抽象的动态的对象诸如活动、关系等。但在企业管理中,这些抽象对象恰恰是我们管理的中心,因为企业就是通过管理这些对象来创造利润的。连企业管理最需要的对象在软件系统中都不存在,目前的管理软件满足不了需求也就不足为奇了。

要解决以上问题,我们必须寻找新的更贴近用户和业务的建模对象。它们在哪里呢?

我们知道,人类的各种行为都由一系列的活动组成。比如,穿衣服可以分解为拿衣服、把衣服套在身上、扣扣子等动作。制作一张桌子可以分解为制作一个桌面、制作四个桌腿、组装成桌子等活动。在企业中,一个定单的处理可以分解为接收定单、作生产计划、采购原材料、组织生产、入库、出货、收款等活动。

那么,这些活动有什么共同点吗?或者说,我们可以从这些活动抽象出哪些共同的属性?

首先,所有活动都带有一定的目的和要求,都要有人负责,并有时间的限制,因此带有相应的业务信息和控制信息。

其次,活动还可以分解为更小的活动,或组成更大的活动

最后,活动与活动之间有一定的关系。

这就是活动的全部属性。

我们要做的,就是如何为各种活动及它们之间的关系建模,然后编写能理解和运行该模型的软件系统。

我们把这种开发方法称之为面向业务开发(Business-Oriented DevelopmentBOD)。

如果把BOD中的业务活动包装成任务,那么任务就是有目的的业务活动,是组成业务逻辑的基本单元。所以,面向业务开发也可以称为面向任务开发(TOD)。