APP下载

林业信息系统定制技术的研究

2013-12-27张习科

中南林业科技大学学报 2013年5期
关键词:表单知识库野生动物

张习科,张 贵

(中南林业科技大学 理学院,湖南 长沙410004)

林业信息系统定制技术的研究

张习科,张 贵

(中南林业科技大学 理学院,湖南 长沙410004)

为快速、高效进行林业信息系统定制,以实现林业部门各应用系统的高效集成,采用.NET核心技术、ADO.NET数据库访问技术, 对林业信息系统定制平台进行了功能分析与设计,构建了基于.NET框架的林业信息系统定制技术构架与定制平台构架,并以野生动物管理信息系统中野生动物知识库的定制为例,实现了定制野生动物知识库的详细过程。

林业信息系统;定制技术;.NET框架;ADO.NET

全面推进林业信息化与现代化建设是落实科学观与“十二五”全国林业信息化发展规划的基本要求[1]。加快推进林业信息化与现代化,有利于逐步建立起覆盖各级林业部门的林业信息化体系,对提高林业信息服务水平,促进林业信息服务的科学化有着重要的意义。纵观林业信息化的现状与存在的问题,研发快速、高效、便捷的林业信息系统定制平台,实现林业部门各应用系统的高效集成,对促进林业可持续发展具有重要的理论和实际意义。

应用系统定制是近年来诞生的一种以信息技术和网络技术为基础的应用系统产品生产模式,正在逐步成为IT业的主流生产模式。为了提高各林业部门信息化的水平,国内外各信息化技术专家和学者主要集中在以下几个方面的研究:(1)业务功能定制的研究[2],业务功能的可定制能够帮助业务开发者灵活的控制各林业部门林业管理信息系统的业务功能,从而实现林业管理信息系统业务功能的客户化定制。各部门管理信息系统的特点是系统与系统之间互不相干的松耦合、分布式的计算管理,信息系统定制技术为这种计算环境下高效执行业务功能提供解决方案的。(2)可视化界面定制的研究[3],不同的部门对林业管理信息系统有着不同的需求,系统功能、数据和信息的表达方式也是千差万别的[4]。如何实现数据交互界面的可视化定制也是林业管理信息系统定制研究的主要内容[5]。本文是对现有定制平台技术进行研究和优化的基础上,融合林业应用系统的特点进行了个性化开发的林业应用系统生产平台,提出了林业信息系统定制平台设计原则、构建并设计平台框架以及详细功能分析和平台详细设计,并以林业信息系统定制平台为基础平台定制野生动物管理信息系统的整个过程。

1 林业信息系统定制技术研究

1.1 NET框架技术

.NET框架是一种采用Windows系统虚拟机运行的编程语言,支持C#、VB、C++等语言,并以通用型语言库运行CLR(Common Language Runtime)为基础,.NET框架提供了一整套的服务框架、APIs和协议等[6]。

结合林业信息系统的特点将林业应用系统在整体上分成3层,即数据层、中间层和客户层。按业务逻辑又可以将中间层分为3层,即视图层(View)、模型层(Model)和控制层(Control)[7]的MVC 3层构架模型,也可以将其定义为视图层、数据访问层和业务逻辑层。在林业信息定制平台中是以Asp.net和Silverlight充当视图层[8-9],以.NET框架中的底层数据库访问接口ADO.NET实现数据访问层,面向对象的类封装各业务逻辑层[10]。图1为以.NET框架为核心的林业信息系统技术构架。

图1 林业信息系统.NET技术构架Fig.1 Technology structure of .NET for forestry information system

1.2 ADO.NET技术

ADO.NET技术是.NET平台下访问数据库的通用接口,实现了.NET应用程序与数据库系统之间的无缝连接。不同数据库生产商提供了访问数据库的ADO驱动程序,从而实现对不同数据库生产商的数据库访问[11]。林业信息系统定制平台采用ADO.NET实现数据访问,其实现数据读取需要Connection,Command、Adapter和 DataSet对象,图2为ADO.NET实现林业信息系统定制平台中数据读取的过程。

