系统架构设计方案

上传人:鲁** 文档编号:548334408 上传时间:2024-01-29 格式:DOCX 页数:13 大小:244.83KB
返回 下载 相关 举报
系统架构设计方案_第1页
第1页 / 共13页
系统架构设计方案_第2页
第2页 / 共13页
系统架构设计方案_第3页
第3页 / 共13页
系统架构设计方案_第4页
第4页 / 共13页
系统架构设计方案_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《系统架构设计方案》由会员分享,可在线阅读,更多相关《系统架构设计方案(13页珍藏版)》请在金锄头文库上搜索。

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

2、、健壮性和低成本。高性能对于企业级商业软件来说,软件架构需要尽可能地使软件具有最高的性能,支持最大的并发性。健壮性企业级的商业软件要求软件是可靠的和无缺陷的。现在的架构一般是, 服务器模式的。软件的可靠和健壮主要依赖与服务器。服务器的稳定通过良好的代码和完备的测试能够解决这 个问题。低成本企业级商业软件还有一个很重要的要求:低成本。软件架构要求简单、易掌握,复杂度低,易 于维护和扩展,易于测试。2.2架构定义本架构以XML为整个系统的交互接口,包括系统架构内部和外部。整个系统分为界面 展示层,流程控制层和数据存储层。2.3架构说明系统架构配置&规则报表安全服务交互服务信息服务流程服务协作服务连

3、通服务功能服务资源仓库适配器运行管理工具jr-rarWeb客户端(b/s)智能客户端(c/s)Mobile辅助工具企业控制系统Erp 架构中各核心服务之间满足松散耦合特性,具有定义良好的接口,可通过拆分与组合, 可以有针对性地构建满足不同应用场景需求的 Erp 应用系统。2.3.1 适配器在集成环境中需要复用已有的应用系统和数据资源, 通过适配器可以将已有应用系统和数 据资源接入到 ERP 应用系统中。通过适配器可以实现已有资源与 ERP 系统中其它服务实现双向通讯和互相调用。首先 通过适配器可以实现对已有资源的服务化封装, 将已有资源封装为一个服务提供者, 可以为 ERP 应用系统中的服务消

4、费者提供业务和数据服务,其次通过适配器,也可以使已有资源 可以消费 ERP 应用系统中的其它服务。2.3.2 资源仓库资源仓库主要功能是提供服务描述信息的存储、 分类和查询功能。 对于广义的资源仓库 而言, 除了提供服务类型的资源管理外, 还需要提供对其它各种资源的管理能力, 可管理对 象包括:人员和权限信息、流程定义和描述、资源封装服务、服务实现代码、服务部署和打 包内容、以及环境定义和描述信息。资源仓库首先需要提供服务描述能力, 需要能够描述服务的各种属性特征, 包括:服务 的接口描述、服务的业务特性、服务的质量特征(如:安全、可靠和事务等 )以及服务运行的QoS 属性。2.3.3 连通服

5、务连通服务是 ERP 基础技术平台中的一个重要核心服务,典型的连通服务就是企业服务总线 (Enterprise Service Bus ,ESB) ,它是服务之间互相通信和交互的骨干。连通服务的主要功能是 通信代理, 如服务消费的双向交互、 代理之间的通信、 代理之间的通信质量保障以及服务运行 管理功能等。连通服务还需要保证传输效率和传输质量。 连通服务一般应用于连接一个自治域内部的各 个服务,在自治域内部服务都是相对可控的,所以连通服务更多应该考虑效率问题。2.3.4 流程服务流程服务是为业务流程的运行提供支撑的一组标准服务。业务流程是一组服务的集合, 可以按照特定的顺序并使用一组特定的规则

6、进行调用。业务流程可以由不同粒度的服务组成, 其本身可视为服务。流程服务是业务流程的运行环境,提供流程驱动,服务调用, 事务管理等功能。流程服务需 要支持机器自动处理的流程, 也需要支持人工干预的任务操作, 它支持的业务流程主要适用于对 运行处理时间要求不高的,多方合作操作的业务过程。2.3.5 交互服务交互服务实现人与服务之间的交互功能。 交互服务就是需要提供一组完整的功能, 以实 现人与服务的便捷交互,既能支持多种交互渠道(如浏览器方式,富客户端方式和移动接入方式等 ),也能支持多种交互能力 (如单点登录、个性化、支持各种资源的统一内容管理等)。2.3.6 协作服务协作服务用来解决自治域之

7、间及自治域内部的交互通信。 协作服务强调标准的采用, 强 调平等协作。具体实现技术时将更多的考虑采用 WCF 相关技术,以实现流程协同,服务交 互,和各种质量属性管理 (如事务管理、可靠传输和安全管理等)。2.3.7 安全服务像 ERP 这样强调松散耦合的分布式集成系统,安全性显得尤为重要。安全有时被称为 一种“事关全局的考虑” ,是全方位的问题,它跨越 ERP 参考架构模型的各个部分。安全服务向 ERP 参考架构模型中其他服务提供基本的安全服务功能, 包括: 身份验证、 访问控制、数据加密、数据完整性和抗抵赖性,以及安全信任、身份联邦、安全会话、安全 策略等。2.3.8 信息服务信息服务特指

8、为利用上述各种基本的核心服务提供信息管理和使用的服务。 具体包括提 供元数据管理功能,以一种统一的方式描述 ERP 系统中所需要使用的各种信息数据。它也 提供对各种类型数据 (包括结构化数据和非结构化数据 ),以及分布在不同地方的数据进行统一的 访问管理。信息服务其目标是使应用系统能够统一、 透明、高效地访问和操纵位于网络环境中的各 种分布、异构的数据资源,为实现全局数据访问、 加快应用开发、 增强网络应用和方便系统 管理提供支持。2.3.9 运行管理工具运行管理工具提供界面友好的图形化方式的监控和管理工具, 提供对各种资源和服务对象 的运行管理功能。 监控管理工具需要管理核心服务, 也需要管

