《电子技术应用》
您所在的位置:首页 > 通信与网络 > 业界动态 > 基于Web的高校仪器设备管理系统的设计与实现

基于Web的高校仪器设备管理系统的设计与实现

2009-07-10
作者:张 珊,陈建勋

  摘  要: 在对.NET关键技术分析的基础上,针对高校的仪器设备管理的现状,分析和设计了一套实用的基于N层架构的高校仪器设备管理系统,并给出了系统的具体设计和实施方案。
    关键词: N层架构;.NET平台;设备管理系统

 

   随着高校信息化建设速度的加快,学校规模的扩大和实验室建设的快速发展,大量教学设备不断购进,原有的单机设备管理系统无法适应现代化管理的需要,出现了许多不足,设备主管部门与财务、科技、人事、基层等部门管理脱节,不能实现管理职能的个性化管理。尤其大多数高校设备管理办法是高校设备采购进来以后,将设备的基本情况和相关信息登记存档,然后将档案存档。以后档案基本没有人维护,如设备位置变迁、检修情况、设备当前运行状态等信息根本不会体现在设备台帐上,即设备跟踪信息不能及时体现在设备档案上。这影响老师办公效率、科研工作以及学生技能、综合能力的培养,无法适应信息时代信息充分共享和协同办公的需求。所以,如何提高设备的管理水平和效率,合理利用,使其更加规范化、科学化和信息化,满足教学和科研需求,一直是高校设备管理的重要研究问题。
1 系统设计
    本系统采用B/S模式。它具有易维护、成本低、易升级、使用方便、容易被用户接受等特点。用户不用安装特殊软件,只需利用Windows自带的IE浏览器就能方便地进行管理,如图1所示。

 

1.1 系统设计原则
    (1)易用性。作为一个管理信息系统 ,首先需要考虑它的用户群。由于本系统是面向全校教职员工使用的一个业务系统, 用户的计算机水平参差不齐,因此,使系统简单易用,是保证系统正常使用的首要条件。
    (2)安全性。细分权限,确保登录系统的合法用户根据其权限的不同查看其权限内的相关信息。
  (3)开放性。由于高校的信息化建设通常是分步进行的,而设备管理信息化工作一般安排较为靠后,因此,本系统需要能够既有作为一套完整系统独立运行的能力,又要能够方便地挂接整合于其它系统之上 。这主要体现在系统的人员,部门信息等基础数据来源的灵活性和系统内信息的开放性上。
1.2 软件体系结构
  综合考虑系统设计原则,本系统采用五层架构:Web表现层、业务外观层、业务规则层、数据访问层、业务实体层。如图2所示。


  (1)Web表现层。应用程序的访问入口,主要实现页面的显示、用户数据的接收和用户输入信息的基本验证(如判断日期格式是否合法)等功能。具体由ASP.NET Web窗体和代码隐藏文件实现,Web窗体提供用户操作,而代码隐藏文件实现各种控件的事件处理。该层对应于本系统中的Web项目。
  (2)业务外观层。它隔离了用户界面与各种业务功能的具体实现,对后台所有业务逻辑包括对数据库的访问都要通过该层调用。系统中直接面向用户的应用程序。该层对应于本系统中的BusinessFacade项目。
  (3)业务规则层。也称商业逻辑层,实现系统的各种具体业务逻辑规则,如各种流程控制、权限控制等。它是业务规则或商业逻辑实现。该层对应于本系统中的BusinessRules项目。
  (4)数据访问层。直接调用数据库中的存储过程,达到操作数据库的目的。该层对应与本系统中的DataAccess项目。
  数据访问层对数据库的访问均采用了存储过程的方式进行。依此可保持应用程序的执行效率并简化数据访问层。利用using 或try catch finally 块对存储过程进行调用, 尽可能快地释放库资源。
  采用存储过程具有以下优点:①执行速度快,存储过程已经经过编译,无须经过SQL语句的再次分析,可以直接执行;②能够减少网络流量,由于ADO.NET执行存储过程时,传递的只是存储过程的一个名称,而不是整个SQL语句;③可以设定权限以提高安全性;④对数据库进行复杂操作时(如对多个表进行Update, Insert, Query, Delete时),可将此复杂操作用存储过程封装起来与数据库提供的事务处理结合一起使用,当运行发生错误时会回滚(Rollback)该事务。
  (5)业务实体层。实体层解决了业务数据表现形式的问题。它将显示数据和实际的存储区域隔离,保证了业务的独立性,提高可重用性。业务实体组件就是数据库中表的映射,一个实体类相当于一个表,一个实体对象相当于一个表中的一条记录。业务实体组件是系统中各层数据传递的媒介。该层对应于本系统中的Common项目。
  软件分层有以下优点:(1)良好的透明和封装;(2)高内聚、低耦合;(3)易于扩展、维护和重用;(4)开发人员易于分工,提高开发效率。
1.3  开发平台
  本系统采用的是Microsoft Visual Studio.NET2005为开发平台,结合C#语言开发,并采用SQL Server2000为后台数据库。SQL Server2000是新型的关系数据库,它能够满足大型Web站点的数据存储和分析需求。
1.4  功能设计
  根据高校的组织机构和设备管理工作的特点,可以将系统分为5个子系统:设备管理、系统管理、设备统计查询、用户管理和生成报表。功能模块如图3所示。


