ImageVerifierCode 换一换
格式:DOCX , 页数:11 ,大小:153.18KB ,
资源ID:7361609      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7361609.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(系统架构设计方案.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

系统架构设计方案.docx

1、系统架构设计方案ERP系统架构设计方案2009年5月版本控制版本注释作者时间ERP系统架构设计方案初稿麦仲博2009-05-28一、前言二、架构设计架构分析架构定义架构说明 软件逻辑结构三、具体功能简述自定义工作流解决方案 多语言解决方案 消息发布 / 订阅系统方案 报表 &打印方案四、系统平台 &支撑组件五、系统网络结构六、开发管理层面一、 前言一个企业级的商业软件能够满足用户需要、正常运行、易于维护、易于扩展,必须拥有 一个良好的软件架构支撑。本文主要是分析和构建一个企业级商业软件架构。二、 架构设计架构分析企业级的商业软件架构在技术层面的要求主要体系在高性能、健壮性和低成本。高性能对于企

2、业级商业软件来说, 软件架构需要尽可能地使软件具有最高的性能, 支持最大的并发性。健壮性企业级的商业软件要求软件是可靠的和无缺陷的。 现在的架构一般是, 服务器模式的。软件的可靠和健壮主要依赖与服务器。服务器的稳定通过良好的代码和完备的测试能够解决这 个问题。低成本企业级商业软件还有一个很重要的要求: 低成本。软件架构要求简单、 易掌握,复杂度低,易于维护和扩展,易于测试。架构定义本架构以XML为整个系统的交互接口, 包括系统架构内部和外部。整个系统分为界面展 示层,流程控制层和数据存储层。架构说明系统架构图/ / /XIWe客户端(b/s)智能客户端(c/s)MobileXErp架构中各核心

3、服务之间满足松散耦合特性,具有定义良好的接口,可通过拆分与组合,可以有针对性地构建满足不同应用场景需求的 Erp 应用系统。2.3.1适配器在集成环境中需要复用已有的应用系统和数据资源, 通过适配器可以将已有应用系统和 数据资源接入到 ERP应用系统中。通过适配器可以实现已有资源与 ERP系统中其它服务实现双向通讯和互相调用。 首先通过适配器可以实现对已有资源的服务化封装,将已有资源封装为一个服务提供者,可以为 ERP应用系统中的服务消费者提供业务和数据服务,其次通过适配器,也可以使已有资源可 以消费ERP应用系统中的其它服务。2.3.2资源仓库资源仓库主要功能是提供服务描述信息的存储、 分类

4、和查询功能。 对于广义的资源仓库 而言, 除了提供服务类型的资源管理外, 还需要提供对其它各种资源的管理能力, 可管理对 象包括:人员和权限信息、流程定义和描述、资源封装服务、服务实现代码、服务部署和打 包内容、以及环境定义和描述信息。资源仓库首先需要提供服务描述能力, 需要能够描述服务的各种属性特征, 包括:服务 的接口描述、服务的业务特性、 服务的质量特征 ( 如:安全、可靠和事务等 ) 以及服务运行的 QoS属性。2.3.3连通服务连通服务是ERP基础技术平台中的一个重要核心服务, 典型的连通服务就是企业服务总线(Enterprise Service Bus ,ESB),它是服务之间互相

5、通信和交互的骨干。连通服务的主要功能是通信代理, 如服务消费的双向交互、 代理之间的通信、 代理之间的通信质量保障以 及服务运行管理功能等。连通服务还需要保证传输效率和传输质量。 连通服务一般应用于连接一个自治域内部的 各个服务,在自治域内部服务都是相对可控的,所以连通服务更多应该考虑效率问题。2.3.4流程服务流程服务是为业务流程的运行提供支撑的一组标准服务。业务流程是一组服务的集合, 可以按照特定的顺序并使用一组特定的规则进行调用。业务流程可以由不同粒度的服务组 成,其本身可视为服务。流程服务是业务流程的运行环境,提供流程驱动,服务调用, 事务管理等功能。流程服务需要支持机器自动处理的流程

6、, 也需要支持人工干预的任务操作, 它支持的业务流程主要 适用于对运行处理时间要求不高的,多方合作操作的业务过程。2.3.5交互服务交互服务实现人与服务之间的交互功能。 交互服务就是需要提供一组完整的功能, 以实 现人与服务的便捷交互,既能支持多种交互渠道 ( 如浏览器方式,富客户端方式和移动接入方式等 ) ,也能支持多种交互能力 (如单点登录、 个性化、 支持各种资源的统一内容管理等 )。2.3.6协作服务协作服务用来解决自治域之间及自治域内部的交互通信。 协作服务强调标准的采用, 强 调平等协作。具体实现技术时将更多的考虑采用 wcF相关技术,以实现流程协同,服务交互, 和各种质量属性管理

7、 ( 如事务管理、可靠传输和安全管理等 )。2.3.7安全服务像ERP这样强调松散耦合的分布式集成系统, 安全性显得尤为重要。安全有时被称为一种“事关全局的考虑”,是全方位的问题,它跨越 ERP参考架构模型的各个部分。安全服务向ERP参考架构模型中其他服务提供基本的安全服务功能,包括:身份验证、 访问控制、数据加密、数据完整性和抗抵赖性,以及安全信任、身份联邦、安全会话、安全 策略等。2.3.8信息服务信息服务特指为利用上述各种基本的核心服务提供信息管理和使用的服务。 具体包括提供元数据管理功能,以一种统一的方式描述 ERP系统中所需要使用的各种信息数据。 它也提供对各种类型数据 (包括结构化

8、数据和非结构化数据 ),以及分布在不同地方的数据进行统一 的访问管理。信息服务其目标是使应用系统能够统一、 透明、 高效地访问和操纵位于网络环境中的各 种分布、异构的数据资源,为实现全局数据访问、 加快应用开发、 增强网络应用和方便系统 管理提供支持。2.3.9运行管理工具运行管理工具提供界面友好的图形化方式的监控和管理工具, 提供对各种资源和服务对象的运行管理功能。 监控管理工具需要管理核心服务, 也需要管理应用服务。 可以查看 各个服务的运行状态和历史信息,也能对服务进行启动、停止、暂停、恢复、版本升级等管 理控制操作, 同时需要提供分析和统计功能, 可以根据服务运行信息实现对系统的调整和

9、优 化操作。软件逻辑结构软件架构图数据访问接口框架从层次结构上分主要分为:表示层、服务层、业务层、数据层表示层表示层由Ul (User In terface )和UI控制逻辑组成。c/s选用wpf+智能客户端,b/s选用mvcWPF勺出现解决了三个问题:(1)更快速的去开发更丰富的用户体验 :使用WPF可以在更加快速的时间内开发出来更加丰富的界面,满足用户的需求。 WPF借助XAML来利用标记而不是编程语言(如 C#)来构造精美逼真的用户界面 (UI), 只要稍微具备一些 HTML基础知识,就可以快速地掌握XAM冲的大部分内容。消除用户界面差异:wpf可以以IE为宿主的。或 Silverlig

10、ht软件开发团队的协作问题:在软件团队中,我们比较熟悉 Developer、DBA Tester、IT Pro、Architect 等。Designer可能往往被我们忽视,但实际上,Designer的工作成果才 是与客户距离最近的。而且Designer与Developer如何配合工作,是很多团队所头疼的, 而WPF正可以解决此问题。智能客户端的优势1)充分利用终端设备的优势2)能够调用wcf3)支持在线和离线两种状态4)能够如同Web应用程序一般简单方便的部署mvc内置AJAX支持。本身含的MVC模型-视图-控制器)和本系统MWM(Model-View-ViewModel)就是双胞胎, 在de

