高校信息化平台遗留系统的重用设计与实现(2)

来源:网络(转载) 作者:汪维 刘鹏 发表于:2011-08-16 13:59  点击:
【关健词】遗留系统;web服务组件;信息孤岛;重用设计;高校信息一体化
遗留代码中面向对象代码比率是指遗留代码中面向对象性质的代码所占比重来评估重用代价;工程文档完备程度是指遗留系统项目开发生命周期里的文档的完备程度,可以体现遗留系统被重用的复杂度;系统结构复杂度从系统

  遗留代码中面向对象代码比率是指遗留代码中面向对象性质的代码所占比重来评估重用代价;工程文档完备程度是指遗留系统项目开发生命周期里的文档的完备程度,可以体现遗留系统被重用的复杂度;系统结构复杂度从系统结构方面来评估遗留系统的重用复杂度;数据标准化程度从数据兼容性方面来评估遗留系统的重用复杂度;系统中功能模块耦合度从解耦角度来评估遗留系统的重用复杂度。
  1.1.2 遗留代码解耦设计
  遗留系统中,对遗留代码解耦分析需要以下两个步骤:1)提取面向过程遗留代码的对象信息。对面向过程的函数与全局变量或者函数参数之间的关系进行收集,再通过聚类方法[3]将其归纳到不同的抽象分组,从而获得总的对象信息。而对使用面向对象方法编程的遗留代码,其中类和接口的函数等对象信息可以直接被提取。2)提取面向对象遗留代码的组件信息。将所有的对象信息块里的类和接口里的方法或函数,运用软件聚类的方法进行归类,形成可封装成Web服务的组件信息。此时,用于聚类的数据源就是这些遗留系统代码中的方法和函数,我们要对这些已汇聚的方法和函数重新进行聚类分析,把遗留系统中可以重构为服务的部分的功能代码重组为组件。
  1.1.3 遗留系统的服务封装设计
  遗留系统的封装一般可以通过数据、组件和业务逻辑三个层次来进行。
  1)数据层的封装。遗留系统往往包含类型复杂的数据库,像Oracle、Access、MS SQL以及MySQL等等。本文对数据层的封装主要采用Java数据库连接。将Java语言和JDBC结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行,这也是Java语言“编写一次,处处运行”的优势。
  2)组件层的封装。遗留代码经过清洗和提炼以后,类和方法被重组为一些新的组件。由于提炼出的遗留代码包含了Java的类和方法以及其他语言创建的一些动态链接库,Java粘合代码将采用不同的调用方式将其注入到AXIS SOAP服务器,从而封装成可以向UDDI发布的Web服务[4]。
  3)业务逻辑层的封装。业务逻辑层封装主要是把Web服务组件组建成一定的业务逻辑,并把业务流程封装成一个Web服务向UDDI注册。业务逻辑层采用BPEL流程控制,组合业务服务层的原子服务,将多个原子服务构造为一个组合服务,实现了服务的复用。
  4)应用程序的封装。对于一个功能独立,不需要解耦的应用程序可以直接使用AXIS SOAP应用服务器进行封装。
  1.2 高校遗留系统重用的原型实现
  本文依据某大学现实情况,进行原型实现。该大学是由三个高校合并的一所综合性大学,经过整合分别成为该大学的三个分院——机电工程学院、计算机科学与技术学院和经济贸易学院。这三所高校地处城市的不同区域,都有着自己单独开发或者购买的信息管理系统。这些系统都是开发或者购买不久,现在还能很好的进行业务处理,都有一批接受过正式培训的操作人员。为了紧贴社会人才需求变化和高校发展趋势,该综合大学新成立一些院系和业务部门,将不需要的院系和业务部门进行裁撤,并对行政机构进行整合。该校信息管理部门急需要一套敏捷的,能快速适应业务变化的信息管理系统,同时希望能够尽量重用“遗留系统”,降低开发风险,减少项目开发和人员培训的费用,最终降低成本,减少预算。
  原型开发首先对各个分院的“遗留系统”进行分析和领域划分,除去多余的、过时的和不适合重用或者重用价值不高的旧有系统,将可重用的“遗留系统”进行Web服务封装,并提供统一的API以便外部调用。其次在各个分院分别建立私有UDDI注册中心。最后将私有UDDI注册中心、封装好的Web服务和所有的服务请求者客户端系统都部署在P2P网络上。在集成系统设计里,分院之间的信息系统通过互联网进行信息交互,服务请求者、服务提供者和UDDI私有注册中心都作为P2P网络中一个独立的节点。UDDI私有注册中心互为备份,只要有一个UDDI能提供服务,各个分院的信息系统仍然可以正常的进行服务发布和服务查询。校外IP的服务请求在通过身份验证以后也能访问校内资源,最大限度的实现高校教育资源的充分利用。
  1.2.1遗留系统的重用
  经过对遗留系统的评估和遗留代码的解耦分析, 机电工程学院的OA系统和教学管理系统、计算机科学与技术学院的OA系统和教学视频点播系统以及经济贸易学院的OA系统和图书馆管理系统可以被重用。三个分院的遗留系统经过解耦分析,得到六个功能独立的可重用组件。这些遗留系统在开发时充分考虑了系统的扩展性,所以在解耦分析后绝大部分代码可以不作改动。在经过简单的调整以后,这些可重用组件都可以做为一个单独的应用程序向外提供相应的功能服务,所以可以采用Axis SOAP工具将其封装成Web服务。
  2 结论
  本文根据当前高校发展趋势和现阶段需求,设计了面向高校信息化平台遗留系统重用的解决方案,提出将高校现有的遗留系统封装为可重用的Web服务组件,同时设立UDDI注册中心为各个分院的提供Web服务注册,面向全校提供Web服务查询。UDDI注册中心之间互为备份,数据共享,实现了信息系统良好的动态性和鲁棒性。由于使用Web服务技术对“遗留系统”进行重用,实现了高校信息化平台建设中的经济性和业务连续性,为目前高校信息化建设提供一个较为完整的参考模型。
  参考文献:
  [1] Canfora G,Fasolino A R,Frattolillo G,et al. Migrating interactive legacy systems to web services[C].CSMR’06: In Proceedings of the Conference on Software Maintenance and Reengineering,2006: 24-36
  [2] 代祖华,万秀丽.遗留系统综合评价指标体系的构建研究[J].科学经济社会,2007(2).
  [3] LEE E,SHIN W,LEE B,et al. Extracting Components from Object-Oriented System: A Transformational Approach[J]. IEICE Transactions on Information and Systems,2005 E88-D(6):1178-1190
  [4] HANSEN M D. SOA Using JavaTM Web Services[M].PEARSON EDUCATION,INC.2009.
 

(责任编辑:南粤论文中心)转贴于南粤论文中心: http://www.nylw.net(南粤论文中心__代写代发论文_毕业论文带写_广州职称论文代发_广州论文网)
顶一下
(0)
0%
踩一下
(0)
0%


版权声明:因本文均来自于网络,如果有版权方面侵犯,请及时联系本站删除.