系统erp架构设计方案_第1页
系统erp架构设计方案_第2页
系统erp架构设计方案_第3页
系统erp架构设计方案_第4页
系统erp架构设计方案_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

ERP系统架构设计方案年5月版本控制版本注释作者时间1.0ERP系统架构设计方案初稿麦仲博-05-28一、前言二、架构设计 2.1架构分析 2.2架构定义 2.3架构阐明 2.4软件逻辑构造三、具体功效简述3.1自定义工作流解决方案3.2多语言解决方案3.3消息公布/订阅系统方案3.4报表&打印方案四、系统平台&支撑组件五、系统网络构造六、开发管理层面一、前言一种公司级的商业软件能够满足顾客需要、正常运行、易于维护、易于扩展,必须拥有一种良好的软件架构支撑。本文重要是分析和构建一种公司级商业软件架构。二、架构设计 2.1架构分析公司级的商业软件架构在技术层面的规定重要体系在高性能、强健性和低本钱。高性能对于公司级商业软件来说,软件架构需要尽量地使软件含有最高的性能,支持最大的并发性。强健性公司级的商业软件规定软件是可靠的和无缺点的。现在的架构普通是,效劳器模式的。软件的可靠和强健重要依赖与效劳器。效劳器的稳定通过良好的代码和完备的测试能够解决这个问题。低本钱公司级商业软件尚有一种很重要的规定:低本钱。软件架构规定简朴、易掌握,复杂度低,易于维护和扩展,易于测试。2.2架构定义本架构以XML为整个系统的交互接口,涉及系统架构内部和外部。整个系统分为界面展示层,流程控制层和数据存储层。2.3架构阐明系统架构图Erp架构中各核心效劳之间满足松散耦合特性,含有定义良好的接口,可通过拆分与组合,能够有针对性地构建满足不同应用场景需求的Erp应用系统。适配器在集成环境中需要复用已有的应用系统和数据资源,通过适配器能够将已有应用系统和数据资源接入到ERP应用系统中。通过适配器能够实现已有资源与ERP系统中其它效劳实现双向通讯和互相调用。首先通过适配器能够实现对已有资源的效劳化封装,将已有资源封装为一种效劳提供者,可觉得ERP应用系统中的效劳消费者提供业务和数据效劳,另首先通过适配器,也能够使已有资源能够消费ERP应用系统中的其它效劳。资源仓库资源仓库重要功效是提供效劳描述信息的存储、分类和查询功效。对于广义的资源仓库而言,除了提供效劳类型的资源管理外,还需要提供对其它多个资源的管理能力,可管理对象涉及:人员和权限信息、流程定义和描述、资源封装效劳、效劳实当代码、效劳布署和打包内容、以及环境定义和描述信息。资源仓库首先需要提供效劳描述能力,需要能够描述效劳的多个属性特性,涉及:效劳的接口描述、效劳的业务特性、效劳的质量特性(如:平安、可靠和事务等)以及效劳运行的QoS属性。连通效劳连通效劳是ERP根底技术平台中的一种重要核心效劳,典型的连通效劳就是公司效劳总线(EnterpriseServiceBus,ESB),它是效劳之间互相通信和交互的骨干。连通效劳的重要功效是通信代理,如效劳消费的双向交互、代理之间的通信、代理之间的通信质量保障以及效劳运行管理功效等。连通效劳还需要确保传输效率和传输质量。连通效劳普通应用于连接一种自治域内部的各个效劳,在自治域内部效劳都是相对可控的,因此连通效劳更多应当考虑效率问题。2.3.4流程效劳流程效劳是为业务流程的运行提供支撑的一组原则效劳。业务流程是一组效劳的集合,能够按照特定的次序并使用一组特定的规那么进行调用。业务流程能够由不同粒度的效劳构成,其本身可视为效劳。流程效劳是业务流程的运行环境,提供流程驱动,效劳调用,事务管理等功效。流程效劳需要支持机器自动解决的流程,也需要支持人工干预的任务操作,它支持的业务流程重要合用于对运行解决时间规定不高的,多方合作操作的业务过程。2.3.5交互效劳交互效劳实现人与效劳之间的交互功效。交互效劳就是需要提供一组完整的功效,以实现人与效劳的便捷交互,既能支持多个交互渠道(如浏览器方式,富客户端方式和移动接入方式等),也能支持多个交互能力(如单点登录、个性化、支持多个资源的统一内容管理等)。2.3.6协作效劳协作效劳用来解决自治域之间及自治域内部的交互通信。协作效劳强调原则的采用,强调平等协作。具体实现技术时将更多的考虑采用WCF有关技术,以实现流程协同,效劳交互,和多个质量属性管理(如事务管理、可靠传输和平安管理等)。2.3.7平安效劳像ERP这样强调松散耦合的分布式集成系统,平安性显得尤为重要。平安有时被称为一种“事关全局的考虑〞,是全方位的问题,它跨越ERP参考架构模型的各个局部。平安效劳向ERP参考架构模型中其它效劳提供根本的平安效劳功效,涉及:身份验证、访问控制、数据加密、数据完整性和抗抵赖性,以及平安信任、身份联邦、平安会话、平安方略等。2.3.8信息效劳信息效劳特指为运用上述多个根本的核心效劳提供信息管理和使用的效劳。具体涉及提供元数据管理功效,以一种统一的方式描述ERP系统中所需要使用的多个信息数据。它也提供对多个类型数据(涉及构造化数据和非构造化数据),以及分布在不同地方的数据进行统一的访问管理。信息效劳其目的是使应用系统能够统一、透明、高效地访问和操纵位于网络环境中的多个分布、异构的数据资源,为实现全局数据访问、加紧应用开发、增强网络应用和方便系统管理提供支持。2.3.9运行管理工具运行管理工具提供界面和谐的图形化方式的监控和管理工具,提供对多个资源和效劳对象的运行管理功效。监控管理工具需要管理核心效劳,也需要管理应用效劳。能够查看各个效劳的运行状态和历史信息,也能对效劳进行启动、停止、暂停、恢复、版本升级等管理控制操作,同时需要提供分析和统计功效,能够根据效劳运行信息实现对系统的调节和优化操作。2.4软件逻辑构造软件架构图框架从层次构造上分重要分为:表达层、效劳层、业务层、数据层◆表达层表达层由UI〔UserInterface〕和UI控制逻辑构成。c/s选用wpf+智能客户端,b/s选用mvcWPF的出现解决了三个问题:更快速的去开发更丰富的顾客体验:使用WPF,能够在更快速的时间内开发出来更加丰富的界面,满足顾客的需求。WPF借助XAML来运用标记而不是编程语言〔如C#〕来构造精美逼真的顾客界面(UI),只要稍微含有某些HTML根底知识,就能够快速地掌握XAML中的大局部内容。消除顾客界面差别:wpf能够以IE为宿主的。或Silverlight软件开发团体的协作问题:在软件团体中,我们比拟熟悉Developer、DBA、Tester、ITPro、Architect等。Designer可能往往被我们无视,但事实上,Designer的工作成果才是与客户距离近来的。并且Designer与Developer如何配合工作,是诸多团体所头疼的,而WPF正能够解决此问题。智能客户端的优势1)充足运用终端设备的优势2)能够调用wcf3)支持在线和离线两种状态4)能够犹如Web应用程序普通简朴方便的布署mvc内置AJAX支持。本身含的MVC〔模型-视图-控制器)和本系统MVVM(Model-View-ViewModel)就是双胞胎,在demo里已有较好的集成*注:因xaml和html是标记语言,此层大局部可用代码生成器生成。◆效劳层采用微软的WCF,WindowsCommunicationFoundation(WCF)是Microsoft为构建面对效劳的应用提供的分布式通信编程框架平台,是.NETFramework3.5的重要构成局部。使用该框架,开发人员能够构建跨平台、平安、可靠和支持事务解决的公司级互联应用解决方案。WCF从一开始就是工程化的,能够简化应用程序的开发与布署,减少开发本钱。用于构建面对效劳的应用程序,不管这些程序是独立的桌面应用程序,还是Web应用程序和效劳,还是高端的公司应用程序。◆逻辑、业务层业务层封装了实际业务逻辑,包含数据验证,事物解决,权限解决等业务有关操作,是整个应用系统的核心。因此设计一种能够真实反映实际需要的业务层是非常必要的,我们将实际业务具体分为业务数据与业务操作两局部。业务数据DomainModel那么是根据实际业务按照现实方式用OO思想建模,这样很适合业务复杂的系统。普通采用自定义数据实体〔CustomDataEntity〕方式体现。自定义数据实体,有着良好的性能,编译时的类型检查,数据体现方式非常直观符合实际业务的操作方式等优点,但需要自己定义维护类,在分布式环境下需要自己编写序列化办法。此阶段负责数据交换(传输)的业务实体被称之为DTO〔DataTransferObject〕。DTO要能够支持:数据绑定、数据验证、历史统计、级联触发、合并集合、序列化与反序列化,要实现一种大的递归,从其中的任何一种对象开始,能够找出整个传递的全部数据。(1)、数据的绑定支持。要实现IEditableObject接口,对于状态的变化要实现INotifyPropertyChanged接口,这样才干够实现数据的触发,这样就要实现一种对象能够找到其全部的集合,一种集合要能够其全部的对象,这样同样,就必须实现从对象、集合、对象的递归,再进一步一点,就实现了数据的级联触发,实现了双向数据触发、绑定。数据源的每个属性变更,要能够在界面上反映出来,绑定界面的变化,能够统计到后台的数据源,并且要能够支持回滚。对于容纳这些数据的ObservableCollection集合也支持绑定解决。(2)、数据验证。实现IDataErrorInfo接口(3)对于历史统计。当实现IEditableObject这个接口,那么必然实现了历史统计。能够找到集合的全部更改的统计,涉及删除的统计。对于单个对象而言是能够得到历史统计和现在数据,对于集合而言,那么能够找出差别集,同时,集合也要含有集合回滚的功效。(4)级联触发,那么是在实现数据绑定的根底上的,对于常见的主从构造,当从对象的一种属性变化了,要能够自动告知其所在的集合、集合再告知所在的对象数据变化了,如果是多层构造,那么能够自动的从最底层开始一路告知到顶层。(5)合并集合、集合的解决。集合的解决与数据绑定是直接相称的。数据源找出差别集之后,要对差别集进行解决,解决完之后,要对原始集合进行更进一步的解决,要把两个集合进行合并解决,重要是为了同时引用。(6)同时,另外要实现的就是Data与SDO之间的转换以及其它格式的数据与SDO、Data数据之间的数据转换,比方Binary/Xml/Text/Key/文献/等,最根本的是SDO与Data之间的转换,这些转换根据需要,有时候是单向的,有时候是双向的,根据业务需求而定。(7)序列化与反序列化,重要是涉及到Binary和XML序列化。业务操作业务操作负责对业务数据进行多个业务有关的解决,例如验证,流向,整合,事物,权限等,但它不负责有关对数据源的操作。采用整合业务数据与业务方式来操作,将业务数据与有关的业务操作封装在一起称为业务实体,业务实体作为统一的业务层为表达层提供效劳,同时也负责作为DTO在各个层次间传输,这样完整的DomainModel设计方式,每个业务实体都能够做为一种单独组件形式存在,对于组件化复用有着莫大的好处。◆数据层数据层的宗旨就是为数据源提供一种可供外界访问的接口,我们应当选用一种能够提供数据源无关的抽象数据访问接口并通过在其下挂接多个不同的DataProviador来访问数据源的数据层组件,这样做便于移植到不同的数据源上。从纷繁芜杂的关系数据模型中抽象出概念模型。这样开发人员能够只需着眼概念模型,而不必要去关心纷繁芜杂的关系数据模型,从而提高开发效率。那么如何能够做到这一点?答案就是:Linq和ADO.NETEntityFrameworkLINQ几乎支持你所盼望的全部数据源:数据对象、SQLServer数据库、XML和数据集,固然也支持ADO.NETEntity(LINQtoEntities),LINQ有以下优势:无需复杂学习过程即可上手下面我给出一种简朴的C#例如。String[]QueryString={"One","Two","Three","Four","Five"};要想查找其中长度不不大于3的字符串,你能够使用下列查询语句:varThisQuery=fromStringValueinQueryStringwhereStringValue.Length>3selectStringValue;编写更少代码即可创立完整应用。更快开发错误更少的应用程序。无需求助奇怪的编程技巧就可合并数据源。让新开发者开发效率更高。ADO.NETEntityFramework涉及1.实体数据模型(EntityDataModel),开发人员通过EDM抽象出非常适宜的模型。2.非常强大的client-view/mappping引擎,用于映射数据关系3.EntitySQL语言和LINQ查询对EDMschemas的全方面支持4.ojbectserviceslayer供您选择以何种方式去解决查询成果。比方〔行,列或作为对象〕。5.提供一种开放的模型使ADO.NETEntityFramework能够解决其它的数据存储。6.EntityFramework实现了乐观的并发模式〔OptimisticConcurrencyModel〕7.事务解决三、具体功效简述3.1工作流解决方案工作流引擎:该局部为工作流模型的核心局部,用于生成、管理、角度和监控工作流的各个活动执行状况,并实现对应的人机交互。由于采用XPDL等语言定义的工作流文献记载了对应的业务逻辑,隐藏工作流引擎通过解析该文献来理解业务流转的逻辑。然后根据某种运行模式按照解析出来的业务逻辑进行驱动,最后实现业务流程的流转。工作流定义接口:通过该接口能够进行工作流程的分析、建模、描述和归档等工作,并将设计完毕的业务流程生成工作流引擎能够识别的语言。工作流客户接口:解决工作流运行过程中需要人为参加的操作。工作流调用应用程序接口:工作流引擎调用外部应用程

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论