大型仪器设备协作共用系统的Web构架的设计与分析
2016-05-14邹旭
邹旭
摘要:为了实现大型仪器设备资源的共享,提高大型仪器设备的利用率,减少重复引进。能在大型仪器设备基本信息数据库,实验室信息库,人员信息库等数据库的基础上,实现强大的信息查询功能,以及动态信息发布,数据统计功能。下面本文通过设计和分析实现大型仪器设备协作共用管理信息系统。
关键词:大型仪器设备 协作共用系统 设计目标 分析 构架设计
随着高校大型仪器设备的数量不断增多,档次不断提高。仪器设备的管理问题日益突出,既要做到有效管理,充分应用,又要对其进行良好保养维修等。通过研究大型科学设备仪器的管理工作,结合软件开发的理论知识,设计出一个合理有效的协作共用系统,以实现大型仪器能更好的为教学科研服务,进一步能为社会提供服务,为学校创造效益的目的。
一、系统的设计目标
目前,Web服务的信息系统以其直观性,易用性,灵活性,互动性等特点,越来越被大众接受。用户可以在任何能够连接网络的计算机上,通过浏览器使用用户名登录系统,查询和管理相关信息,进行操作。系统操作简单,界面友好,管理效率提高,节省用户时间。因此系统采用ASP.NET 2.0(C#)为开发平台,SQL Server 2005 作为数据库支持,采用安全高效的B/S(Browser)模型。系统在逻辑构架上采用微软推荐的分层式结构三层构架:表示层(UI)业务逻辑层(BLL)、数据访问层(DAL).这三层分别负责不同的工作。其中数据访问层在最下层,主要负责数据库的访问,表示层和业务逻辑层通过它得到数据支持;业务逻辑层是整个系统的核心,它封装了系统的业务逻辑和规则,将业务逻辑和规则与数据访问和页面内容分开;表示层主要界面显示并完成用户与系统的交互。
二、系统分层式设计分析
通过学习和研究,分层式设计具有分散关注、松散耦合、逻辑复用、标准定义的优点,大型仪器设备协作共用管理信息系统采用了分层式构架,下面结合本系统的构架设计,对各层进行分析比较。
首先,数据访问层(Data Access Layer)位于系统构架的底层,为表示层和业务逻辑层提供数据支持。在数据访问层中,采用DAL Interface 抽象数据访问逻辑,并以DAL Factory 作为数据访问层对象的工厂模块。DAL Interface有支持MS-SQL的SQL-Server DAL的具体实现,Model模块包含了数据实体对象。
在数据访问层,采用了"面向接口编程",抽象出接口模块DAL,脱离了与具体数据库的依赖,使得有利于数据库的迁移。DAL Factory模块专门管理DAL对象的创建,便于业务逻辑层的访问。SQL Server DAL模块实现IDAL模块的接口,其中包含的逻辑就是对数据库的查、插、改、删操作。
其次,业务逻辑层(Business Logic Layer)封装了系统的业务逻辑和规划,是系统的核心,在业务逻辑层中,不能直接访问数据库,必须通过数据访问层来访问,对数据范围的业务调用,是通过接口模块IDAL来操作的。具体的数据访问与逻辑无关,层与层之间的关系是松散耦合的。这样修改数据访问的具体实现,只要不涉及IDAL的接口定义,业务逻辑层就不需要修改。本系统中的业务逻辑层采用Table Module模式,它将整个数据表看作一个完整的对象,表test_tbl的BLL模块为Best_tbl。
再次,表示层(Presentation Layer)负责系统用户和整个系统的交互,显示数据和接收用户输入的数据。在表示层涉及的数据,通过数据访问层对数据进行数据调用访问,而不是直接对数据库进行操作。在这一层中,理想的状态是不包括系统的业务逻辑,表示层的模块结构图。 MVC模式是表示层设计中的重要设计模式。MVC模式可以分为模型(Model)、视图(View)和控制器(Controller)三部分。
三、系统总体构架设计
根据大型仪器设备管理工作设计的系统功能模块划分如图所示:
通知公告:主要是对学校相关的文件,规定进行发布,及时通知。学校管理员,实验室管理员,对仪器设备情况的通报,工作日程的安排修改,注意事项及帮助的发布等。
大型仪器设备信息管理:对大型仪器设备的详细的管理购置新仪器后对仪器设备详细信息的添加,对这些信息的修改维护等操作,对仪器设备的状态信息的维护,以便实验室管理员对仪器的预约状态的设置。
实验室信息:对所有实验室信息的管理。主要维护的信息包括实验室的性质,实验室相关管理员,实验室管辖大型仪器设备等等。
预约信息管理:设备预约信息的管理。预约信息管理分成两大部分,三种角色管理,主要是一般用户对仪器设备的预约信息的添加和实验室管理员对仪器设备可以预约的状态和日程的安排。一般用户,实验室管理员和学校管理员对仪器设备预约信息有不同操作权限。
用户信息及角色管理:为保证系统的安全性,本系统采用用户注册登记。主要包括,用户登陆身份验证,创建新用户,用户角色管理,用户信息、密码管理,根据用户和角色信息对模块进行分配等。本系统采用了ASPNET的Membership类来负责这方面的内容。
实验日志信息及统计管理:主要是实验室管理员对实验日志信息的管理,学校管理员对实验信息的统计,来分析大型仪器设备的使用情况,各个实验室工作情况,科研成果取得情况及产生的效益统计等。
本文主要介绍了大型仪器设备协作共用管理信息系统的设计目标,并通过例子,详细分析了本系统的三层构架模式,最后介绍了系统总体构架设计。
参考文献
[1]彭立文.基于NET的Web应用三层结构设计技术.计算机工程,2005(3).
[2]张晓坤,谭立平等译..NET Web services 构架与实现.中国电力出版社,2005.
[3]刘立军.云南省大型科学仪器共用网业务系统关键技术研究.昆明理工大学,2009.
[4]David West.深入浅出面向对象分析与设计南京:东南大学出版社,2008.