11、mo里已经有很好的集成*注:因xaml和html是标记语言,此层大部分可用代码生成器生成。服务层采用微软的 WCF Windows Communication Foundation (WCF) 是 Microsoft 为构建面向 服务的应用提供的分布式通信编程框架平台,是 .NET Framework的重要组成部分。使用该框架,开发人员可以构建跨平台、安全、可靠和支持事务处理的企业级互联应用解决方案。WCF从一开始就是工程化的,能够简化应用程序的开发与部署,降低开发成本。用于构建面 向服务的应用程序, 不管这些程序是独立的桌面应用程序, 还是Web应用程序和服务,还是高端的企业应用程序。逻辑、

12、业务层业务层封装了实际业务逻辑,包含数据验证,事物处理,权限处理等业务相关操作,是整个应用系统的核心。 因此设计一个能够真实反映实际需要的业务层是非常必要的, 我们将实际业务具体分为业务数据与业务操作两部分。业务数据Domain Model则是根据实际业务按照现实方式用 0Q思想建模,这样很适合业务复杂的系统。通常采用自定义数据实体(Custom Data Entity )方式表达。自定义数据实体,有着良好的 性能,编译时的类型检查,数据表现方式非常直观符合实际业务的操作方式等优点, 但需要自己定义维护类,在分布式环境下需要自己编写序列化方法。此阶段负责数据交换(传输)的业务实体被称之为 DT

