网站首页  课程简介  教师队伍  教学大纲  案例分析  课程资源 
当前位置: 网站首页>>工程伦理教育>>案例分析>>学生作业>>正文
工程伦理案例分析(学生作业五)
2020-10-30 10:09   审核人:

 

标题

基于DataSnap的信息管理系统

内容提要:

  高等院校的管理工作中需要处理如学生个人信息、教师授课信息、政务信息等各种各样的信息。因此,一套良好的信息管理系统在学校的管理工作中就显得尤为重要。本案例主要介绍了信息管理系统的实现过程。通过对信息管理系统进行需求分析,介绍了信息管理系统的数据库设计、服务器架构以及重要组件的功能。

在开发过程中将DelphiSQL Server 2008 R2作为开发软件,使用了MVC框架模式。本案例中所提出的基于DataSnap的信息管理系统,在保障数据安全的前提下,降低了信息管理系统开发的难度,提升了信息管理系统的开发速度,对信息管理系统在高等院校中的普及有重要的参考价值与推动作用。

 

关键词

信息管理、DelphiDataSnap面向对象编程

 

 

 

 

 

 

 

 

 

 

 

 

 

1.背景介绍

  高等院校是一个集教学、科研、行政等功能的综合体。在学校的管理工作中需要处理如学生个人信息、教师授课信息、政务信息等各种各样的信息。从目前学校的日常管理工作来看,对于信息的管理仍停留在传统的文档形式。信息大都以Excel表格或Word文档的形式存储,信息的统计与计算则需要人工进行合成和处理。这种传统的信息管理方式存在很多问题,如:信息管理不规范,信息存在大量冗余,信息安全性无法保障,信息准确性差,管理效率低等等。因此,一套良好的信息管理系统在学校的管理工作中是十分必要的,美国己经有85%的高校能够为学生提供在线课程目录服务,有72%的高校能够为学生提供在线课程注册服务,我国国内的高校在信息化建设过程中也经过了很多年的努力,己经取得了一定成绩。

  目前软件开发的系统架构多半也是以C/S或者B/S模式进行设计的,B/S模式、C/S模式下的产品都非常丰富,但传统的B/SC/S都存在各自的不足,基于DataSnapC/S/S模式开发比传统B/SC/S模式开发的性能更具有优势。本案例展示了如构建一套基于DataSnap三层架构的规范、高效的高校信息管理系统。

 

2.案例描述

  本案例主要介绍了信息管理系统的实现过程。对信息管理系统进行了需求分析,介绍了信息管理系统的数据库设计、服务器架构以及重要组件的功能。对信息管理系统的快速开发模式的组成原理、使用方法进行了详细的阐述,并对信息管理系统主要功能的实现方法进行了介绍。

用户登录信息管理系统需要已注册的用户名和密码,用户角色主要分为管理员、普通用户、系主任三种。管理员具有最高权限,普通用户则只可以添加信息和修改自己录入的信息,系主任相对与普通用户具有工作量的修改权限。用户登录的流程图如图4.17所示。

4.17用户登录流程图

  登录成功后的界面如图4.18所示,主界面右上角显示登录用户信息。

4.18系统主界面图

  界面由三部分组成,上部为信息管理系统的标题栏,左侧为信息管理系统的模块划分,用户可以选择相应的模块完成各种事务的操作,右侧为信息管理系统的操作提示,用户需要按照提示的要求使用信息管理系统。

  信息的查询与筛选是信息管理系统中非常重要的一环。信息管理系统数据库中包含了大量的数据表,每个数据表中又包含了大量的字段。用户在使用信息管理系统时,不仅需要查询信息,而且还要根据一定的条件对信息进行筛选。信息管理系统在做到快速查询数据表信息的同时,对于不同的筛选条件组合,还要准确的返回对应的信息。

案例系统系统采用参数化查询,依托标准SQL语句完成用户的查询需求。在系统开发过程中,通过过滤用户查询条件中敏感字符的方法针对性的预防了SQL注入攻击,保证了系统整体的安全性。查询功能流程如图4.19所示。

 

 

 

 

 

 




  4.19查询功能流程图

  信息管理系统的查询功能界面如图4.20所示:

4.20查询功能界面图

  案例系统中的教师工作量的统计功能

  教师工作量是对教师进行考核的重要指标,精准的对教师工作量进行统计,能够使教师更好履行岗位职责,调动教师的工作积极性,同时能够体现对教师考核的公平公正。

  教师工作量涉及教师教学工作中的授课、实验、监考、论文、科研等各个方面。由于统计内容的多而繁杂,以及细化的计算方法,在以往的信息管理工作中,进行教师工作量统计的时往往要消耗大量的时间,同时也难以保证统计的准确性。

  信息管理系统通过对信息的精确查找以及预设计算参数,很好的解决了教师工作量统计这个难题。

  信息管理系统设计了科研工作量、论文工作量、论著工作量、本科生授课工作量、研究生授课工作量、教学实验工作量等模块,对各工作量进行单独计算。

  以本科教学工作量统计为例,系统统计界面如图4.21所示:

