以工作流为核心的企业开发平台架构

以工作流为核心的企业开发平台架构

       随着计算机技术的飞速发展,随着先进制造技术在企业中应用的推广,从并行工程到敏捷制造,从经营过程管理到经营过程重组,越来越显示出以面向过程的业务处理的优势和重要性。传统的面向功能的事务处理已经不能满足当今企业发展的需求,单独的面向功能的事务处理软件技术也将随着先进制造技术的应用被一种面向过程的业务处理软件所代替。

       在这一转变的过程中,工作流技术的出现,无论是从理念上还是在技术支持上,为其转变提供了有利的条件。工作流是致力于企业业务过程管理、业务过程重组和业务过程自动化的先进技术。

       工作流的理念是协同和集中,协同是针对人来说的,强调了处于不同的部门,不同的工作组中的人,来协同的完成某一向工作,最终达到企业的经营目标。协同的理念既体现了协作又体现了任务和职责的分离。集中主要是针对业务过程而言,通过业务过程的集中管理和监控,达到对企业的经营活动的控制,从而提升了企业的管理水平。

       “平台架构”一般分为两种,一种是基于技术层次的基础架构平台,一类是基于业务模型的应用平台。“基于业务”的应用平台同样可以有两种实现方法。比如可以从管理业务出发,深入分析管理应用需求,提出管理模型,再建立技术实现的平台;还有一种做法是把管理应用的共同技术特征抽象出来,基于组件式的开发技术,建立平台。

       作为平台型软件产品,必须具备非常灵活的产品架构,在保证主体框架不变的前提下,让用户可以方便地进行改动,并通过一系列的技术简化手段,使用户在二次开发或配置时,达到周期短、成本低。 平台还要求面向框架、业务对象重用、与技术无关、与数据无关等先进设计与开发技术。

       我们提出的以工作流为核心的企业开发平台架构就是基于业务模型的应用平台,是利用组建式的开发技术建立的平台。但是我们必须正视的一个问题是基于目前公司的技术,如果真正的达到平台的技术无关和数据无关,还有很长的一段路要走。目前我们的平台产品首先是基于别的技术开发的。如java,.net等。但是这并不能扼杀我们向这个方向发展的目标。但是这样的平台究竟可以带给我们什么好处呢?作为平台级的软件,他的作用主要有两个,一个是对外,作为一个成熟的产品推出去,让别的软件公司或者企业的应用软件架构在你的平台上,另一个是对内,作为一个软件公司,如果有一个平台级软件架构,公司的所有(或是绝大部分)软件就可以架构在这个平台上,可以想象的出,那样代给我们的好处不只是那么一点点。

       作为一个面向应用型的软件公司这一点显得就更加重要。我们之所以提出的以工作流为核心的企业开发平台架构,一是因为我们是一个面向应用软件的公司,应用软件发展的方向将从面向功能的事务处理逐步过渡到面向过程的业务处理上来,而工作流技术恰恰显示了先进的理念和强大的功能。二是因为公司内部的软件重用问题,应该得到重视,不同的部门,不同的时刻都在开发类似的一些项目,不仅浪费了时间,况且软件的层次总是局限在那个范围内,开发人员没有更多的时间来考虑软件层次的提高,而陷于一直重复的修改。三是软件的发展上,怎样整合先进的软件设计技术和开发模式,怎样使公司的软件朝着高水准高技术含量发展,希望通过这个平台的架构给公司的软件发展带来新的方向。

       以工作流为核心的企业开发平台架构主要包括以下几个部分:工作流、机构建模工具,邮件服务、消息服务、身份验证、报表服务、标准应用模块。下面来简述每一部分的功能:

       工作流是企业业务流程管理的软件,也是此平台的核心,构成平台的主体,也是应用软件处理的核心。主要包括可视化建模工具,工作流引擎,应用程序开发包,以及过程的监控工具。

       机构建模工具致力于运用绝对灵活的建模方法,使企业能够根据特定的要求快速建立机构模型来适应企业的需要。如部门建立、工作组建立、角色建立、职位建立、权限分配等。

       邮件服务将是企业通讯的得力工具。除了企业内部不同的部门,不同的人通讯外,要支持smtp,pop3协议,可以向外部收发邮件。并且和我们的工作流整合到一起,完成任务的接收。

       消息服务主要完成企业内部的及时通讯。通过和身份验证的整合,能够动态感知企业的人员在线情况,进行通讯或者文件传输,视频通讯等。也同样的和工作流整合起来,如当有新的任务到达时,工作流引擎会通知消息服务,消息服务通知此人,进行相应的任务处理。

       身份验证管理已经被认为是企业里最引人注目的焦点,全方位身份验证管理的价值也是企业所追寻的。怎样最高效的使适当的用户能访问适当的资源和信息,也是我们研究的问题之一。

       报表服务,提供企业所需的报表的解决方案。

       标准应用模块是指构建在工作流平台上的具体的应用模块,如oa,erp,crm等系统中的一些通用的功能模块。

你可能感兴趣的:(技术交流)