图2 ADO.NET读取数据Fig.2 Data reading with ADO.NET

2 林业信息系统定制平台框架设计

2.1 平台的设计原则

林业信息系统定制平台设计遵循以下原则:

(1)实用性 系统的实用性是系统运行、维护、操作、高效率和易用性等的前提,是系统设计的关键。

(2)友好性 系统的友好性是指系统界面设计美观、风格一致和使用方便等。

(3)前瞻性 系统设计应该具有很强的超前性和前瞻性,不仅能适合目前各业务的需要,而且又能满足今后需求变更的需要。系统设计、软件平台、数据库、硬件平台等,都应符合主流技术的发展方向。

(4)安全性 系统的安全性是指系统运行期间的安全、数据共享安全以及保密数据的安全等。

(5)易理解性 软件系统可靠性和可修改性是保存系统健壮的前提。它不仅仅要求各类文档清晰可读,更要求软件系统功能结构、系统操作简单。这主要取决于软件设计者的经验和创造性等。

(6)可扩展性 系统的可扩展性是为今后系统业务的发展提供相应的接口,方便今后系统业务需求变更的扩展和系统升级。

2.2 平台构架设计

林业信息系统定制平台采用面向对象的C#语言、B/S模式进行系统开发[12],利用Microsoft Visual Studio 2010开发平台结合Oracle 11g数据构建林业信息系统定制平台,采用目前C#.NET系统开发流行的MVC 3层架构设计模式,将整个系统抽象成3层结构,即表现层、控制层和数据模型层[13]。控制层将整个系统平台分为不同的逻辑模块,不同模块间以接口的形式衔接,从而实现了各模块之间的低偶合性[14],从而减小了平台的开发难度,提高了平台的开发效率。平台的总体框架如图3所示。

图3 林业信息系统整体架构Fig.3 Integrated framework of forestry information system

(1)用户层 林业信息系统定制平台是基于C#.NET和Silverlight语言开发的并运行在客户端浏览器中的Web应用系统。由系统开发人员根据业务系统的需求定制业务系统,供林业部门内部人员使用,并由系统管理人员与系统维护人负责对系统运行工作的日常管理与维护。

(2)应用层 它是建立在系统服务层之上的,是通过服务层提供的服务接口与应用层紧密结合在一起实现定林业信息系统定制平台、林业信息系统的定制和解析定制中的标准规则,实现Web端各个系统的业务功能。主要由林业信息系统Web解析呈现平台和定制平台组成。

(3)平台层 在平台层将整个平台分为若干个不同的逻辑模块,实现各逻辑模块的功能,各逻辑模块间相互衔接,相互影响,共同实现林业信息系统定制平台。

(4)数据链路层 数据库采用XML作为定制数据访问的模板。将系统数据链路层分装成组件、接口以及Web服务的形式对象提供界面与数据库之间的数据交互。

(5)软件支撑层 开发林业信息系统定制平台,需要很多软件的支持,比如:IIS,Oracle,NET Framework,Window Server等。

(6)基础硬件层 在林业信息系统定制平台中,服务器不可缺少。包括数据库服务器,WEB服务器、文件服务器、目录服务器、应用服务器等。

3 林业信息系统定制平台功能与设计

3.1 平台的功能

林业信息系统定制平台是一种以业务驱动为导向的、快速构建林业信息系统的基础软件平台。同时信息系统定制平台系统是面向业务的,与平台的构架、实现技术无关,只与业务系统的需求有关。林业信息系统定制平台系统本身就是一个应用系统,除了维护自身系统所有功能正常运行之外,还能在其基础上快速构建林业信息系统。主要体现在:

(1)系统设计采用目前最流行的,也是最常用的模式,MVC 3层构架模式,系统层次结构清晰,提高了模型代码的可读性与重用性。