4.21工作量统计界面图

  案例系统中的具有更新功能,信息管理系统分为主程序与各个模块程序。用户在使用时,通过主程序中的链接激活相应的模块程序。系统主程序设置版本号,由主程序版本号控制系统模块程序版本。用户打开信息管理系统登录界面时,系统会自动检索数据库中的最新版本号,并与当前版本号进行比对,如果数据库中的最新版本号大于当前版本,系统会根据版本的更新内容下载相应的模块程序到安装目录并替换,由于模块程序的体积非常小,所以用户的使用并不会受更新过程影响,做到了静默更新。

  更新过程的流程如图4.22所示:

 

4.22版本更新流程图

  在日常信息管理工作中,将信息管理系统数据库保存的信息导出打印是一项很重要的功能。信息管理系统中的信息以表格的形式呈现,支持ExcelWordHtmlTxt四种形式导出信息。信息导出功能界面如图4.23所示。

4.23信息导出功能界面图

  四种格式的信息导出效果如图4.24所示。信息的多格式导出,满足了信息管理工作中不同的信息处理需求,为信息管理工作提供了极大的便利,使信息管理工作更加的高效。

4.23信息导出效果图

  为了保证导出信息的安全性和与数据库信息的统一性,系统对导出文档策略进行了设置,导出的文件处于受保护状态,不允许编辑,如图4.25所示。

4.24导出文件保护示意图

  本次案例系统中主要系统功能具有登录功能,信息查询功能,教师工作量统计功能,系统更新功能,信息导出功能等等,基本上已经满足客户大致需求。

3.原因分析

1.开发平台与环境配置

1.1客户端开发环境

  处理器:英特尔Core   i5-6300

  内存:8G

  操作系统:Windows   7

  开发工具:Delphi   10 Seattle

1.2服务器配置

  处理器:英特尔Core   i7-6700

  内存:16G

  硬盘:2T

  操作系统:Windows   7

  数据库:SQL   Server 2008 R2

  客户端是电脑所带正版Windows 7系统,开发平台是实验室所用DelphiSQL Server 2008 R2,这篇基于DataSnap三层架构的信息管理系统研究只是进行学习使用,不进行售卖,其中进行的软件部署,没有破坏软件和网络环境。

  为了实现信息保密,登录时设置账户密码登录并且产生动态验证码,防止被暴力破解。进行对数据库内容的管理技术,管理人员可以进行增假、删除、修改、查询操作,外部人员只能查询不能修改,可以防止无关人员恶意修改信息,从而保护了学生机教师的相关信息。

2.Delphi面向对象编程

  面向对象编程(OOP)是使用独立的对象(包含数据和代码)作为应用程序模块的范例。虽然OOP不能使得代码容易编写,但是它能够使得代码易于维护。将数据和代码结合在一起,能够使定位和修复错误的工作简单化,并最大限度地减少对其他对象的影响,提高代码的性能。

  Delphi不支持多继承,但是Delphi中可以通过一个父类包含其他的类或者使用接口来实现多继承的功能。Delphi面向对象的三个关键术语:

  (1)域(field),也被称为域定义或者实例变量,域是包含在对象中的数据变量。在对象中的一个域就像是在Delphi记录一个域。

  (2)方法(method),属于一个对象的过程和函数名。

  (3)属性(property),属性是外部代码访问对象中的数据和代码的访问器,属性隐藏了一个对象的具体实现的细节。

  Delphi是完全面向对象的环境,因此在Delphi中可以使用已经存在的组件,创建新的可视化或者非可视的组件。通过封装可以把相关的数据和代码结合在一起,并隐藏了实现细节。封装的好处是有利于程序的模块化,并把代码和其他代码分开;而继承是指一个新的对象能够从父对象中获取属性和方法,这种概念能用来建立VCL这样的多层次的对象,首先建立通用对象,然后创建这些通用对象的有专用功能的子对象;多态性是在调用一个对象变量的方法时,实际被调用的代码与实际在变量中的对象的实例有关。

3.Delphi组件开发

  Delphi中所有的对象及组件的基类都是TObject。向下衍生出TPersistent这个类,这个类是一个可持续化的对象库,只要从这个类继承下来的,都自动具备了串行化的功能,可以非常方便的读入与写入到流,这个特性就方便了组件中的属性信息能非常方便的记录到窗体资源文件。

  TComponent这个就是所有Delphi组件的基类,所有想要注册到IDE直接进行可视化设计的对象库,都要从这个类继承。TComponent提供了必不可少的信息以使组件能够在DelphiIDE上运作。TComponent下衍生出了TControl的类,这个类就是所有的在运行期间可视控件的基类,比如LabelPanel等,只要从TControl继承下来,就能实现运行期间可视化。如果直接从TComponent向下继承的话,那么在运行期间就不可见了,比如说TTimer等。所有窗口控件都继承于TWinControl,包括大部分的标准控件,比如ButtonEdit等。

  Delphi中的组件技术可以理解为一个已经封装好的功能对象库,通过DelphiIDE接口注册后,便可以进行可视化设计。但是组件库中的组件只提供最基本的功能,为了提高开发效率,就需要根据需求对组件进行二次开发。

