MyApps平台技术白皮书OA办公软件.docx

上传人:b****6 文档编号:6517684 上传时间:2023-01-07 格式:DOCX 页数:18 大小:1,017.08KB
下载 相关 举报
MyApps平台技术白皮书OA办公软件.docx_第1页
第1页 / 共18页
MyApps平台技术白皮书OA办公软件.docx_第2页
第2页 / 共18页
MyApps平台技术白皮书OA办公软件.docx_第3页
第3页 / 共18页
MyApps平台技术白皮书OA办公软件.docx_第4页
第4页 / 共18页
MyApps平台技术白皮书OA办公软件.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

MyApps平台技术白皮书OA办公软件.docx

《MyApps平台技术白皮书OA办公软件.docx》由会员分享,可在线阅读,更多相关《MyApps平台技术白皮书OA办公软件.docx(18页珍藏版)》请在冰豆网上搜索。

MyApps平台技术白皮书OA办公软件.docx

MyApps平台技术白皮书OA办公软件

 

SuoOA|OBPM流程管理平台

技术白皮书

版本3.0

 

上海索昂软件科技有限公司版权所有

 

提示:

本技术白皮书仅由上海索昂软件科技有限公司销售专员提供给客户,文件内容和资料归上海索昂软件科技有限公司所有,因此我们要求贵公司对本文件所有内容进行保密,其使用范围仅供公司内部传阅,请确保接触该文件的人员不进行第三方传播。

――上海索昂软件科技有限公司

 

上海索昂软件科技有限公司

 

概述

什么是SuoOA|OBPM流程管理平台?

SuoOA|OBPM平台是一个前沿的集成化的工作流应用软件开发平台,涵盖了对企业业务流程需求分析,设计,快速开发部署,仿真测试,运行维护,更新和发布,流程绩效分析和管理,流程改进等企业绩效管理(BPM)全生命周期支持。

它的目标是让非IT人员无需任何编码,也可以轻松构建IT业务处理流程。

SuoOA|OBPM内建工作流引擎(WorkflowEngine),Form构建器,Report设计器。

SuoOA|OBPM支持浏览器(IE/Firefox/Chrome)做为客户端,同时还提供了强大的图形客户端。

SuoOA|OBPM从第一版开发到目前已经有6年多的时间,已经包含80多万行源代码。

SuoOA|OBPM流程管理平台的使命

SuoOA|OBPM的目标就是,通过提供像搭积木一样简单的操作,让产品的最终用户拥有搭建自己的应用系统的能力。

天翎公司通过积极投入研发和持续不断改进,SuoOA|OBPM2.5平台已经非常的成熟。

其核心组件包括:

动态表单、工作流引擎、智能报表以及ERP适配接口。

SuoOA|OBPM的定位和价值

企业信息化的内容大体包括:

◆业务操作层:

负责各个具体业务内容的管理和SAP/用友ERP,比如:

财务管理、物料管理、仓库管理、生产管理等。

ERP系统所主要负责的就是这个层面的信息化部分;

◆事务控制层:

负责企业事务(流程)性的内容,比如:

工单处理流程、质量监控流程、客户服务流程、人员变更流程等。

SuoOA|OBPM平台的设计主要针对这一层的应用;

◆决策支持层:

为企业的管理层提供决策支持的依据。

市场上有部分BI(商业智能)产品提供这一层次的信息化支持。

SuoOA|OBPM平台通过提供对企业事务层的支持,帮助企业标准化流程,提高质量管理水平。

在企业信息化建设过程中有效地联结决策层系统和业务操作层系统,起到承上启下的作用,他能为企业

SuoOA|OBPM的应用特征

◆面向最终用户

提供集成的动态表单、工作流引擎、报表分析器,并整合大量企业经典应用的案例模板,一般用户也能完成应用模块的配置和开发。

◆并非从零开始

引入了“模板”功能,通过“模板”功能,最终用户可以不用从“零”开始,而仅需要拷贝标准模板的功能,然后进行必要的修改,即可完成!

◆自我进化

好的软件不是开发出来的,而是通过不断的完善、进化而来,SuoOA|OBPM平台具有良好的自我进化能力。

