敏捷集团-业务流程平台
项目背景
敏捷集团创立于1993年,1998年正式进入民生住宅开发领域,历经20余年的稳健发展,现已成为一家涵盖民生地产、 建筑工程、生活服务、城市更新、酒店及商业运营、文旅开发、优质教育等多元化业务的全国知名综合性企业集团。
敏捷集团信息化建设历程投入较早,内部上了OA,建筑,物业,营销,人力,合同、财务等模块的多套ERP, 随着业务系统的不断建设,越来越多的系统的信息孤岛形成了,这对集团的业务扩张提出了新的挑战。 因此,BPM承担了内部业务流程与新业务扩展的使命,并且在2016年投入后,为集团带来更强的业务整合与运作效率上的提升。
解决方案
平台的整合体架构
统一门户/移动门户
系统异构集成
Restful WebService
NC系统调用BPM平台的流程服务时,使用了Rest WebService接口,可以采用Http JSON的数据交互方式。
WebService
BPM平台调用NC系统时,使用WebService方式调用。
BPM平台同步AD组织架构时,使用LDAP协议。
单点登录
SSO是一种统一认证和授权机制,指访问同一服务器不同应用中的受保护资源的同一用户,只需要登录一次,即通过一个应用中的安全验证后,再访问其他应用中的受保护资源时,不再需要重新登录验证。
单点登录原理
当用户第一次访问应用系统统一门户的时候,因为还没有登录,会被引导到认证系统中进行登录; 根据用户提供的登录信息,认证系统进行身份效验,如果通过效验,应该返回给用户一个认证的凭据--ticket; 用户再访问别的应用如BPM系统时候,就会将这个ticket带上,作为自己认证的凭据, 应用系统接受到请求之后会把ticket送到认证系统进行效验,检查ticket的合法性(4,5)。 如果通过效验,用户就可以在不用再次登录的情况下访问应用系统OA和应用系统NC了。
敏捷集团单点登录的现状
现有的系统包括OA、NC、统一门户系统以及即将建设的BPM流程中心平台,因系统的建设历史问题, 目前内部还没有建立统一的认证系统,但用户的信息统一从用户中心的AD获取, 每个系统维护及管理自身的组织架构及登录信息,实现自主登录及管理,但为了达到单点登录的类似效果,每个系统在登录时, 统一按一定的标准往客户端写入登录的令牌(通过Cookie来实现), 以保证在其他系统中访问时,可以携带这个令牌提交至应用系统的后端,从而让应用系统实现自身的认证,以达到登录的效果。
其原理如下所示:
用户组织同步
BPM平台本身有一套组织架构管理,但为了实现单点登录及统一用户账号管理, 敏捷集团要求所有系统的组织架构的数据统一通过同步AD用户中心来实现。 目前AD只维护了组织、用户及组织下的用户数据,其他组织与用户的关系数据即由各自的业务系统维护处理。
同步的接口
开放同步的测试数据接口、AD数据访问由敏捷集团内部提供一个正式的AD访问地址,用户账号、密码,通过LDAP访问协议同步以下数据,数据包括两部分:
部门的数据
部门下的用户数据
同步的策略
平台提供手动及自动同步更新策略,如可以定义每天晚上12点同步AD的用户数据,也可以让管理员直接点击系统上的【同步按钮】实现手工调用AD接口实现数据同步。
业务流程扩展
NC与BPM数据交互
提供查询流程实例的状态
流程实例的保存与跳转用同一接口
提供通过实例Id获得表单及附件的展示明细页面(流程实例的明细页)
NC与BPM的数据交互示意图说明
NC录入业务单据。
调用BPM的流程接口生成流程实例(草稿)
弹出流程实例草稿界面,同时可以上传附件,确认无误后并提交。
BPM启动流程
返回流程实例ID至NC并且回写至新的业务单中
在BPM中审批单据,同时调用NC接口实现业务单的审批状态更新
在流程实例在运行过程中,NC可调用BPM接口实现其审批表单的数据的更新
审批结束时,调用NC方实现审批状态的更新。
实现效果