4. MVC框架模式

  MVC全名是Model   View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计的框架模式。

  在基于DataSnap的三层架构中,模型(model)即为DataSnap服务器,服务器中封装了应用程序所需的业务处理逻辑;视图(view)即为用户客户端,负责系统与用户的交互;控制器(controller)则为FireDAC组件,FireDAC组件完成了客户端与服务器端之间的数据传输。

  系统采用MVC框架模式的有点体现在:①低耦合性,视图层、业务层、控制器各自独立,这样就允许更改视图层代码而不用重新编译模型和控制器代码。同样,一个应用的业务流程或者业务规则的改变只需要改动MVC的模型层即可。如果把数据库从SQL Server移植到MySQL,只需改变模型即可。由于运用MVC的应用程序的三个部件是相互独立,改变其中一个不会影响其它两个,所以依据这种设计思想能构造良好的松耦合的系统。②重用性高,现阶段系统为C/S结构,用户的终端为客户端。日后,可能会有浏览器访问的需求,MVC模式允许使用各种不同样式的视图来访问同一个服务器端的代码,因为多个视图能共享一个模型。模型在返回数据的时候不会进行格式化处理,所以控制层和模型层不需要进行修改,可以最大化的重用代码。③可维护性高,视图层、业务层和控制器相互独立,对任何一层进行修改都不会影响到其他两层,使得系统具有更高的可维护性。  

  随着计算机软件技术以新的方式发展和应用,存在一些问题例如隐私、责任、社会价值等问题同时还有新的问题不断出现。计算机工程伦理约束使用者正规的使用开发的系统,在日常工作和学习中恪守道德行为规范,开发者也要为软件品质、风险和管理进行负责。

4.结论和启示

4.1案例总结

  信息化是当今时代的潮流,随着教育信息化改革的不断深入,高等院校在信息管理工作中,只有摒弃传统,用信息化的手段,才能获得更好的发展。信息管理系统作为信息管理工作的有力帮手,无疑会逐渐在各级院校中普及。本案例中所提出的基于DataSnap的信息管理系统,在保障数据安全的前提下,降低了信息管理系统开发的难度,提升了信息管理系统的开发速度,对信息管理系统在高等院校中的普及有重要的参考价值与推动作用,因此具有一定的研究前景和研究意义。

  本文针对基于DataSnap的信息管理系统的开发进行了细致的研究工作。主要分为以下几个方面:

(1)DataSnap架构原理

  课题对DataSnap架构的组成、数据传输原理与传输方式进行了深入的分析。从数据安全性、负载能力、传输速率等多个方面探讨了DataSnap架构信息管理系统的可行性。同时对DataSnap架构中数据组件的工作原理与关联方式进行了深入的研究,确定了信息管理系统使用的组件集。

(2)Delphi组件的开发

  组件是Delphi开发环境的重要组成部分,对于组件的开放性设计是Delphi开发环境的最大魅力。本课题对组件开发的原理进行了深入的研究,并基于信息管理系统的开发需求,采用面向对象的思想,开发了信息管理系统的公共组件,为系统的开发提高了极大的帮助。

(3) 模板化快速开发模式

  为了更好的利用组件开发来满足系统的开发需求,本课题创新性的提出了模板化的开发模式,将组件的开发与信息管理系统的需求挂钩,设计了相互串联的自定义组件集,并通过接口的方式与信息管理系统数据表实现对接。在实际开发过程中证明,模板化开发模式的应用可以大大加快开发速度,减少开发过程中的重复劳动,对于信息管理系统的开发有重要的意义。

4.2案例前景

  信息化是当今时代的发展方向,本课题对于信息管理系统的研究以高等院校为背景,但是信息管理系统的使用并不局限于高等院校。信息管理系统的使用场景广泛,政府、企业、医院等各种社会机构都需要有一套自己的信息管理系统。所以说对于信息管理系统的研究有很重要的现实意义。基于目前的案例研究成果,下一步的工作应当着眼于以下几个方面:

(1)功能拓展

  当前信息管理系统的开发模板已经基本满足高等院校用户的开发需求,下一步应进一步扩大开发模板的公共组件库,使开发模板具有更多的功能,能够满足更多使用场景,便于信息管理系统的推广。

(2)平台拓展

  本课题研究的信息管理系统为Windows平台下的C/S/S模式下一步应该充分利用Delphi开发环境的跨平台特性C/S/S模式拓展到AndroidIOS平台开发移动端的信息管理系统为办公提供更大的便利。

(3)UI提升

  信息管理系统客户端整体UI应借鉴国内外优秀的管理系统,进一步提升系统的人机交互体验、操作逻辑与界面美观性,使用户获得更加良好的使用感受。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

补充说明:文本字体一律采用小四号宋体,行间距23磅,左右对齐;案例分析文本字数不少于5000字,以原因分析部分为主;案例分析以小组为单位,10人一组,分工协作。

关闭窗口

西安工业大学马克思主义学院 地址:西安市未央大学园区学府中路2号西安工业大学
电话:029-86173063 邮编:710021