◆与ERP无缝连接

与主流ERP系统无缝连接是SuoOA|OBPM的核心战略。

目前我们内置了主流ERP系统的接口:

SAP、速达、用友、金蝶等。

通过这些接口,SuoOA|OBPM可以

✧共享ERP系统主数据;

✧进行业务数据的双向交换;

共享ERP的业务处理流程

与市场同类产品对比

厂商

Microsoft

IBM

BEA

SAP

TeemLink

产品/方案

InfoPath+SharePoint

WAS的intelliFlow

BEAAquaLogicBPM6.0

SAPBusinessworkflow

SuoOA|OBPM

特点

SharePointServer借用了WindowsSharePointServices(版本3)中的工作流功能,并通过与InfoPath窗体和其他工作流活动相集成而扩展了该功能。

工作管理流程系统基于IBMSOA架构体系的核心,可以降低应用系统开发工作量,提高系统开发效率。

提供了改进的协作和业务智能功能,全面支持行业标准,能够为IT和开发者提供更强大的流程应用平台。

提供了基于Eclipse的开发环境

内嵌在SAPWebApplicationServer中,用来实现SAP应用内部组件之间的业务流程集成和管理

提供集成的动态表单、工作流引擎、报表分析器,并整合大量企业经典应用的案例模板,一般用户也能完成应用模块的配置和开发。

开发环境

VisualStudio2005DesignerforWindowsWorkflowFoundation和SharePointDesigner2007

WASDforWebsphere

EclipsJbuilder等

SAP内置开发环境,ABAP语言及JAVA

纯WEB的配置、开发、调试环境,IE6.0或FireFox2.0以上版本

用户支持

高级用户★☆

不支持高级用户

不支持高级用户

高级用户☆

高级用户★★★

开发人员★★★

开发人员★★★

开发人员★★★

开发人员★★

开发人员★★☆

SuoOA|OBPM平台特性

平台的技术路线

◆产品采用Java开发,全面兼容主流应用服务器平台,包括IBMWebsphere、BEAWeblogic、Jboss、ApacheTomcat等;

◆全面支持SOA相关技术标准,包括服务层次上的信息交互规范、基础通信标准规范、元数据标准规范等;

◆在流程和表单中内置宏语言(JavaScript)实现,在不需要重新编译、安装的条件下,可动态地创建或调整业务逻辑;

◆对于动态表单所创建数据,创建了查询微语言DQL(类是SQL语法),为检索提供全面的灵活性和可扩展性;

◆实现几乎所有主流数据库的DAO接口,系统可以运行各种主流的关系型数据库下,包括DB2、MSSQL、Oracle、Sybase等;

◆通过J2ME规范实现移动终端适配器,支持广泛的移动网络和客户端多样化设备接入服务。

平台的设计规范

SuoOA|OBPM采用6层的体系架构,其中:

◆第一层:

WEB(表示)层,通过HTML或Ajax的形式,展现用户的输入界面以及完成数据的采集;

◆第二层:

ActionForm层,负责数据的采集,将Web层收集回来的数据,通过Struts2(一种开源的框架)传递给ValueObject对象,并为进一步处理做好准备;

◆第三层:

Proxy层,负责将Action/动作请求进行分发,通过这一层的处理,将Web前端处理和业务逻辑清晰的分开;

◆第四层:

Process层,此层实行主要的业务逻辑,通常可以选择采用EJB方式还是采用简单Bean方式。

采用EJB方式时,一般使用无状态SessionBean实现。

通过采用SessionBean,可以实现分布式的应用,且借助EJB的能力,实现实效转移和负载平衡;

◆第五层:

DAO代理层,通过设置这一层,使系统具备适应不同数据库及采用不同实现方式的能力;如:

为了同时支持Oracle、MsSQL;

◆第六层:

DAO实现层,实行具体的DAO接口,比如可以通过Hibernate实现DAO功能,也可通过JDO实现数据访问功能,也可通过实行不同的JDBC接口,以兼容不同类型的数据库。

平台的技术特性

灵活的设计到应用(designtouse)平台