13、O ( Data Transfer Object )。DTO要能够支持:数据绑定、数据验证、历史记录、级联触发、合并集合、序列化与反序列化,要实现一个大的递归, 从其中的任何一个对象开始, 能够找出整个传递的所有数据。INotifyPropertyChanged 接口,这样才能够实现数据的触发,这样就要实现一个对象能够找到 其所有的集合,一个集合要能够其所有的对象,这样一样,就必须实现从对象、集合、对象 的递归,再深入一点,就实现了数据的级联触发,实现了双向数据触发、绑定。数据源的每 个属性变更,要能够在界面上反映出来, 绑定界面的改变,能够记录到后台的数据源, 并且要能够支持回滚。对于容纳这

14、些数据的 ObservableCollection 集合也支持绑定处理。(2)、数据验证。实现 IDataErrorlnfo 接口(3)对于历史记录。当实现 IEditableObject 这个接口,则必然实现了历史记录。能 够找到集合的所有更改的记录, 包括删除的记录。对于单个对象而言是能够得到历史记录和 当前数据,对于集合而言,则能够找出差异集,同时,集合也要具备集合回滚的功能。(4)级联触发,则是在实现数据绑定的基础上的, 对于常见的主从结构,当从对象的一个属性改变了,要能够自动通知其所在的集合、 集合再通知所在的对象数据改变了, 如果是多层结构,则能够自动的从最底层开始一路通知到顶层。

15、(5)合并集合、集合的处理。集合的处理与数据绑定是直接相当的。数据源找出差异集 之后,要对差异集进行处理,处理完之后,要对原始集合进行更进一步的处理,要把两个集 合进行合并处理,主要是为了同步引用。(6)同时,另外要实现的就是 Data与SDC之间的转换以及其他格式的数据与 SDO Data 数据之间的数据转换,比如 Binary/Xml/Text/Key/ 文件/等,最基本的是 SDO与 Data之间 的转换,这些转换根据需要,有时候是单向的,有时候是双向的,根据业务需求而定。(7)序列化与反序列化,主要是涉及到 Binary和XML序列化。业务操作业务操作负责对业务数据进行各种业务相关的处

16、理,例如验证, 流向,整合,事物,权限等,但它不负责有关对数据源的操作。采用整合业务数据与业务方式来操作,将业务数据与相关的业务操作封装在一起称为业务实体,业务实体作为统一的业务层为表示层提供服务, 同时也负责作为 DTO在各个层次间传输,这样完整的 Domain Model设计方式,每个业务实体都可以做为一个单独组件形式存在,对于组件化复用有着莫大的好处。数据层数据层的宗旨就是为数据源提供一个可供外界访问的接口, 我们应该选用一种能够提供数据源无关的抽象数据访问接口并通过在其下挂接各种不同的 DataProviador 来访问数据源的数据层组件,这样做便于移植到不同的数据源上。从纷繁芜杂的关

