欢迎来到天天文库
浏览记录
ID:15248855
大小:45.50 KB
页数:17页
时间:2018-08-02
《连载二-面向saas的工作流管理系统设计与实现_it综合_基础信息化_3223》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、连载二:面向SaaS的工作流管理系统设计与实现_IT综合_基础信息化 第2章面向SaaS的工作流参考模型 2.1SaaS成熟度模型 在SaaS架构中,可伸缩性、多租户(multitenant)和通过配置进行定制是对软件系统的基本要求。根据这三个要求的支持程度不同,提出了SaaS应用的四级成熟度模型。下面分别介绍这四级成熟度模型: 第1级(定制):如图2.1所示,在第1级成熟度模型中,每个租户(使用SaaS模式软件系统的组织)都有其特定版本的软件应用系统,这些软件应用系统的实例分别运行在软件应用提供商提供的运行平台上。此时,所有租户只是共享了软件系统
2、的运行平台,仍然分别使用独立的软件应用系统。传统的客户端.服务端架构、Web应用等都可以直接归类到SaaS应用的第一级成熟度模型。因此,传统的工作流管理系统也满足第一级成熟度模型的要求。 第2级(可配置):如图2.2所示,在第2级成熟度模型中,每个租户都有特定的软件应用系统的实例分别运行在软件应用提供商提供的运行平台上。但是所有租户使用相同的软件系统,也就是说所有租户使用相同的程序代码,根据租户需求不同进行单独配置即可。应用系统要满足第2级成熟度模型,需要对架构设计进行一定的重新设计,使之能够共享程序代码。 第3级(可配置、多租户)如图2.3所示,在第
3、3级成熟度模型中,软件应用提供商提供的运行平台上只运行软件应用系统的一份实例即可满足所有租户的需求。在这种情况下,租户共享了软件系统、运行实例和软件运行平台。降低了运行实例花费的开销,增加了软件运行平台的利用率,也节约了用户使用软件的成本。第3级成熟度模型对软件系统架构提出了更高的要求——软件系统要具备支持多租户的能力。 第4级(可伸缩、可配置、多租户):如图2.4所示,在第4级成熟度模型中,软件应用提供商在第3级成熟度模型支持多租户的基础上,引入了负载均衡策略。租户的请求可以动态的派发到不同的软件应用实例来完成。通过这一策略,不需要对于软件系统本身进行
4、修改,就可以动态的通过增加或者减少软件应用实例的数量来应对用户数目的变化。满足第4级成熟度模型的软件系统,在设计架构时需要考虑到可伸缩性的问题,重点引入负载均衡控制模块,使得能够动态选择执行的软件应用实例,来提升系统对于大规模用户数量的支持。 通过分析SaaS的成熟度模型可知,传统的工作流参考模型,只能满足SaaS的第一级成熟度模型,很难满足SaaS应用模式的进一步要求。为此,在SaaS成熟度模型和工作流参考模型的基础上,学术界提出了面向SaaS的工作流参考模型。 连载一:面向SaaS的工作流管理系统设计与实现 http://articles.e-w
5、orks.net.cn/It_overview/Article78434.htm 2.2面向SaaS的工作流参考模型 2.2.1面向SaaS第1级成熟度的工作流参考模型 根据SaaS成熟度模型第1级的描述,软件应用提供商直接为每个租户在不同的服务器上部署不同的工作流管理系统,就完成了面向SaaS的工作流管理系统的部署。如图2.5所示。 在这种使用场景中,租户可以是任何需要使用工作流管理系统来开发、运行企业业务流程的企业或者组织。图2.5描述了两个租户使用工作流管理系统的情况,这两个租户企业通过网络分别在其独立的工作流管理系统中部署了流程,同时与运行
6、中的流程进行任务提交等交互操作。在每个作为工作流管理系统租户的企业中,有两类参与到工作流管理系统使用的角色,分别是管理员和最终用户。管理员负责对运行中的工作流进行管理。最终用户直接与运行中的流程实例派生出的工作流任务进行交互。 软件服务商针对每个租户企业分别开发部署符合其需求的工作流管理系统,并将这些系统分别部署到不同的服务器上,供租户企业使用。如图2.5所示。 针对上述应用场景,经过分析可以抽象出面向SaaS第1级成熟度模型的工作流参考模型。如图2.6,参考模型包括四个逻辑层次和六个主要的逻辑模块: 应用服务层:该层提供了底层计算环境,主要包括数据
7、服务和应用服务等组成部分。数据服务提供了大规模数据的存储能力,应用服务提供了通过互联网访问工作流管理系统的能力。应用服务层是构成整个面向SaaS的工作流管理系统的基础。 控制层:该层负责执行和监控企业业务流程。工作流在执行过程中被称作流程实例,由相互依赖的任务组成。最终用户可以通过相关的操作来触发任务状态的更改。控制层可以处理任务终止后的路由调度请求,采用相关的策略来进行流程实例的调度执行。通过划分控制层和任务管理层,分离了工作流路由调度和任务处理的逻辑。 任务管理层:任务是流程的组成部分,直接委派给最终用户进行处理。当任务的前趋任务完成时,会生成新的
8、任务同时将新任务分发给相应的最终用户。最终用户开始处理任务时,与任
此文档下载收益归作者所有