◆使用HTML所见即所得(WYSIWYG)的表单设计器,无须任何编程语言知识。

表单一经定义,即可使用,无须编译或发布。

◆使用图形拖拉(DragandDraw)的工作流设计工具,通过简单的角色及流程定义,无须专业的工作流知识。

◆采用Web2.0的页面风格,强调用户使用的体验性。

◆灵活的自定义报表平台,能根据表单定义灵活的报表样式。

◆支持移动设备的接入访问(包括表单和流程),无须额外开发。

◆提供多语言支持。

开放的构建到集成(buildtointegrate)平台

◆遵循J2EE的规范开发,支持各种流行应用服务器的高级功能,如集群、负载均衡、消息服务、单点失效、灾难恢复等。

◆基于Web服务的自动态表单服务,能以其他同构或异构系统做集成。

◆基于Web服务的业务流程协作和服务编排,以WS4BPEL做为业务流程执行语言,能实现各种类型的工作流应用及与各类型的遗留系统做集成。

◆提供主数据交换服务,能以其他同构或异构系统做数据集成。

平台的概要设计

核心Java类

基础类图展现了系统的基本工作类结构,以及SuoOA|OBPMs如何通过具体的类实行上一节所描述的6层体系架构。

 

其中:

◆BasicAction——所有Action类的基类,被定义为Abstract(不能独立使用,必须通过子类的继承),其中实现了基本的WEB采集数据并且影射到ValueObject的逻辑以及获取WebUser(系统当前处理者,这是一切权限控制的基础)的逻辑;

◆ProcessFactory——应用设计模式当中的工厂模式,通过这个工具,动态创建ProcessBean,并可以通过CGLIB技术,实现动态插入(AOP)Process特性,比如,加入缓存机制等。

数据存储架构

数据存储分成三总类型,设计时数据、授权类数据、运行时数据。

如图所示:

其中:

◆设计时数据——包含Form、View、WorkFlow的设计模板,仅在系统设计时被改变和存储;

◆授权类数据——包含User、Role、Dept信息,表现用户的基本信息、角色信息、组织架构,以及定义对系统各功能模块的访问权限;

◆运行时数据——包含Counter、Document、WorkFlowState数据,分别存储计数器、文档、工作流状态。

考虑到需要将不同的实例(一个实例对应一个应用,比如可以为不同的应用系统分别建立不同的实例)逻辑上分开,所以对于每一个不同的实例,提供不同的数据源定义。

数据结构描述

下图为数据库表结构及其关系的描述图,考虑到SuoOA|OBPMs/OBPM是通过面向对象的方式进行设计,并非面向数据,而数据结构在设计思想中主要作为Object模型的序列化映射,所以在此不做重点描述。

ERDiagram-1简略:

ERDiagram–2详细:

SuoOA|OBPM平台核心功能

应用软件的功能主要是围绕数据/文档处理而设计的,大体可以分为:

数据采集、数据处理、数据展现三个部分。

由于这种认识,SuoOA|OBPM抽象出一些通用元素,包括:

动态表单、工作流程、报表,并在这三个核心功能外扩展了一些辅助的应用功能模块

◆表单工具:

解决数据采集问题

◆流程工具:

解决数据处理问题

◆界面工具:

解决用户接入问题

◆组织模型:

解决人员角色问题

◆权限工具:

解决角色权限问题

◆报表工具:

解决数据展现问题

 

SuoOA|OBPM动态表单功能

动态表单是天翎公司核心技术之一,也是天翎公司核心产品SuoOA|OBPM的重要组成部分。

通过对于动态表单的应用,可以避免在电子流程系统中硬编码的数据采集及处理表单,提高系统的可维护性,

动态表单的原理并不复杂,如下图所示:

动态表单原理示意图

该技术的难点在于:

1)表单的定制——通过B/S结构的定制终端定制表单模板,实现各种版式的定义以及包括:

单行文本框控件、多行文本框控件、下拉列表框控件、单选框控件、复选框控件、自动编号控件、组织机构控件、Word嵌入编辑控件、Excel嵌入编辑控件、电子签章控件等;