17、系数据模型中抽象出概念模型。这样开发人员可以只需着眼概念模型, 而不必要去关心纷繁芜杂的关系数据模型,从而提高开发效率。那么如何能够做到这一点答案就是:Linq 和 Entity FrameworkLINQ几乎支持你所期望的所有数据源: 数据对象、SQLServer数据库、XML和数据集当然也支持 Entity(LINQ to Entities),LINQ 有如下优势:1、 无需复杂学习过程即可上手下面我给出一个简单的 C#示例。Strin g QueryStri ng = On e, Two, Three, Four, Five ;要想查找其中长度大于 3的字符串,你可以使用以下查询语句:v

18、ar ThisQuery =from Strin gValuein QueryStri ngwhere 3select Strin gValue;2、 编写更少代码即可创建完整应用。3、 更快开发错误更少的应用程序。4、 无需求助奇怪的编程技巧就可合并数据源。5、 让新开发者开发效率更高。En tity Framework 包括1.实体数据模型(Entity Data Model), 开发人员通过EDM抽象出非常合适的模型。2.非常强大的client-view/mappping 引擎,用于映射数据关系3.Entity SQL 语言和LINQ查询对EDM schemas的全面支持4.ojbect

19、 services layer 供您选择以何种方式去处理查询结果。比如(行,列或作为对象)。5.提供一个开放的模型使 Entity Framework 可以处理其他的数据存储。6.En tity Framework 实现了乐观的并发模式( Optimistic Concurrency Model )7.事务处理三、具体功能简述工作流解决方案工作流引擎:该部分为工作流模型的核心部分,用于生成、管理、 角度和监控工作流的各个活动执行情况,并实现相应的人机交互。由于采用 XPDL等语言定义的工作流文件记载了相应的业务逻辑,隐藏工作流引擎通过解析该文件来了解业务流转的逻辑。 然后依据某种运行模式按照解

20、析出来的业务逻辑进行驱动,最终实现业务流程的流转。工作流定义接口:通过该接口可以进行工作流程的分析、 建模、描述和归档等工作,并将设计完毕的业务流程生成工作流引擎能够识别的语言。工作流客户接口:处理工作流运行过程中需要人为参与的操作。工作流调用应用程序接口:工作流引擎调用外部应用程序的规范。工作流引擎协作接口:不同工作流引擎之间的协作。工作流管理监控接口:监控和管理工作流所有实例状态。多语言&用户自定义标签方案数据库结构消息发布/订阅系统方案使用WCf创建发布/订阅系统有多种不同的方式,(1) 使用回调契约的发布/订阅系统(2) 使用MSM(实际通用组播的发布/订阅系统(3) 使用流的发布/订

21、阅系统方法1,2适合通知数据量较大并且发布频率比较低的应用场景。 当通知的数据量较小而且发布频率又较高时,应该使用方法 3。报表&打印方案四、系统平台&支撑组件Wpf (UI) mvc(UI)ClickOnce(智能客户端。可自动升级,离线操作 )Linq(借助于LINQ技术,我们可以使用一种类似 SQL的语法来查询任何形式的数据,普通开发人员不必学习 MsSql, mysql, orcale, access 等数据库语法,节省开发时间 )Entity(让应用程序可以用完全对象化的方法连接与访问数据库 ,修改Provider就可迁移到不同的数据库)IIS6或以上Win dows server 2003 或以上WCF服务层)Unity(是微软模式与实践团队开发的一个轻量级、可扩展的依赖注入 &反转控制容器)SQL Server Compact Editio n( 用作智能客户端离线操作 )WF(Microsoft Windows Workflow Foundation 是一个可扩展框架,用于在 Windows 平台上开发工作流解决方案)五、系统网络结构B/S在线更新本地数据库六、开发管理层面

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

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