(2)系统开发人员可以实现个性化表单页面的自动生成与定制,无需开发人员重新开发各种页面。

(3)林业信息系统定制平台系统中已经集成了多种常用系统工具,其中包括组织机构管理、用户与角色管理、工作流管理、权限控制、多种建模工具等。

(4)Web端开了系统解析引擎,通过解析定制中保存的各种业务模型完成表单的呈现,数据的新增、修改和删除,以及各类复杂的查询、统计及报表。

(5)在系统业务服务开发方面,为林业信息系统提供了许多API,平台对数据访问部分进行封装,简化了林业信息系统对数据库访问代码的编写。

林业信息系统定制平台能够保障开发人员在无需编写任何代码的情况下完成从数据表到表单实现等的定制,其中包括权限控制等,大大缩短系统的开发周期。

3.2 平台设计

林业信息系统定制平台的目标是实现林业信息系统定制快速定制,提高林业信息系统的开发效率与周期。因此,定制平台设计了七个大功能模块。数据建模设计器、业务设计器、栏目设计器、工作流设计器、用户管理、权限管理等,其总体功能模块如下图:

图4 林业信息系统定制平台功能结构Fig.4 Function structure of forestry information system customization platform

(1)数据建模设计器 数据建模设计器包括实体表设计与关系模型建立两个功能模块。

实体表设计:实体设计基本就是设计数据表的结构,这是林业信息系统定制的一步,建立数据表的各字段,定义表中文名和英文名、字段中文名、英文名、类型、长度、是否允许为空、健值类型、缺省值等。

关系模型建立:对表进行分类,把同一个业务的表归纳为同一类,并建立表与表之间关系,并能方便在表单定制时数据源的设计以及栏目列表数据源的设计。

(2)业务设计器 业务设计器实现对林业信息系统数据表单、数据源、报表的可视化设计以及业务功能的扩展。其主要包括表单设计、数据源设计、报表设计与功能扩展三个功能模块。数据源与数据表关联生存对应的增删改查SQL语句,把需要在表单上显示的字段拖到表单设计画布上,调整其位置使其定位在适合的位置。报表设计通过数据源生成报表模板,林业信息系统开发人员通过可视化设计模板设计报表。平台提供了系统扩展功能,开发人员根据业务需求可扩展表单控件相应的事件,比如文本控件值改变触发事件,选中下拉列表时触发事件,按钮点击事件等等。

(3)栏目设计器 每个应用系统呈现给用户的功能界面是栏目、栏目工具栏与对应栏目中的数据记录列表。栏目设计器中主要包括栏目设计、布局视图设计、栏目数据源设计及栏目上的功能按钮的设置等。

(4)工作流设计器 针对一些特定的业务,以工作流程的方式实现审批,并且有的业务审批甚至需跨部门审批。工作流业务包括待办箱、已办箱、我的业务的设计,以及各个流程活动节点的可视化设计、表单权限控制、用户权限控制等。每个审批业务流程都由一个开始活动结点开始、一个结束活动结点结束和多个中间控制活动结点组成,可以设置整个办文状态为设置状态、发布状态和撤销状态,总时限天数,时限单位为工作日、自然日等属性;可设置各活动结点的办文时限天数、时限单位、智能发送、多人接收、人员过滤、接收事件、发送事件、允许退回、汇流、分流等属性。同时可以控制每个活动节点可以显示哪些表单以及表单上控件的显示与隐藏、只读、必填等。

(5)用户管理 林业信息系统定制平台为实现各部门系统的定制。据此,用户管理设计了各部门管理和角色管理,同时可以在各部门下手动添加用户信息,并设置用户所属的角色,通过角色对用户进行权限控制,不同角色下的用户拥有不同的角色权限。

(6)权限管理 不同的用户具有不同的角色权限。每个业务办理人员只能办理该用户拥有权限的业务,其它一些业务只能查看或某些功能根本就没有查看的权限。权限管理包括表单业务权限管理、栏目权限管理、工作流权限管理等等。