2)表单的描述——采用XML描述表单布局及样式,并能够在定制器和页面生成器之间保持定制时和显示时状态和布局保持一致;

3)主从等复杂数据结构在B/S结构下的表达——主从等复杂数据结构在C/S结构下可以很容易通过数据绑定等方式实现。

但由于B/S结构下主要的通讯协议HTTP为一种无状态的网络通讯协议。

表和表之间的数据关系不能通过内存持有的方式表达,所以必须通过额外的处理才能实现数据对象关系的展现;

4)动态数据存储结构——动态表单必定对应动态数据存储结构。

我们通过Parser描述动态表单的XML,并自动生成对应的数据动态存储结构;

5)表间数据计算和校验——通过内嵌的宏语言实现,详见“嵌入式宏语言及调试工具”部分描述。

表单主要类图

图例表现的是动态表单的SuoOA|OBPM/OBPM系统中的实现方式,动态表单是系统的核心功能之一。

其中:

Form——动态表单实现的基本入口,描述了DynaForm的最基本属性,比如名称、ID、以及最核心的TemplateContext。

TemplateContext中保存的是Form的描述XML,通过此XML描述两类信息:

(1)Form中所具有的Field以及Field的类型、名称、长度、计算代码等等,XML;

(2)Form的格式,比如排列次序、表格定位等。

Form作为一个ValueObject存储在数据库中,在反序列化的过程当中,系统自动解析XML的内容并将其转换为JavaObject并由此具备Object的行为特性;

◆FormElement——接口,表示Form中的基本元素;

◆FormField——动态表单的最基本元素,在SuoOA|OBPM/OBPM中被声明为Abstract,具体Object行为依赖于具体的SubClass实现;

◆TextField——单行文本框,继承FormField;

◆SelectField——下拉选择框,继承FormField;

◆TextareaField——多行文本框,继承FormField;

◆CheckBoxField——复选框,继承FormField;

◆RadioBoxField——单选框,继承FormField;

◆Textpart——静态文本段,除各种Field以外的静态文本部分,继承FormElement;

◆ComponentField——自定义组件,继承FormField;

◆AttachmentUploadField——附件上传组件,继承FormField;

◆ImageUploadField——图片上传组件,继承FormField;

◆ViewDialogField——视图组件,用于实现主从结构的表单,继承FormField;

◆CalctextField——计算文本组件,用于实现需要计算的文本,继承FormField;

◆IncludeField——实现SubForm的包含,继承FormField;

◆WordField——Word组件,继承FormField;

◆OcrField——为将来预留的接口,系统暂未实现;

系统界面:

工作流主要类图

WorkFlow是系统核心功能之一,其结构如图:

其中:

◆Element——为Abstract类,表示WorkFlow中任意元素;

◆Node——表示流程中的节点,继承PaintElement;

◆PaintElement——表示需要界面显示的Element,继承与Element,Relation及Node均由此继承;

◆EndNode——表示结束节点;

◆AbortNode——表示取消节点;

◆TerminateNode——表示终止节点

◆SubFlow——表示子流程,系统暂未实现;

◆SuspendNode——挂起节点;

◆CompleteNode——完成节点;

◆StartNode——开始节点;

◆ManualNode——人工处理节点;

◆AutoNode——自动处理节点,系统暂未实现;

◆Relation——表示节点与节点之间的连接路径;

◆Actor——系统预留的接口;

◆NodeActivity——系统预留的接口;

◆所有节点信息,通过FlowDiagram表现,且通过XML表达以及存储。

XMLOperate处理XML与JavaObject之间的转换关系;

◆WFRunner——工作流引擎的对外接口,需要用到工作流的调用均可通过此对象完成;

StateMachine——工作流状态机,是整个工作流引擎的核心,具体说明参见API文档;

◆ActorRT——当前处理者运行时状态;

◆ActorHIS——历史处理者处理历史纪录;

◆FlowStateRT——流程当前状态,比如:

挂起、运行等;

◆NodeRT——当前节点运行时状态;一个Node可以对应多个Actor;

◆RelationHIS——流程路径处理历史纪录;

其他几个类均为实现WorkFlow运行所需要的辅助功能类,具体可参见API文档。

