中小企业最佳集成应用平台UAPUAP 技术白皮书UFIDA Application Platform前言Preface 大洋彼岸突如其来的危机,几乎没有任何悬念地席卷了全球。企业如何在这场大风浪中稳健前行,经营创新与管理升级成为企业决策者战略思考中不可回避的关键内容。飞速发展的中国在危机面前,产业整合、企业管理升级,已经势在必行。 当一些企业还在思考寻觅或被诸多先进名词或技术“闪烁”得不知如何行动的时候,已经有一些企业迈着稳健的步 伐,快速前进,并在行动中取得了显著的成效,成为“优势企业”。转型升级即决策与改变,而科学决策与理性转变在这个时代背景下显得那么重要和关键。 如何搭建更快见效、更低风险、更灵活、更具有延展性、更高性价比、更成熟的管理升级方案以及如何在有效保护现 有投资的基础上、盘活现有的信息化资产、以经济的投入换取企业的加速转型升级,成为危机中优势企业,是企业的信息主管不得不面对的课题。U8-UAP作为中小企业最佳集成应用平台,将为企业的信息主管拨开迷雾,成为企业加速转型升级的强大工具平台。 U8-UAP作为ERP-U8的核心平台,全面支持SOA技术架构,拥有高度的可扩展能力、柔性化的可配置能力和强大的第三方系统集成能力,能够满足中小企业信息化的各种需求: 基于U8-UAP表单和报表框架企业能够自主满足各种个性化的需求 工作流平台可以帮助企业实现业务流程的重组、优化、监控 集成框架可以帮助企业实现外部插件以及与第三方系统的集成 元数据驱动技术可以实现企业系统持续平滑的升级 高效的开发模式可以节约大量时间,降低总体成本 灵活的支持多种部署模式,满足各种企业类型的应用中小企业最佳集成应用平台目录 ContentsU8-UAP 中小企业最佳集成应用平台面向SOA的核心技术体系实现个性化需求自主掌控的表单平台实现业务革新的工作流系统基于.Net Framework 的底层技术体系面向决策支持层的强大报表平台应用场景驱动的企业门户无缝整合第三方系统的集成框架U8-UAP的技术特征U8-UAP的应用特征01020204060912151705U8-UAP 中小企业最佳集成应用平台 U8-UAP平台是ERP-U8(以下简称U8)的核心技术平台,提供系统底层的基础设施支持,即提供了U8运行所必须的基本运行时框架,封装了U8各层运行必须的基本构件,保障各层之间通讯的畅通,并制定了相关技术标准。同时U8-UAP是一个集成应用平台,提供一系列的设计、开发、集成、安装和部署工具。基于U8-UAP平台,可以开发U8的标准产品,开发满足行业需求的行业插件,开发企业的个性化应用,以及对第三方系统的集成;客户和实施人员可以通过可视化的规则定义工具进行个性化的配置,满足企业的个性化需求。因此,强大的U8-UAP平台就是中小企业信息化的集成应用平台。U8-UAP 中小企业最佳集成应用平台1中小企业最佳集成应用平台U8-UAP的技术特征 U8-UAP平台采用分层的技术体系和技术架构模式,主要包括数据层、业务层、表示层,并通过抽象的控件模型提供对多种客户端的应用支持;U8-UAP支持Web Form、Ajax 引擎、MVC 框架等Web 客户端技术,同时支持PDA、Mobile、离线引擎等智能客户端技术,还提供与Office 等个人办公应用的集成。 面向SOA的核心技术体系 U8-UAP作为U8的核心技术平台,作为SOA的运行支撑平台和设计平台,采用包含了一系列的先进理念和技术: 模型驱动:U8-UAP平台采用先进的模型驱动技术,将系统中的各种应用都抽象成模型的方式进行描述,封装屏蔽底层技术,使得开发人员更专注于业务逻辑和流程。同时采用元数据的形式来描述模型之间的映射关系,只需要通过修改元数据的方式就可以实现模型之间的映射关系的修改,不需要修改程序代码,因此模型驱动技术使得U8-UAP系统具备了很大的灵活性和可扩展性。 元数据:U8-UAP的所有应用功能都是元数据驱动的。元数据(Metadata)管理提供了UI元数据、流程元数据、服务元 数据、实体元数据以及报表元数据的管理,为支持全面SOA架构的企业应用系统,及个性化定制、扩展等提供了灵活的数据层支持,使得系统具备柔性化的可配置能力。同时U8-UAP的元数据复用模型,可以使二次开发及客户化成果不受ERP系统升级的影响,完美地解决了软件产品的持续升级问题。 软件框架:U8-UAP提供了ERP-U8运行所必须的基本应用框架,为应用产品提供了一致的运行界面,一致的应用模式。同时提供了面向UI和行为对象的开发运行框架,实现了基于平台的定制、扩展开发运行所必需的底层支持。基于U8-UAP的框架开发模式可以根据实体模型生成框架代码,提高产品的开发效率和开发质量,节省开发成本;可以根据提供的标准接口进行功能扩展,大幅提高平台的可扩展能力。U8-UAP技术架构2Web客户抽象控件模型表示层业务层数据层智能客户 软件工厂:U8-UAP开发平台采用了“软件工厂”的设计理念,使客户应用的开发更加高效,同时通过系统提供的各种接口,开发人员可以很灵活的调整原有ERP系统的关键应用和业务流程。 服务总线:U8-UAP采用了企业服务总线ESB技术,其中的工作流平台通过ESB来实现消息的路由、传递和调用外部的服务;集成平台以是ESB服务为核心来构建多层次框架体系的基础设施层的。 工作流流程定义语言:流程定义语言(PDL)是一种由用友公司定义的XML化的,用来描述企业业务流程的标准格式。其中定义了人与人之间,人与机器之间的协作与交互,描述了数据流的传递与变化,同时还提供了用来描述任务之间关系的结构,如条件选择结构,并行结构,循环结构等。通过流程定义语言,使用者可以针对企业的日常工作流程建模,将业务流程形式化,模型化,通用化。 商务数据引擎:U8-UAP创造性的提出了商务数据引擎(BDE)技术。系统中数据物理表之间逻辑关系复杂,在表现形式上无法与实际的业务对应关联;商务数据引擎(BDE)技术可将这些数据表组织为业务对象,以实体的形式展现,从而屏蔽掉这些很难对应的关联关系,使得开发人员可以方便的获得ERP-U8系统中各种数据信息,极大的提高了开发效率。 数据转换引擎:通过可视化的设计界面让开发人员或客户能随意定义不同业务对象之间的转换关系,在实际运行中数据转换引擎将直接调用U8系统的各种业务API,保证不同业务对象之间可以随意转换的效果,使用户可以参与到业务的流程定义中。 图表引擎:通过对业务数据进行多层次的分组切分,生成多级次的图表展现。同时支持从上级图表到下级图表的钻取分析。而且每一级图表都可以设置不同的图表方案,以不同的图形形式展现出不同的分析效果。U8-UAP报表的图表引擎都以可视化的方式提供使用者进行设计和交互,并可以嵌入自由报表中产生丰富的图文展示。 分布式事务:U8-UAP采用分布式事务技术,在确保数据完整性的同时,能够支持客户端、服务器端、数据库分离部署,从而可以在多台计算机上平衡计算负荷,以支持网络应用。3中小企业最佳集成应用平台 基于.Net Framework 的底层技术体系 U8-UAP的技术架构是基于微软的.Net Framework的企业应用架构建立的,.Net Framework框架为UAP提供企业级的面向服务的底层设施。因此.Net Framework的技术优势就是UAP的技术优势。 Visual Studio 2005 + .NET Framework 2.0: 基于Visual Studio 2005和.NET Framework 2.0这一企业级开发平台,广大开发人员及其团队能够开发出更加高效、安全和可靠的解决方案。Visual Studio 2005增加了一系列新的工具,其中,Visual Studio Team System是一个可扩展的、支持整个软件开发生命周期的工具平台,能使软件开发团队之间更好的协作,从而开发出现代化的、服务导向的解决方案。微软.Net Framework 企业应用架构主要包含Microsoft®SQL Server 2005和Visual Studio®2005。其强大性能,已在众多基准测试中得到证实: 满足企业级关键应用的平台:根据最新的SAP销售和分销三层标准应用基准,运行在惠普和英特尔硬件上的SQL Server 2005和Windows Server 2003实现了创记录的93,000名用户同时使用的性能。这项新的64位处理器基准在2005年11月3日得到认证,比SQL Server 2000的性能提高了3.5倍,充分显示出SQL Server 2005的企业级计算能力。 优秀的性价比:微软同AMD、Bull、惠普、英特尔、NEC和Unisys等合作伙伴的基准测试证明,在标准硬件上微软能够实现破纪录的性能及性价比,同时,在高端服务器上则具有优良的可伸缩性(Scalability)以处理企业级OLTP(联机事务处理)和数据仓库的需求。 集成的优势:新的基准测试表明,SQL Server 2005集成.NET Framework 2.0的平台,与同等编码的EJB-applications运行于IBM WebSphere 6.0和Oracle 10G后端数据库的组合相比,性能高出183%。而进一步的性价比测试表明,运行于Windows Server 2003的.NET Framework的整体成本只有运行于RedHat Linux Advanced Server的IBM WebSphere成本的一半。 强大的64位计算能力:新的CachePerf基准测试表明,64位架构在内存寻址能力方面具有极大的优势,同时在特定的中间层和数据层方面,客户可以体验到64位系统的性能明显超过32位系统。 BPEL4WS:BPEL4WS定义了面向整合的WEB服务标准,通过BPEL4WS流程设计器可以创建完成服务调用、数据和故障处理、流程中止和等待的不同活动,将它们连接起来,从而创建出复杂的业务流程,BPEL4WS的结构化又定义了活动的运行方式,支持按条件执行。U8-UAP的工作流平台是基于BPEL4WS来开发的,因此拥有BPEL4WS的天然优势。 WCF:U8-UAP的集成平台建立于WCF的基础之上。WCF是使用托管代码建立和运行面向服务(Service Oriented)应用程序的统一框架。它使得开发者能够建立一个跨平台的、安全、可信赖、事务性的解决方案,且能与已有系统兼容协作。WCF是微软分布式应用程序开发的集大成者,它整合了.Net平台下所有的和分布式系统有关的技术,例如.Net Remoting、ASMX、WSE和MSMQ。以通信(Communiation)范围而论,它可以跨进程、跨机器、跨子网、企业网乃至于Internet;以宿主程序而论,可以以ASP.NET,EXE,WPF,Windows Forms,NT Service,COM+作为宿主(Host)。WCF可以支持的协议包括TCP,HTTP,跨进程以及自定义,安全模式则包括SAML,Kerberos,X509,用户/密码,自定义等多种标准与模式。也就是说,在WCF框架下,开发基于SOA的分布式系统变得容易了,微软将所有与此相关的技术要素都包含在内,掌握了WCF,就相当于掌握了叩开SOA大门的钥匙。4U8-UAP的应用特征 U8-UAP提供强大的应用开发平台支持,平台分为三个层次,核心协议与核心服务层、核心业务平台层和门户层。核心协议与核心服务层位于最底层,其提供了产品运行所必需的运行环境,保障了产品的稳定运行为。核心业务平台层位于第二层,提供产品的通用业务支持,包括表单平台、报表平台、工作流平台、集成平台和丰富的集成开发环境IDE。门户层位于最上层:U8-UAP门户具有强大的客户端应用的兼容能力,可以集成产品的各种应用。以下是平台应用架构图:U8-UAP平台的应用架构 U8-UAP应用架构中核心业务层是U8-UAP的应用开发集成平台,它提供中小企业信息化所需要的所有工具,包括企业门户、表单平台、报表平台、工作流平台、集成平台和丰富的集成开发环境IDE。5API中小企业最佳集成应用平台 为解决企业业务流程变革创新后出现的新业务基础数据的增加,新业务单据的增加,新的单据转换规则的定义等一系列的个性化需求,用友U8-UAP平台构建出了强大的U8-UAP表单平台来实现企业自主管理创新。 UFIDA的U8-UAP表单平台是一个面向管理软件领域的表单应用框架(这里的表单包括单据和档案),它为表单提供了基础实现(包括:人机交互、持久化、查询等)。U8-UAP表单框基于元数据驱动的模式,采用了软件领域一系列久经考验的设计模式,在表示层采用基于MVC的设计模式,业务逻辑层采用facade的设计模式等,使得表单框架具有灵活、强壮、结构清晰的软件架构、高扩展性和柔性化的可配置性。 实现个性化需求自主掌控的表单平台U8-UAP表单框架结构6表现层服务层底层服务 强大的集成开发环境:U8-UAP表单提供了一系列的开发工具,包括模型设计器、表单布局设计器、报表设计器、打印布局设计器、过滤设计器、行为对象设计器、规则定义工具,发布部署工具,导入导出工具等。这些全方位、多层次、多视角的开发工具构成了U8-UAP强大的集成开发环境——U8-UAP IDE。U8-UAP IDE采用微软Visual Studio的集成开发环境的布局方式,具有可视化的界面,开发人员通过拖拽的方式,可以自由设计实体模型、布局表单界面。集成开发环境友好的界面、主流的设计开发模式,确保了企业的IT技术人员能够快速的掌握并熟练运用,经过短期的培训就能够基于U8-UAP平台实现自主设计开发,满足企业随时出现的个性化需求。 高效的框架开发模式:基于U8-UAP的表单框架,在集成开发环境中,通过拖拽控件的方式,就可以开发出一个与标准产品风格一致的业务单据,不需要编写任何代码,利用平台工具发布后就可以实现与ERP系统无缝的集成。7中小企业最佳集成应用平台 规则定义的开发模式:通过可视化界面配置的方式就可以实现对表单项目、菜单状态以及项目之间的计算关系的设置,不用书写任何代码。 建模与视图的分离:U8-UAP表单采了用MVC设计模式,实现建模与视图的分离,可以为一个表单业务模型设计多个视图实现多种表现形式,同时一个视图又可以在卡片式和表格式之间实现自由切换,企业可以根据不同的场景,配置不同的展现视图,灵活方便。 丰富的展现方式:U8-UAP表单提供多子表、分组、页签等视图方式,用户可以根据具体情况自主选择最优展现方式。 支持分层的开发模式:U8-UAP表单可以在不同UAP项目中继承或重写。 提供大量可供调用的API:U8-UAP表单对常用的业务逻辑和行为对象进行了抽象和封装,形成了大量可供调用的API,同时提供可视化的API管理器,大大节省开发时间和成本,提高开发效率。 完整的编程接口支持:U8-UAP支持一个表单注册多个插件(U8-UAP中称为行为对象),执行顺序靠后的行为对象可以继承或者重写其前面的行为对象的方法。 标准的数据接口及代码设计:U8-UAP表单提供行为对象的标准接口,利用Visual Studio2005提供的接口实现功能,可以方便快捷地得到行为对象的程序结构,从而保证了所有行为对象程序代码的标准化,提到代码的可维护性和重用性。 丰富的查询方式:U8-UAP为使用者提供了查询自定义的功能,无论是基础档案、单据、列表还是报表的查询,都可以用过滤器设计器,来定制各种不同情形下所需要的查询条件,并保存为相应的查询模版。 强大的生单功能:基于U8-UAP平台开发的单据和标准产品的单据之间可以相互转换,平台提供汇总、公式、代码等多种映射转换方式,并且支持源单据通过过渡桥实体多步生成目标单据的转换方式,转换方式灵活,高效。平台提供可视化的工具来表示源单据和目标单据之间的转换映射关系,清晰而明确。8 支持团队开发模式:U8-UAP表单继承了Visual Studio的以项目为中心的开发模式。表单设计器通过写操作的排他性和 浏览操作的共享性,允许多个用户同时在一个U8-UAP项目中工作;提高整个项目的开发效率,节约时间成本。 支持多开发角色: ◇ 水平产品开发人员:基于U8-UAP完成标准产品的开发;® ◇ 二次开发人员:对标准产品进行增值开发;® ◇ 插件开发人员:基于U8-UAP对标准产品的功能进行扩展;® ◇ 企业及实施人员:基于标准产品进行个性化配置; 对于前三个角色,U8-UAP平台提供了行为对象的注册功能。 市场高度竞争化的今天,企业决策层能否快速获取简洁准确、多层次、多维度、形象化的数据成为企业能否作出迅速准确反应的一个重要因素。为此U8-UAP平台构建了功能强大的报表平台。报表平台通过报表设计器,报表服务器,以及一系列的相关工具和技术支持,提供了一个交互能力强、展现丰富、高度灵活性和扩展性、高性能的分布式数据展现和分析平台,为企业数据分析与商业智能提供高性能、高效率的报表解决方案。报表的技术框架如下:U8-UAP报表的技术框架 面向决策支持层的强大报表平台 和传统的报表体系相比,它具备以下的一些显著特点: 面向报表服务的分布式架构:U8-UAP报表是一个完整的分布式报表解决方案,拥有自己的报表服务端,报表服务主要完成报表分组、汇总、分页等计算以及展开分析、嵌套分析(子报表)、交叉分析、复杂图表分析等功能。同时报表服务根据并发的客户端个数,自动均衡应用服务服务器和数据库服务器的压力,实现报表处理的负载均衡;报表服务采用异步的方式,在报表的计算分析过程中,客户端不用等待,却能即时的得到服务端报表处理的进度,使得用户享受良好的使用体验...