基于Silverlight的数字测绘档案管理系统的设计和实现
2013-06-29王闪郭明武彭清山杨志敏程琦
王闪,郭明武,彭清山,杨志敏,程琦
(武汉市测绘研究院,湖北武汉 430022)
1 引言
随着测绘技术的发展,城市测绘已经由最初的模拟化测绘转变为数字化测绘,现正逐步转向信息化测绘,测绘成果在各行各业中的应用也越来越广泛。城市测绘档案管理亦逐步由过去手工方式管理纸质档案转向以计算机、网络为载体的电子档案管理体系,目前正在逐步建立信息化的测绘档案的管理方式[1]。当今常见的数字测绘档案管理系统,一般均是采用C/S或传统B/S模式构建GIS系统。C/S架构的GIS系统由于其更新维护、安装成本高而让用户和开发人员不堪重负;而普通B/S架构的WebGIS则由于页面中的数据显示区域难以充分捕捉用户的操作,也不具备丰富的逻辑功能来响应和处理这些操作,用户不易通过有效的交互来动态地查看数据[2]。WebService和RIA技术的出现使上述问题得到了较好的解决。
本文以武汉市测绘研究院的测绘档案管理工作需求为基础;使用Microsoft SQLServer+ArcSDE存储管理数字测绘档案数据、基础测绘数据以及控制成果数据;利用WebService技术所拥有的跨平台的可互操作性与其他管理系统进行集成;客户端采用Silverlight技术提高用户的使用体验;实现了测绘档案信息的查询、检索、申请、审批分发和下载功能,完成了“测绘档案分发管理系统”建设,保障用户能够及时获取测绘档案,及时开展日常生产工作。
2 WebService与Silverlight技术简介
WebService是一种可以接收从Internet或者Intranet上的其他系统中传递过来的请求,轻量级的独立的通讯技术,通过SOAP(Simple Object Access Protocol,简单对象存取协议)在Web上提供的软件服务,使用WSDL(Web Services Description Language,Web 服务描述语言)文件进行说明,并通过UDDI(Universal Description,Discovery and Integration,通用描述、发现与集成)进行注册[3]。作为一种构建应用程序的普遍模型,可以在任何支持网络通信的操作系统中实施运行。
RIA(Rich Internet Applications,富互联网应用程序)具有高度互动性、丰富用户体验以及功能强大的客户端[4]。RIA集桌面应用程序的最佳用户界面功能与Web应用程序的普遍采用和快速、低成本部署以及互动多媒体通信的实时快捷于一体,目前Web领域和桌面软件领域正逐步向RIA靠拢。
Microsoft Silverlight是微软所发展的Web前端应用程序开发解决方案,是微软RIA策略的主要应用程序开发平台之一,以浏览器的外挂组件方式,提供Web应用程序中多媒体与高度交互性前端应用程序的解决方案,同时它也是微软UX(User experience,用户体验)策略中的一环。Silverlight是一个跨浏览器、跨客户平台的技术,能够设计、开发和发布有多媒体体验与富交互的网络交互程序[5]。
3 系统设计
3.1 数据库设计
通过对历年所积累下来的各类测绘档案成果数据进行分析整合,测绘单位日常生产工作的开展主要涉及以下几个类型的测绘档案数据库:
(1)测绘基准档案数据库:测绘基准数据是所有测绘生产的基础,主要为控制点资料。
(2)基础测绘档案数据库:这里主要指的现势性强的1∶500、1∶2 000的DLG全要素档案数据。
(3)历史工程档案数据库:这里指测绘单位多年来参与完成工程项目,例如比例尺为 1∶500的地籍测量、地形测量、竣工测量、勘界测量、管线工程测量等工程的电子文件。
系统使用SQLServer对上述三类测绘档案数据进行存储和管理,并通过空间数据引擎ArcSDE来访问这三类测绘档案数据。
3.2 档案管理业务流程
档案管理业务应严格按照“用户查询申请→档案管理人员审批→审批合格后分发→用户自行下载”的模式进行。登录后的借阅用户通过对档案资料进行查询和空间定位,在线填写借阅原因后,才能正式将借阅申请提交给审批用户。登录后的审批用户才能够对正式申请、分发的工程资料进行查询和统计,对借阅用户的借阅申请进行审批。程序在借阅申请审批通过后,自动将档案资料打包存放在服务器上,以供用户自行下载。待用户下载完毕后,程序自行删除服务器上的打包文件,其具体流程如图1所示。
图1 档案管理业务基本流程
3.3 系统总体框架
为了对数字测绘档案的借阅进行全程监控,满足测绘单位日常生产对数字测绘档案的查询、借阅、审批、下载的需求,系统在客户端采用Silverlight组件进行数据展示以及用户交互,构建B/S三层架构的数字测绘档案管理系统,系统总体架构如图2所示。
数据层使用SQLServer+ArcSDE为中间层提供数据服务,由SQLServer对档案数据进行组织和管理,ArcSDE空间数据引擎则是对档案数据进行访问的中间件。中间层根据测绘档案数据管理业务流程,定制了一系列的功能,使用WebService的方式为各个使用者以及其他系统提供服务。本层的服务包括提供用户登录、档案资料查询、定位、申请、审批、自动分发、下载等WebService。表现层则采用Silverlight富客户端技术,调用、处理WebService提供的各类服务,并使用动画以及各种特效用来提升用户的使用体验。
图2 系统总体架构
3.4 与其他业务平台的集成
测绘档案的管理仅是测绘单位日常生产管理工作的一部分。通常测绘单位还有诸如勘测项目管理系统这类系统,通过“测绘档案分发管理系统”所发布的WebService供其他系统进行集成调用,避免了各个独立的系统为实现同一个功能而重复开发,减少了其他系统的开发和维护的工作量。图3为“测绘档案分发管理系统”与其他业务系统集成后的业务流程图。
图3 集成后的生产业务流程
4 系统实现
4.1 关键技术
(1)创建并调用WebService
在VS2010中创建WebService将其发布到服务器后,即可在Silverlight工程项目中对该项服务的进行引用,VS2010会自动生成该WebService的代理类。该代理类中包含了WebService中所定义的方法,Silverlight程序通过调用该代理类,就能如同使用本地方法一样去调用WebService所提供的方法。
下面是一段调用WebService实现获取当前所有用户借阅的资料:
(2)档案资料的下载保存
由于档案资料的重要性和安全性,避免档案资料存放的位置暴露在外而遭到非法攻击,故采用Web-Service的方式将用户所需的档案变成字节流传回客户端,完成档案资料的下载保存。
下面代码段用以完成客户端调用下载的Web-Service,并将其返回的档案资料的字节流保存到本地文件。
4.2 功能实现效果
“测绘档案分发管理系统”实现了数字测绘档案管理的用户登录、档案资料查询、定位、申请、审批、自动分发、下载等功能。由于采用Silverlight技术,客户端能够将枯燥无味的数据采用更加丰富多彩的形式展示给用户,极大地增强了用户的交互使用体验感受。同时采用WebService对各类功能进行了封装,既增强了数据的安全性,方便了系统的调用,还增强了系统之间的交互性。图4、图5为“测绘档案分发管理系统”运行效果图。
图4 数据展示界面
图5 审批界面
5 结论
本文针对数字测绘档案管理的业务流程,设计了基于Silverlight的测绘档案服务平台,通过使用RIA技术在客户端完成更生动的数据展示,给予用户更友好的交互体验。该平台采用WebService技术,通过调用若干发布的服务来完成测绘档案数据管理,不但保证了档案数据的安全性,而且能非常方便与其他平台进行集成。“测绘档案分发管理系统”自从2011年12月份上线到2012年4月份截止,共完成约4 000次档案资料的申请分发下载(含审批未通过的申请)。该系统的建立不仅提高了武汉市测绘研究院数字测绘档案的使用效率,规范了档案管理流程,实现了档案数据借阅使用的全程追踪,而且实现了与项目管理系统等其他系统之间的无缝集成,为武汉市测绘研究院的日常测绘生产管理提供了有力的技术支撑。
[1]李黎,帅勤辉,黄雁.基于WebGIS的测绘档案查询与分发[J].地理空间信息,2011,09(2):13 ~15,80.
[2]付华,钟勇.富因特网应用程序在Web数据展现中的应用[J].计算机应用,2009,29(B06):292~295.
[3]杨德仁,薛梅,顾君忠.Web Service核心协议与实施研究[J].计算机系统应用,2005(1):33~36.
[4]陈谦,余江峰,潘森等.基于RIA方式的WebGIS构建[J].遥感信息,2009(8):89~94.
[5]Gathries.First look at Silverlight2[EB/OL].