WrokFlow——DesignTime

WorkFlow设计结构图:

其中:

◆Element——为Abstract类,表示WorkFlow中任意元素;

◆Node——表示流程中的节点,继承PaintElement;

◆PaintElement——表示需要界面显示的Element,继承与Element,Relation及Node均由此继承;

◆EndNode——表示结束节点;

◆AbortNode——表示取消节点;

◆TerminateNode——表示终止节点

◆SubFlow——表示子流程,系统暂未实现;

◆SuspendNode——挂起节点;

◆CompleteNode——完成节点;

◆StartNode——开始节点;

◆ManualNode——人工处理节点;

◆AutoNode——自动处理节点,系统暂未实现;

◆Relation——表示节点与节点之间的连接路径;

◆Actor——系统预留的接口;

◆NodeActivity——系统预留的接口;

所有节点信息,通过FlowDiagram表现,且通过XML表达以及存储。

XMLOperate处理XML与JavaObject之间的转换关系。

WorkFlow——RunningTime

工作流运行时状态如图:

 

其中:

◆WFRunner——工作流处理的对外接口,需要用到工作流的调用均通过此对象完成;

◆StateMachine——工作流状态机的实现,是整个工作流实现系统的核心,具体说明参见API文档;

◆ActorRT——当前处理者运行时状态;

◆ActorHIS——历史处理者处理历史纪录;

◆FlowStateRT——流程当前状态,比如:

挂起、运行等;

◆NodeRT——当前节点运行时状态;一个Node可以对应多个Actor;

◆RelationHIS——流程路径处理历史纪录;

◆其他几个类均为实现WorkFlow运行所需要的辅助功能类。

系统界面:

SuoOA|OBPM宏语言功能

虽然系统提供了很好的定制功能,可以保证绝大多数普通用户仅需要通过一些简单的配置完成应用系统的构建。

然而,就像微软的Office产品准备了更为强大的VBA语言以满足高级用户的高级需求一样,SuoOA|OBPM平台为高级用户准备了宏语言iScript(为了方便用户学习和使用,iScript采用JavaScript语法)并提供B/S结构的在线调试工具集。

主要内容包括:

◆MacroLibs宏语言函数库

为View或Document提供可重用的函数,用于执行各种逻辑操作,MacroLibs的新建页面,如下图:

◆调试器

提供语法高亮显示。

支持断点、单步跟踪、钻入、钻出。

变量(表达式)值查询等。

◆宏脚本主要类图形

◆AbstractRunner:

抽象脚本运行容器。

◆JavaScriptRunner:

Javascript脚本运行容器。

◆JavaScriptDebugger:

Javascript脚本运行容器(带调试功能)。

◆CurrDocJsUtil:

表单脚本工具类。

◆EmailJSUtil:

邮件工具类。

关于索昂

公司简介

上海索昂软件科技有限公司于2009年正式成立,注册资金1000万元,公司核心技术团队由一群优秀的管理咨询专家及软件工程师所组成,研发方向主要为工作流、数据交换以及相关应用技术领域。

在企业流程管理(BPM)软件上有着丰富的技术积累和建设经验,天翎网络科技依托先进的(BPM)理论知识,多年积累的(BPM)建设项目管理经验,能够为客户提供从(BPM)管理咨询、规划、设计、培训等全方位的解决方案。

同时作为SAP的紧密合作伙伴,我们的核心产品《SuoOA|OBPMs流程管理平台》能够和SAP-ERP无缝整合(已通过Powered By NetWeaver认证)。

我们奉行“永不言败的工程师”精神,力求以严谨的态度和深厚的技术为顾客提供最完美的服务,并有志成为华南地区工作流及数据交换领域最具影响的企业!

◆技术优势

自主研发了集成化的工作流应用软件开发平台SuoOA|OBPM,平台涵盖了对企业业务流程需求分析,设计,快速开发部署,仿真测试,运行维护,更新和发布,流程绩效分析和管理,流程改进等企业绩效管理(BPM)全生命周期支持。

上海索昂软件科技有限公司是国内第一家通过SAP认证(PoweredByNetWeaver)的厂商。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1