SSPS系统技术实现解决方案DOTNET.docx
- 文档编号:11125318
- 上传时间:2023-02-25
- 格式:DOCX
- 页数:19
- 大小:346.77KB
SSPS系统技术实现解决方案DOTNET.docx
《SSPS系统技术实现解决方案DOTNET.docx》由会员分享,可在线阅读,更多相关《SSPS系统技术实现解决方案DOTNET.docx(19页珍藏版)》请在冰豆网上搜索。
SSPS系统技术实现解决方案DOTNET
lian系统技术实现解决方案
技术方案原则
根据超算公司所承建过的诸多大型的企业级应用系统平台的经验,结合本次项目的特点,我们认为在整体的技术方案设计中,需要遵循以下的原则:
1.战略性
系统规划从张家港口岸的发展战略目标出发,分析内部的业务和管理对信息系统的需求,总体规划,分步实施。
2.实用性
系统规划要为实施工作提供指导,为进一步实施提供依据;方案选择应追求实用性,必须切合张家港口岸的实际,结合其特有的业务流程。
技术上要有一定高度,手段强调实用,不片面求洋、求新。
3.先进性
系统设计应采用先进的、成熟的且可持续发展的技术方法,并充分体现先进的管理思想和客户服务理念,与张家港口岸的实际相结合。
4.扩展性
本系统要有良好的兼容性、可移植性和升级前景。
在设计中,要保证系统结构模块化,功能模块可以平滑扩充。
5.整体性
整个系统应遵循总体的开发规范和接口标准,同时要考虑和现有部分应用系统的接口,以保证系统结构的完整性和信息的一致性。
6.经济性和前瞻性
系统力求设计紧贴用户需求,同时要为可能的增值服务留有空间,总体上具有良好的性价比。
7.可管理性和可维护性
由于整个系统是一个较为复杂的系统,因此要考虑产品应具有良好的可管理性和可维护性。
8.安全性
要保证系统的安全性-平台运行要稳定可靠;数据的安全性-重要数据的完整性、一致性和可恢复性。
应用软件集成与定制化总体指标
1.应用系统应适应和支持快速构建与动态重构,具有可扩展性。
2.平台应采用当前最先进的软件技术来实现,支持B/S结构。
如构件技术、中间件技术、WEB技术、AJAX技术、XML技术和WebService技术等。
3.平台可以在WindowsNT/98/2000/2003等多种操作系统平台上运行。
4.平台支持多种数据库管理系统,鉴于张家港口岸货物进出的频繁程度及数据库的安全性考虑,我们建议采用Oracle数据库。
5.平台应该是一个通用、开放的平台,应能支持EAI应用的定制和快速实施,大幅度缩短应用集成与定制化的实施周期。
应用系统总体结构设计
应用系统总体结构设计如图所示,整个系统分为网络接入系统、信息交换系统、应用处理系统、数据库系统四个子系统。
图2.5.1应用系统总体结构设计
图2.5.2功能模块图
网络接入系统要同时考虑网络结构的可靠性和客户端接入的可靠性。
解决网络结构的可靠性,主要是避免网络中的单点故障,比如主干网采用双网结构等。
对于用户端,一个用户可以同时具备多种接入方式,其中一种为主要接入方式,另一种为备份方式。
信息交换系统主要是指用户与物流信息平台之间传输、查询信息的界面。
根据不同的信息传输协议,使用WEB服务器、MAIL服务器、FTP服务器、X.400服务器等,分别提供HTTP、POP3/SMTP、FTP、X.400等协议的传输。
考虑到系统的性能与可靠性,每一种服务可以使用多台服务器承担。
在这些服务器前端,配置负载平衡设备,实现多台服务器平均分担系统负荷,同时在某些服务器发生故障时,可以由正常的服务器接替,不影响用户的正常传输。
应用处理系统包括EDI服务器、增值信息处理服务器、与网络接入系统之间的通信协议接口、与数据库系统之间的数据库联接池,以及其他应用服务器。
EDI服务器专门用于处理电子报文,它通过通信协议接口从前端的WEB、MAIL、FTP以及X.400服务器上接收电子报文,根据发送方、接收方信息进行分发。
数据库系统是信息平台的基础。
设计采用关系数据库和对象映射的开发模式。
在这种模式下,提供一个持久层,可以从一个数据存储源中生成对象,并可以把数据保存到数据存储源中去。
这一层向技术人员隐藏了对象存储的细节。
所有持久对象都使用持久层的标准接口,如果数据存储机制改变了,只有持久层需要改变。
Microsoft.NET软件架构
整个应用软件的B/S部分将以Microsoft.NET技术为主,这也是当前较新、较有效的软件集成模式。
Microsoft.NET模型把实现多层结构服务的工作划分为两部分:
工程师实现商业和表达逻辑,以及由Microsoft.NET平台提供的标准的系统服务。
工程师可以依赖于这个平台为开发中间层服务中遇到的系统级硬件问题提供解决方案。
Microsoft.NET应用程序模型通过在建立多层应用程序中最小化其复杂程度,为简化和加速应用程序的集成与定制化迈出了重要的一步。
1)Microsoft.NET技术基础
NetFramework是微软公司继WindowsDNA以来的新的开发平台。
.NetFramework是以一种类似于Java系统的虚拟机方式运行和管理的编程平台,通过CLR(公共语言运行时)为基础,支持多种语言(C#、VB.NET、C++、Python等)的开发,换句话说,.NetFramework是支持多语言的运行环境。
.NET是Microsoft的XMLWeb服务平台。
不论操作系统或编程语言有何差别,XMLWeb服务能使应用程序在Internet上传输和共享数据。
2)敏捷性
Microsoft.NET平台包含广泛的产品系列,它们都是基于XML和Internet行业标准构建,提供从开发、管理、使用到体验XMLWeb服务的每一方面。
XMLWeb服务将成为您今天正在使用的Microsoft的应用程序、工具和服务器的一部分并且将要打造出全新的产品以满足您所有业务需求。
Web站点把信息呈现给用户:
它们是服务器向用户传递信息的媒介。
XMLWeb服务提供应用程序与应用程序之间交互的直接手段。
应用程序以本地为宿主,也可以以远程系统为宿主,利用XML和SOAP消息通过Internet进行交互。
Microsoft.NET企业级服务器,包括MicrosoftWindows®2000服务器系列,为部署、管理和编排XMLWeb服务构筑了Microsoft.NET服务器结构。
由于在设计中考虑了使命关键的性能,这些服务器不仅可以提供给企业足够的敏捷性,以满足他们通过XMLWeb服务将系统、应用程序与合作伙伴集成的需要,而且其灵活性也可适应不断变化的业务要求。
3)安全性
由于借助了内置的Windows身份验证和基于每个应用程序的配置,可以保证应用程序是安全的。
4)三层结构
Microsoft.NET的一个显著优点是分层技术,典型的3层结构应用如下图所示:
图2.5.3三层架构
和用户直接交互的是表示层,主要负责处理用户的请求并展示操作结果给用户,由采用ASP.NET,AJAX等技术的支持。
ASP.NET技术向客户层提供了易于访问的Internet型服务组件功能。
ASP.NET技术使用户接口开发者更加容易地向任何浏览器用户提供动态页面的服务。
ASP.NET技术让基于.NET技术的工程师有更大的自由来在.NET语言中提供完全的动态服务。
业务逻辑层主要负责实际业务逻辑操作,执行表示层的请求,主要由业务对象承担。
数据层由ADO.NET和O/RMapping映射数据库组成,主要负责业务数据的持久化。
超算组件化集成与定制化理论
超算针对所有客户采用组件化机制来集成与定制化其客户化物流供应链平台。
超算拥有一应用系统组件解决方案来克服所有企业级系统都必须面对的以下五项挑战:
1)IT策略的五项挑战
如何妥善的运用网路和资讯科技强化竞争力,并建立一套完善的IT策略,贯彻执行,将是企业电子化成败的关键。
然而,身为企业的经营者或资讯决策者,在建立IT策略时通常会面临以下五项挑战:
●第一项挑战,快速回应不断改变的商业需求(ResponsivenesstoChange)
随着企业规模与需求的变迁,企业最大的挑战之一在于如何以最少的投入满足系统升级及转换的需求及相应的业务扩张。
●第二项挑战,整合既有资讯系统(IntegrationwithExistingSystems)
企业对资讯系统的开发是不断累积的投资,企业希望整合新旧应用系统与作业流程的并提高各个应用系统的再使用性以及价值,以避免企业一再需要撰写新程序来取代转换既有功能。
●第三项挑战,系统集成与定制化的生产效能(DevelopmentProductivity)
为提升整体竞争力,企业电子化的需求不断增加,企业的挑战来自于如何以快速及最有效率的方式集成和导入合用的应用系统。
●第四项挑战,兼容并蓄的系统架构(FreedomtoChoose)
为了满足企业独特的营运需求,企业面对的挑战便是要在众多可能方案中,因地制宜的搭配出适合企业所需的最佳化解决方案,从服务器(servers),工具(tools)到功能组件(components)等,都需提供企业量身订做切合所需的选择。
●第五项挑战,资讯安全管理(InformationSecuritymanagement)
企业内部与外部资讯应用的普及对企业而言,具有提升竞争力的指标性意义,但同时也让企业的资讯安全面临危机。
如何兼顾资讯透明化与资讯安全是企业不得不面对的挑战。
超算ApplicationFramework解决方案,就是要简化企业软件开发流程,降低开发成本,并确保应用系统集成的高品质与低风险,让企业得以因应长久以来所面临的挑战。
2)超算ApplicationFramework解决方案特点:
●兼容中立的运算环境PlatformNeutral:
超算ApplicationFramework采用WebService/XML等开放标准,兼容于各式系统环境,加上独特的整合平台,使企业内外部的新旧系统都能轻易的整合串连。
●组件化集成与定制化基础Component-based:
超算ApplicationFramework解决方案以组件化架构为基础,可缩短软件开发时间与成本,并可重复使用,大大的提升软件开发效率。
●高稳定性及高扩充弹性Reliability&Scalability:
超算ApplicationFramework解决方案为采用n-tier的架构,将使用者界面、企业营运流程规则、及相关数据库明确的模组化,加上严谨的面向对象的分析与测试流程,其稳定性高及扩充弹性皆非一般传统软件所能比拟。
3)超算ApplicationFramework解决方案的效益与优势:
超算ApplicationFramework-企业应用程序集成与定制化不可缺的加速器。
Micarosoft.NET为现今全球IT界最成功的软件组件开发标准环境之一,已在企业应用软件开发上竖立全新的里程碑,并成为业界共同遵循的公开标准。
以Micarosoft.NET技术与组件化架构为基础来开发出来的超算ApplicationFramework,提供多项企业应用程序所不可或缺的基础组件,及程序产生与管理工具,不但每个组件均具备完整的管理功能与机制,以协助快速的集成与定制化优质的应用系统,更可作为企业建立自有组件库的基础,创造e-Business的最高价值。
组件充分再利用提高程序工程师的生产力
内建了多项基础软件组件,可重复使用或自由延伸,大大提高IT团队的生产力。
帮助企业在导入Micarosoft.NET标准的开始,即可以避免不必要的错误尝试,降低风险,更快速容易的集成与定制化企业应用系统。
标准架构的软件产品系统整合的最佳基础
超算ApplicationFramework根据Micarosoft.NET各项软件标准开发,并导入世界级的设计范例(designpatterns)的应用架构,提供充分发挥平台整合的优势。
只要符合SOAP规范,任何程序与组件都能轻易地与超算ApplicationFramework搭配使用,产生出能应付快速变化需求的高弹性系统。
开放程序代码系统集成的最佳范例
超算ApplicationFramework包含程序代码,程序工程师可自由的参照学习,并可依据需求修改或整合至新的应用系统。
如此一来,不但可充分享受使用超算ApplicationFramework功能强大的基础组件,更可藉以集成与定制化出符合个别企业要求的新组件,完全不必担心会绑死在单一解决方案维护困难的风险。
4)超算ApplicationFramework服务组件及工具
超算ApplicationFramework包括七大类服务组件及工具:
共用服务组件(CommonServiceComponents),提供目前企业e化应用程序最常用到的基础服务;显示层服务组件(PresentationServiceComponents),提供网际网路应用系统前端显示介面所需处理的复杂功能;加上商业应用服务组件(BusinessServiceComponents),以快速因应不断改变的规则及复杂数据;除此之外,并提供程序产生工具(CodeGenerator/Tools),为您自动产生繁琐重复的各项程序架构及数据处理组件;加上功能强大的管理平台(WebApplicationFrameworkandConsole),使您能在最短的时间,甚至不需要写程序,就能完成简单的应用系统。
另外我们的工作流程管理WorkflowManagement组件化的功能模组,可简化导入程序,可以最有效率的方式协助企业进行商业流程整合,达成提升商业流程管理效率的目标。
超算的系统集成/数据交换Integration/EDI模组可有效地提供与企业内外系统沟通的桥梁。
共用服务组件CommonServiceComponents
1)XML产生器(XMLMarkup)
将由后端数据来源ODBC,ADO.NET等所取得的数据,转换为电子商务最佳的交换文档格式XML。
2)系统记录(Logger)
提供简易的API并透过动态的弹性设定,根据系统的需求,分等级及类别,详细记录各项系统作业状况。
.
3)电子邮件服务(MailService)
提供界面简易的类库使系统工程师可快速在不同的程序中提供完整的电子邮件撰写,附加档案,格式设定等功能,并可处理同步与非同步传送。
4)属性设定管理(PropertyManager)
提供统一简便的属性管理服务,经由条理分明的多层次的物件架构,有效清楚的管理各项属性,避免重复及降低错误率。
5)增值补充包(Supplement)
提供包括程序性能(Performance)监控,使用者安全控管(Auditing)等功能,详细记录各项作业的执行时间,效率,及使用者活动,系统资源使用等状况。
显示层服务组件PresentationServiceComponents
1)认证服务(Authentication)
提供统一的界面和即插即用的认证服务架构,使系统工程师可轻易的整合,甚至客户定制各新旧系统的安全管理机制。
2)授权服务(Authorization)
在传统的Role-Based授权服务上,根据角色与系统状态等各种条件变量,提供更进一步的Rule-based授权服务。
3)系统菜单服务(MenuService)
4)网页产生服务(PageRenderingService)
将网页的Layout设计与其中对应的数据内容充分独立,以外部对应规则连结数据与画面配置产生所需要的网页.实现专业分工并简化维护作业。
商业应用服务组件BusinessServiceComponents
1)商业规则总管(RuleManager)
2)数据存取服务(QueryService)
数据管理组件将繁复的数据库存取动作包装成简单的程序界面,并提供增值的Debug服务,提供自动的变量Binding。
3)程序产生工具
●Entity产生器
产生和数据库相对应的对象实体。
●DAO产生器
产生实体数据存取和访问的对象。
●SQL产生器
根据实体产生相应的SQL语句,可用来存取复杂的查询结果数据。
●DBLogger产生器
根据系统管理的需求设定,产生日志记录对象用来记录应用系统的各项数据到数据库中。
网路程序架构平台WebApplicationFramework
根据业界已大量采用的MVC为基础,提供相关辅助设定范例与组件,实现Model-View-Control明确区分的架构,使工程师能够专业分工,以完成容易维护的系统。
如果软件开发采用外包方案,不论是由软件公司或是采用组件,一般企业最担心的风险仍是维修、后续问题的解决等。
超算ApplicationFramework与其他的组件化产品的最大不同是其背后的强力支援,无论是R&D、业务咨询、科技咨询、产品本身的应用、与训练等,都可即时提供服务与支援。
采用超算ApplicationFramework,可谓套装软件的投资,完整服务团队的支援。
业务流程管理
结合行业背景和张家港口岸在自身发展过程中的发生业务流程改进和变革的可能性,从整个系统的扩展性和可维护性的角度,引入必要的业务流程管理(BPM)的概念是不可缺少的。
下面先简单介绍一下相关理念:
BPM包含针对客户的具体业务流程定义的一整套规则及相关流程分析和业务整合工具,其组成结构见下图:
图2.5.4BPM组件和架构
使用BPM有很多好处:
Ø可以找出一些不必要的步骤,提高效率
Ø可以更好的控制和管理
Ø可以根据业务流程的变化随时改变流程
Ø更加灵活
Ø可以改进现有的业务流程
Ø支持图形化方式调整/跟踪流程(见下图)
图2.5.5BPM流程示例
超算提供的BPM具有以下特点:
Ø完全根据客户的业务流程进行客户化
Ø业务流程可配置
Ø具有多级权限管理
综上所述,并结合超算在以前的成功案例中对工作流解决方案的实施经验,我们对张家港口岸项目在BPM方面有如下两种方案的建议:
1)方案一:
建议选择成熟稳定的BPM工具
因为市面上大部分的BPM产品大部分还不是很成熟。
不是侵略性太强,就是和所整合的系统相对独立,达不到用户真正想要的无缝整合的目的,同时还给设计、开发、调试和维护带来了一定的风险,如果选择不合适,会给整个项目带来非常大的风险。
因此如果决定使用BPM工具,尽量选择一些大厂商,例如TIBCO、Ultimus等是非常必要的。
2)方案二:
不使用BPM工具,在项目设计过程中嵌入BPM概念
因为工作流所带来的好处,和采用BPM产品所带来的风险,我们考虑在项目设计当中,引入可配置流程管理,而不需要复杂的BPM概念,这样首先避免了系统过于复杂带来的风险,也使系统不过多的依赖与其它第三方产品,给系统的升级和扩展带来了方便,同时也没有摒弃相对先进的BPM理念。
以上两种方案超算都有成功实施按例,考虑到具体需求,推荐使用方案二。
数据访问方式
Microsoft.NET完全基于面向对象的C#语言,这就决定了采用Microsoft.NET为技术框架的系统,其设计思想必须遵从面向对象的分析和设计,而设计出整个系统的对象模型是面向对象设计的核心;同时对于大多数系统来说都不可避免的要访问数据库,尤其是像张家港电子口岸仓储管理系统这种大型系统,它的数据模型更是出乎意料的复杂。
因此如何将设计好的对象模型映射到数据模型,如何通过合理的数据模型将数据方便、快捷、高效的存储到数据库是一个非常关键的问题。
O/RMapping,即Object-RelationlMapping,它的作用是在关系型数据库和对象之间作一个映射,这样,我们在具体的操作数据库的时候,就不需要再去和复杂的SQL语句打交道,只要像平时操作对象一样操作它就可以了。
字母O代表"对象"(Object),而R则代表"关系"(Relational)。
如前所述,大部分的系统里面,都存在对象和关系数据库。
在业务逻辑层和Web表现层中,我们是面向对象的。
当对象信息发生变化的时候,我们需要把对象的信息保存在关系数据库中。
这时就需要对象模型到关系式数据模型的映射了。
这种映射可以手工做,也可以借助现成的支持O/RMapping的框架来实现。
前者开发量大,容易出错,所以当前业界比较流行的方式是采用O/RMapping的工具来解决这个问题。
当你开发一个应用程序的时候,如果不使用O/RMapping工具,需要在很多地方重复编写数据访问层的代码,用来插入,修改,删除和读取数据库里面的对象信息,而这些代码写起来总是重复的,而且如果没有经验的话,很可能出现异常情况下资源没有关闭的情况,留下内存泄漏隐患。
但是如果使用O/RMapping工具,我们只需要定义数据库表和字段与程序中类和属性的对应关系,对某种实体的映射只需要定义一次,然后在任何地方只要使用面向对象的程序操纵对象,O/RMapping工具就可以自动生成sql语句,进行对数据库的插入,修改和删除操作了;同时由于对数据库的操作全部由O/RMapping工具来处理,这样也给操作优化,不同数据库的兼容等方面提供了可能性,像现在得到业界广泛应用的NHibernate,就可以支持Oracle,DB2,Sybase,Informix,MicrosoftSQLServer,MySQL,SAPDB,Progress,Pointbase,PostgreSQL等17种业界主流的数据库,然后其内部灵活而又强大的Cache机制也可以大大提高数据库查询的效率。
以下详细列举了采用O/RMapping工具的原因
1)降低开发成本。
在使用O/RMapping之后,我们将不需要再浪费太多的时间在JDBC和SQL语句上,不需要重复编写同一对象的数据访问代码,因为O/RMapping框架已经把数据库转变成了我们熟悉的对象,我们将只需要了解面向对象开发就可以实现数据库应用程序的开发。
2)简化代码,减少BUG数量。
通过建立O/RMapping系统,能够大量减少程序开发代码,使,开发数据访问层比较简单,大大减少了出错机会。
3)提高性能
同时通过Cache的实现,能够对性能进行调优,实现了O/RMapping隔离了实际数据存储和业务层之间的关系,能够对每一层进行单独跟踪,增加了性能优化的可能。
4)隔离数据源,可以很方便的转换数据库
利用O/RMapping可以将业务层与数据存储隔开,开发人员不需要关系实际存储的方式,如果我们需要把ORACLE数据库换成SQLServer数据库,只需要修改配置文件就可,不需要修改程序。
目前市面上有很多基于O/RMapping概念的产品可以选择,例如NHibernate和IBatis等。
基于以上考虑,超算推荐使用O/RMapping工具。
国际化和本地化
系统支持多语种,不同的用户进入系统后将看到本地化的界面信息:
包括语言、日期、货币显示、数字标注、文本排序等所使用的不同习惯,还可以根据实际需要修改设置。
监控和跟踪
对于企业级系统,系统管理的管理难度主要是如何方便而全面的监督系统的运行情况,从而快速解决运行中发生的故障。
系统监控的提供能大大减小系统管理的复杂度,提高系统的可维护性。
大型系统的全面监控包括
1)网络监控
网络配置、网络性能、网络故障、网络流量、网络安全
2)服务器和其他硬件监控
内存使用信息、IRQ、I/O、DMA、CPU、电源管理、设备增补智能检测等
3)应用软件监控
主要是业务数据访问、数据交互方面的监控,具体要通过业务需求决定监控的内容,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SSPS 系统 技术 实现 解决方案 DOTNET