9、理应用服务。 可以查看各个服务的 运行状态和历史信息,也能对服务进行启动、停止、暂停、恢复、版本升级等管理控制操作, 同时需要提供分析和统计功能, 可以根据服务运行信息实现对系统的调整和优化 操作。2.4 软件逻辑结构软件架构Binding(数据通道)View Model (表示模式)IViewModel(数据源接口)框架从层次结构上分主要分为:表示层、服务层、业务层、数据层表示层表示层由 UI ( User Interface )和 UI 控制逻辑组成。 c/s 选用 wpf+ 智能客户端 ,b/s 选用 mvcWPF 的出现解决了三个问题 :(1) 更快速的去开发更丰富的用户体验:使用W

10、PF,可以在更加快速的时间内开发出来更加丰 富的界面 ,满足用户的需求。 WPF 借助 XAML 来利用标记而不是编程语言(如 C# 来构造精美逼真的用户界面 (UI), 只要稍微具备一些 HTML 基础知识,就可以快速地掌握 XAML 中的大部分内容。(2) 消除用户界面差异 :wpf 可以以 IE 为宿主的。或 Silverlight(3) 软件开发团队的协作问题 : 在软件团队中 ,我们比较熟悉 Developer 、DBA 、Tester 、IT Pro Architect等。Designer可能往往被我们忽视,但实际上Designer的工作成果才是与客户距 离最近的。而且 Desig

11、ner 与 Developer 如何配合工作 ,是很多团队所头疼的 ,而 WPF 正可 以解决此问题。智能客户端的优势1) 充分利用终端设备的优势2) 能够调用 wcf3) 支持在线和离线两种状态4) 能够如同 Web 应用程序一般简单方便的部署 mvc 内置 AJAX 支持。本身含的 MVC (模型 -视图 -控制器 )和本系统 MVVM(Model-View-ViewModel) 就是双胞 胎,在 demo 里已经有很好的集成* 注:因 xaml 和 html 是标记语言,此层大部分可用代码生成器生成。服务层采用微软的 WCF , Windows Communication Foundat

12、ion (WCF)是 Microsoft 为构建面向服务的应用提供的分布式通信编程框架平台,是 .NET Framework 3.5 的重要组成部分。 使用 该框架,开发人员可以构建跨平台、 安全、可靠和支持事务处理的企业级互联应用解决方案。 WCF 从一开始就是工程化的,能够简化应用程序的开发与部署,降低开发成本。用于构建 面向服务的应用程序,不管这些程序是独立的桌面应用程序,还是Web 应用程序和服务,还是高端的企业应用程序。逻辑、业务层业务层封装了实际业务逻辑,包含数据验证,事物处理,权限处理等业务相关操作, 是整个应用系统的核心。 因此设计一个能够真实反映实际需要的业务层是非常必要的,

13、将 我们 实际业务具体分为业务数据与业务操作两部分。业务数据Domain Model 则是根据实际业务按照现实方式用 OO 思想建模,这样很适合业务复杂的系 统。通常采用自定义数据实体( Custom Data Entity )方式表达。自定义数据实体,有着良好 的性能, 编译时的类型检查, 数据表现方式非常直观符合实际业务的操作方式等优点, 但需 要自己定义维护类,在分布式环境下需要自己编写序列化方法。此阶段负责数据交换 (传输 )的业务实体被称之为 DTO ( Data Transfer Object )。DTO 要能够支持:数据绑定、数据验证、历史记录、级联触发、合并集合、序列化与反序列

14、化, 要实现一个大的递归, 从其中的任何一个对象开始, 能够找出整个传递的所有 数据。(1) 、 数 据 的 绑 定 支 持 。 要 实 现 要实现IEditableObject 接 口 , 对 于 状 态 的 变 化INotifyPropertyChanged 接口,这样才能够实现数据的触发,这样就要实现一个对象能够找到 其所有的集合,一个集合要能够其所有的对象,这样一样,就必须实现从对象、集合、对象 的递归,再深入一点,就实现了数据的级联触发,实现了双向数据触发、绑定。数据源的每个属性变更,要能够在界面上反映出来要能够支持回滚。对于容纳这些数据的绑定界面的改变,能够记录到后台的数据源Obs

15、ervableCollection 集合也支持绑定处理。并且(2) 、数据验证。实现IDataErrorInfo 接口(3) 对于历史记录。 当实现 IEditableObject 这个接口, 则必然实现了历史记录。 能够找到 集合的所有更改的记录, 包括删除的记录。 对于单个对象而言是能够得到历史记录和当前 数据,对于集合而言,则能够找出差异集,同时,集合也要具备集合回滚的功能。(4) 级联触发,则是在实现数据绑定的基础上的,对于常见的主从结构,当从对象的一 个属性改变了, 要能够自动通知其所在的集合、 集合再通知所在的对象数据改变了, 如果是多层 结构,则能够自动的从最底层开始一路通知到顶层。(5) 合并集合、集合的处理。集合的处理与数据绑定是直接相当的。数据源找出差异集 之后, 要对差异集进行处理,处理完之后,要对原始集合进行更进一步的处理,要把两个 集合进行合并处理,主要是为了同步引用。(6) 同时,另外要实现的就是 Data 与 SDO

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号