【摘 要】面向服务体系结构(SOA)是网络飞速发展和现代企业追求高效益环境下的一种新的系统架构。本文在概述SOA架构理论的基础上,重点研究了基于SOA的校园信息管理系统设计与实现,对实现一体化的数字化校园有重要的参考意义。
【关键词】SOA架构 校园信息管理 系统设计
1 引言
在信息化高速发展的背景下,面向服务的体系结构应运而生,基于SOA体系结构的开发模式与以应用为中心的一体化应用程序相比具有高度开发性、可重用性等特点。校园信息管理系统需要从整体上变革系统布局,采用开放的技术标准,建立新的构架,在由传统构架转到新构架过程中,需要采用一些新的、开放的技术规范和方法。如何合理地把这些新的技术规范和方法应用到校园信息管理系统的流程之中,一直是被校园信息管理者广泛关注的课题。
2 SOA架构的理论概述
面向服务的体系结构是一个新的组件模型,它将应用程序的不同功能单元(称为服务),通过功能单元之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互。可以从以下两个方面具体阐述SOA理念。
首先,在软件系统架构方面。SOA不是一种语言,也不是一种具体的技术而是一种软件系统架构,它尝试给出在特定环境下推荐采用的一种架构,它与很多己有的软件技术比如面向对象技术,是互补的而非互斥的。它们分别面向不同的应用场景,用来满足不同的特定需求。
其次,在SOA的使用范围方面。SOA并不是包治百病的灵药,它最主要的应用场合在于解决当下的不同商业应用之间的业务集成问题。业务集成问题包括:大量异构系统并存;计算机硬件工作方式不同、操作系统不同、编程语言也不同;频繁的数据传输仍然速度缓慢并且不稳定、版本升级无法完成。SOA体系结构中的组件必须具有上述一种或多种角色,角色之间的关系如图2-1所示。
在这些角色之间使用了三种操作:
(1)发布(Publish):使服务提供者可以向服务代理注册自己的功能及访问接口。
(2)查找(Find):使服务请求者可以通过服务代理查找特定种类的服务,这些服务都是由上述中的服务提供者给出的。
(3)绑定(Bind):使服务请求者能够真正使用服务提供者。三种操作互相作用,服务提供者向服务代理发布服务,服务请求者通过服务代理查找所申请的服务,并绑定到这些服务上。 3 基于SOA的校园信息管理系统设计
3.1系统的功能设计
校园信息管理系统是一个庞大而又复杂的管理系统,在设计系统总体方案时,既要整合现有的软、硬件资源,实现这些不同平台的应用系统之间的数据交换、共享和集成,又要考虑系统的可扩展性,当用户需求改变时,系统功能应该能够实现方便地进行扩展。经过深入的用户需求分析,确定校园信息管理系统的功能模块包括:
(1)教务管理:教务管理系统包含注册管理、学籍管理、教学计划、选课管理、成绩管理、智能排课、用户管理、毕业审查、旁听系统管理、四六级管理、科研管理等多个模块。
(2)财务管理包括预算管理、科研项目管理、学杂费管理、贷学金管理,帐务处理,工资发放管理等功能。
(3)图书管理项目有:图书期刊入库管理、借书证管理、图书期刊借阅归还管理、图书期刊借阅查询管理、图书期刊归还查询管理、图书期刊报废管理、图书期刊盘点管理、图书期刊查询。
(4)办公自动化系统:包括用户登录和注册模块、用户和角色管理模块、用户考勤及其设置模块、我的文档管理模块、短信管理平台模块、以及公文流转模块等。
(5)学生管理系统包括成绩信息管理、课程信息管理、班级信息管理和学籍信息管理功能。
(6)网络教学系统:包括数据库管理模块、基本业务模块、信息查询浏览模块等。
3.2系统解决方案设计
本系统基于SOAP和Web services,实现了各个分布式系统问的跨平台交互,各个子系统是分散藕合的,这样就克服了传统的紧密藕合的分布式系统缺点,达到了良好的可扩展性,可以满足灵活多变的业务逻辑需求。主要包括两部分:
(1)各个分院的内部应用系统,可以基于传统的应用系统模型来实现。
(2)跨平台数据共享与交换问题、系统安全问题、可扩展性等问题,根构造一种基于XML Web services的软件体系结构模型和综合解决方案,这样可以方便地建立基于XML Web services的信息集成系统。
4 基于SOA的校园信息管理系统实现
在本文研究的校园信息管理系统中,客户程序包含在系统的前台Web服务器程序中。通过SOA技术,从数据库schooldat.mdb中提取更新数据,在本地检查数据是否冗余,如果没有冗余,则本地数据库中添加数据。实现的部分关键代码如下所示:
//检查并更新课程信息
bool CheckData()
//生成代理类实例
……
schoo1dataProxy.schooldata sd = new schooldataProxyschooldata()
//通过调用远程方法返回的数据集取得数据
DataSet ds = sd.finddata();
foreach(DataRow r in ds.Tables[0].Rows) {
……}
//检查并更新数据}
5小结
总之,与传统软件系统相比,SOA强调和突出的是“使用者”,它对于用户而言成了名符其实的“服务”。这是一个里程碑式的转变。以往的校园信息管理系统更多的是一种技术,而SOA架构下的校园信息管理系统的服务是完好封装的,可以通过标准接口多次调用的。对使用者而言。因此,基于SOA体系构建新一代信息管理系统就成为趋势。
参考文献:
[1]李藏.面向服务架构的应用集成平台的研究与开发[D].华中科技大学学位论文,2005:23-25.
[2]吴家菊,刘刚,席传裕.基于Web服务的面向服务架构研究[J].现代电子技术,2007:14-17.
[3]林磊.管理信息系统中基于角色的权限控制[J].计算机应用研究。