4 林业信息系统定制平台的应用

基于信息系统定制平台应用之前,先得通过对应用系统的进行可行性论证、系统需求分析、系统功能设计及系统详细设计等。以确定林业信息系统的整体目标,明确系统该做什么,该实现什么功能。

下面以野生动物管理信息系统中动物知识库管理为例,详细讲述运用林业信息系统定制平台定制系统的过程。基于林业信息系统定制平台定制野生动物管理信息系统的主要过程包括:建立数据表、业务表单设计与定制、事件映射、权限分配和栏目定制、系统部署等。野生动物管理信息系统的构建分为:(1)提取林业信息系统的业务需求,并进行系统详细设计;(2)根据系统详细设计,利用林业信息系统定制平台定制各业务表单;(4)林业WEB信息系统中的解析引擎解析定各业务定制模型;(5)系统部署与使用。其建设过程如图5所示:

图5 基于林业信息系统定制平台的野生动物管理信息系统定制过程Fig.5 Building process of wildlife management information system based on forestry information system customization platform

以野生动物知识库管理为例详细讲述其定制过程:

(1)建立数据表 根据野生动物知识库管理功能需求与详细设计,系统开发人员运行林业信息系统定制平台的建表工具,新建数据表取名为野生动物知识库数据表,在建表工具中输入如表1所示设计的野生动物知识库数据表,保存,到此野生动物知识库数据表的模型已经建立完成。

(2)业务表单设计 野生动物知识库表建立后,紧接着就建立野生动物知识库业务表单。第一步新建业务表单模型命名为野生动物知识库表单;第二步以上面新建的野生动物知识库表为数据源,建立野生动物知识库表单数据源,数据源里设计了Oracle数据库的增删改查SQL语句。数据源中的查询SQL中的各个字段与表单上的各个控件一一对应,形成字段与表单控件的一一映射,保证表单数据的完整性。系统开发人员只需将数据源中的各个控件有选择性的拖到表单设计画布上,再将控件调整到适当的位置直到整个野生动物知识库表单的设计完成。

表1 野生动物知识库Table 1 Knowledge base of wildlife information

(3)权限分配 野生动物知识库增删改查权限不是野生动物保护部门所人员都拥有的。只有该业务的维护与管理人员才具体增删改查、数据的导入导出等系统的最高权限,其它人员一律只有查看和使用的权限。系统开发人员根据系统角色的不同设置表单控件可读性、可写性、显示与隐藏、数据是否必填等,以及数据的新建、删除、数据导入导出权限。

(4)栏目定制 在栏目定制功能模块里新建栏目,并取名为野生动物知识库,栏目的定制分为3个部分,第1部分是栏目的布局方式,也就是野生动物知识库的呈现方式,第2部分是野生动物知识库呈现的数据列表数据源,数据列的配置与设计,第3部分是本栏目工具按钮的定制。野生动物知识库业务设计了5个栏目按钮,它们分别为新增、查看、删除、导入与导出按钮。

(5)系统部署 当整个野生动物信息系统按需求定制完成后,把系统部署到应用服务器上,经系统测试人员调试无误后,就可以交付给野生动物管理部门使用了,完成了野生动物管理信息系统的建立。系统运行如图6所示。

总之,灵活的林业信息系统定制平台能快速为林业企事业单位各部门用户开发各类业务系统,也为林业信息系统的建立打下了扎实的基础,并缩短系统的开发周期。

图6 野生动物管理信息系统Fig.6 Wildlife management information system

5 小 结

(1)总结了实现林业信息系统定制平台系统的.NET核心技术以及ADO.NET数据库访问技术,并构建了基于.NET框架的林业信息系统定制技术构架和采用ADO.NET实现林业信息系统访问数据库的过程。

(2)采用C#.NET技术、Silverlight技术,构建了林业信息系统定制平台的体系框架,对林业信息系统定制平台的功能进行了分析,提出了其设计原则,并在此基础上对林业信息系统定制平台进行了功能设计。