2 关键技术
2.1 通过OLE DB.NET Framework数据提供程序完成和Excel的交互

    本系统中涉及了大量设备相关信息,在使用系统前,必须录入设备的相关信息,而这些信息是以Excel表的形式存在。为了减轻用户负担,设计系统能从Excel表中读取数据,从而减少设备信息录入中可能产生的错误。
    本系统通过将Excel文件作为OLE DB数据源,使用OLEDB .NET Framework 数据提供程序来建立与该Excel 文件的连接,并通过leDbDataAdapter. Fill 方法将Excel 文件中的数据填充到DataSet 中,按图书资料表的格式保存到数据库中,也可以将DataSet 与DataGrid 控件绑定,让用户自定义保存。以下为具体的ADO.NET 代码:
  (1)引入System.Data.OleDb 命名空间,将以下代码加入到模块的声明部分:
  Using System.Data.OleDb;
  (2)使用OLEDB .NET Framework 数据提供程序建立与Excel数据源的连接:
  System. Data. OleDb. OleDbConnection MyConnection;
  //初始化连接,EquipInfo.XLS为存储图书资料的Excel文件
  MyConnection=NewSystem.Data.OleDb.OleDb Connection(_'Provider=Microsoft.Jet.OLEDB.4.0;'&_'Data Source=EquipInfo.XLS; '& _'Extended Properties=Excel 8.0;')
  (3)将Excel文件中的数据填充到DataSet中System. Data. OleDb. OleDbDataAdapter MyCommand;
  //Sheet1为Excel 文件中保存数据的工作簿
  MyCommand=New System.Data.OleDb.OleDb Data-Adapter( _'select * from[Sheet1$]', MyConnection)';
  //将数据填充到DataSet1的EquipInfo表中MyCommand.Fill(DataSet1, 'EquipInfo');
  MyConnection.Close();     //将数据绑定到DataGrid1
  DataGrid1.DataSource=DataSet1;
  DataGrid1.DataMember='BookData';
2.2  安全机制
2.2.1 身份验证
    用户身份验证是从用户处获取标识凭据并通过某些授权机构验证那些凭据的过程。当用户登录系统时,用户需要输入用户名和口令,系统在完成用户填写信息与系统保存信息的对比后,判断访问者是否为合法用户。在身份得到验证后,授权进程将确定该身份是否可以访问给定资源,包括数据和方法调用。
2.2.2  授权验证
    本系统采用系统功能树管理技术进行授权验证。通过系统功能书管理确保不同身份级别的用户登录系统后见到不同内容的系统功能树,防止访问非本权限内容集,增强了系统的安全性。
    (1)群组划分。是一种授权模式,为了保证业务的独立性,防止一个用户进行其不应拥有的系统操作能力和服务。将全部用户根据处理业务的不同而划分出不同群组,每一个群组在授权范围内进行相应的业务操作。
  (2)权限控制。当用户通过身份验证及群组授权登录某一个功能页面时,如果同一群组在操作权利上存在细微差别,则通过权限控制来解决。它可以解决某一用户对某一功能是否有操作权利。
 在仪器设备管理系统中,有三个群组:高级管理员、管理员和普通用户,其中高级管理员和普通用户均隶属于各个部门。不同群组的用户所具有的操作权限以及操作内容均不一样;相同群组的不同用户操作同一功能时,由于部门不同,查询信息的结果也不同。
  ①超级管理员。它的权限最高,具有管理自己的用户信息、管理管理员、普通用户信息以及管理及查询所有设备相关信息。
  ②管理员。除了超级管理员外,管理员可以管理自己的用户信息、管理及查询本部门的设备相关信息。
  ③普通用户。普通用户的权限最低,包括管理自己的用户信息、查询本部门的设备相关信息。
  细分的权限管理,有效的保证了设备信息在系统内部流动的安全性。
2.2.3  加密算法
  系统还采用MD5加密算法对用户密码加密,通过系统日志随时记录所有用户的访问操作日志,防止用户身份伪造和操作抵赖。
2.2.4  存储过程
  对数据的访问由存储过程完成,防止恶意用户非法的数据写入。防止SQL注入攻击等方法。
  在.NET环境下采用多层设计架构,能够有效地提高团队合作开发的效率,增加代码的可复用程度,提高对需求变更的应对能力。与传统的设备管理系统相比具有实时性好、运营成本低、信息资源共享以及可维护性好等优点。


参考文献
[1] 庄亮,王丽芳,蒋泽军,等..NET 平台下基于Facade 模式的软件N层架构的设计与实现[J].微电子学与计算机,2006,23(7):75-77.
[2] 钱怡.高校科研管理信息系统的开发与实现[J].华北水利水电学院学报(社科版),2003(3):59-60.
[3] 赵明,吕立坚.多层体系结构的EJB组件实现技术[J].计算机应用研究,2001(12):76-78.
[4] 李敏.基于B/S模式的高校设备管理系统设计与实现[J].四川理工学院学报(自然科学版),2006,19(4):70-73.
[5] 梁高永,李龙军.高校设备管理系统的可靠性研究[J].四川理工学院学报(自然科学版),2006,19(4):70-73.
[6] 王佰超,黄亚宇.基于Web的设备管理系统的研究[J].电产品开发与创新,2006,19(5):92-94.
[7] 赵东涛.关于完善和加强高等院校仪器设备管理的探讨[J].长沙大学学报,2006,20(5):123-125.
[8] 黄晓静.信息技术对高校仪器设备管理工作的影响[J].河北工业大学成人教育学院学报,2006,21(3):49-51.

本站内容除特别声明的原创文章之外,转载内容只为传递更多信息,并不代表本网站赞同其观点。转载的所有的文章、图片、音/视频文件等资料的版权归版权所有权人所有。本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如涉及作品内容、版权和其它问题,请及时通过电子邮件或电话通知我们,以便迅速采取适当措施,避免给双方造成不必要的经济损失。联系电话:010-82306118;邮箱:aet@chinaaet.com。