(3)以野生动物管理信息系统为例,选用“野生动物知识库”为业务功能,以林业信息系统定制平台为基础平台,介绍了其定制步骤和设计了野生动物知识库数据表结构,并介绍了其定制过程,最终实现了野生动物知识库业务功能。

(4)随着科学技术的快速发展,新理论、新方法、新技术将进一步运用于林业应用系统定制平台,林业信息管理与服务也将迈上新台阶。

[1] 张轶辉,吕 勇,张 贵.森林资源资产评估系统的本体集成研究与实现[J].中南林业科技大学学报,2011,31(11):79-84.

[2] 杨全文.基于JBPM工作流引擎的客户流程定制平台[D]. 北京:北京交通大学,2010.

[3] 王志国.基于Web Services的个性化假面定制平台的开发与设计[D].西安:西安理工大学,2008.

[4] Asuman Dogac.Workflow management systems and interoperability[M]. New York: Springer.,1998.

[5] 侯彦娥,郭超蜂,党兰学.可定制Web开发平台中业务配置工具的设计与实现[J].许昌学院学报,2009,28(5):73-76.

[6] NET Framework DeveIoper’s Guide.MSDN Library,2001,1

[7] Sanderson S. Pro ASP. NET MVC Framework[M]. Berkeley:Apress, 2009:1-100.

[8] 谢绍锋,肖化顺.面向数据服务与计算服务的林业空间信息网格技术[J].中南林业科技大学学报,2011,31(10):171-176.

[9] Tim Anderson. Coding A Silverlight Application[J].Personal Computer World,2008,31(13):12-15.

[10] 卢书海,刘 帅,李建军,等.物联网关键技术及其在林业中的应用[J].中南林业科技大学学报,2012,32(11):181-185.

[11] 郗笃刚,秦清亮,赵忠东,等.基于ADO.NET的Shape地图矢量数据存储研究[J].海洋测绘,2004,32(2):64-66.

[12] K Bryant. Designing information issue systems in flexible mode[J]. International Conference on Computers in Education,2002,(1):12-14.

[13] 张鑫磊.可定制的制药企事业信息管理系统Web平台的设计与实现[D].长春:吉林大学,2010.

[14] 孙 熙,庄 磊,刘 文,等.一种可定制的自主构建运行支撑框架[J].软件学报,2008,19(6):1340-1349.

Study on customization technology of forestry information system

ZHANG Xi-ke, ZHANG Gui
(School of Sciences, Central South University of Forestry & Technology, Changsha 410004, Hunan, China)

In order to fast and eff i ciently customize forestry information system, to realize the high eff i cient integration of application system of each forestry department, by using .NET core technology, database accessing about ADO.NET, the functions of forestry information system customization platform were analyzed and designed, and the framework of forestry information system customization technology was constructed based on .NET framework. Also by taking wildlife knowledge base of wildlife managing information system as an example, the detail process of wildlife knowledge base customizing was implemented.

forestry information system; customizing technology; .NET Framework; ADO.NET

S758.6;S718.54+1

A

1673-923X(2013)05-0035-06

2012-12-19

湖南省科技计划重点项目(2010nk2004,2010CK2009)

张习科(1986-),男,湖南益阳人,硕士研究生,主要从事林业信息工程、WebGIS和地理信息共享技术的研究;

E-mail:sheefow@sina.cn

张 贵(1964-),男,湖南桃江人,教授,博士生导师,主要从事林业生态工程、林业信息工程方面的研究

[本文编校:吴 毅]

猜你喜欢

表单知识库野生动物
电子表单系统应用分析
保护野生动物
保护野生动物
保护野生动物
保护野生动物
基于TRIZ与知识库的创新模型构建及在注塑机设计中的应用
浅谈网页制作中表单的教学
高速公路信息系统维护知识库的建立和应用
基于Drupal发布学者知识库关联数据的研究
基于Infopath实现WEB动态表单的研究