基于移动GIS的地理野外实习辅助APP设计与实现
2022-08-03李延杰李世龙
李延杰 李世龙 张 震
(安徽理工大学空间信息与测绘工程学院,安徽 淮南 232001)
0 引言
随着经济的不断发展以及对学生知识水平和专业素养要求的提高,未来地理野外实习会被更多高校所接受和引进。地理野外实习不仅能培养学生对地理知识的兴趣,还可根据现场的实物为学生讲解课堂上不易理解的概念,寓教于乐。
鉴于野外实习的重要性,越来越多的高校都开设了野外实习课程。然而,在野外实习过程中,在考虑人员安全的同时,还要考虑人员舟车劳顿的问题。在实习过程时,由于缺乏及时正确的引导,学生对实习的态度也会由前期的兴致高昂变成后期的草草了事。所以,一个具有丰富功能的野外实习平台是不可或缺的,其在保障学生安全的同时,也可完成老师与学生的实时沟通与任务的实时跟进。目前,国内学生野外实习平台的建设还处于起步阶段,无法满足人才培养的需求,因此对其从形式到内容进行彻底的改革已迫在眉睫[1]。
1 需求分析
在系统设计过程中要先进行需求分析,要了解用户对该系统有什么样的需求,从而根据用户需求进行系统功能设计。庐山地理野外实习主要是在庐山地区开展的,持续时间为14 d,包含多条实习路线,涉及地质、地貌、植被、土壤、气象等多个专题内容。实习过程可分为三部分,分别是实习前的准备阶段(包括思想准备、实习内容介绍和实习物资的准备)、实习过程的教学阶段,以及实习后的室内资料整理、学生编写报告、教师批改报告阶段。结合实习开展的流程以及综合考虑的注意事项,初步形成三方面需求[2]。
1.1 实习数据的组织管理需求
在传统的野外实习过程中,资料一般是记在特定的本子上,保存起来比较麻烦,还容易丢失,且所有人的资料难以有效地整合起来,无法建立统一的数据库管理系统,难以满足实习资源的交流与共享。
1.2 实习人员的安全管理需求
安全管理一直是野外实习的重要内容,庐山地理野外实习辅助APP可对实习过程进行监管,带队教师可通过手机直接查询学生的实时位置,保障实习能够安全顺利地展开。
1.3 实习人员的实时交流需求
在野外实习过程中,除了要进行基本的地理知识学习外,还应构建一个具有在线聊天互动、知识分享功能的平台。师生可在此平台发表个人对实习的见解和看法,遇到问题时还可通过聊天平台进行答疑,通过共同探讨来促进学生对知识的深入理解[2]。
2 可行性分析
2.1 技术可行性
本研究以Android Studio为开发工具,以ESRI公司提供的ArcGIS Runtime API for Android功能开发包作为开发工具包,对地理实习辅助系统的功能进行开发,运用Java、SQL、XML等开发语言,以SQL Server 2008R2为后台数据库,来实现系统的相关功能。从技术方面来看,庐山地理野外实习辅助APP开发过程中存在的技术问题并不多。
2.2 经济可行性
庐山地理野外实习辅助APP的逻辑架构相对简单,且开发周期较短,可在普通手机上运行。开发该APP对计算机的配置要求较低,一般性能的计算机就可完成对该APP的开发。在APP开发及运行过程中仅需要支付少量的开发成本、服务器架设成本和服务器运行维护成本。
2.3 操作可行性
以庐山实习区域为对象的地理实习辅助APP是结合实际工作需求进行开发的,符合实际情况。同时,技术实现的可操作性非常大,从而系统的操作是可行的,能满足用户的需求。此外,利用C/S开发模式的轻便性和可封装性的特点,使该APP的开发具有复用性。
3 设计方案
3.1 数据库设计
3.1.1 地理数据库设计。实习地和实习地周边信息以及其他各类信息是由空间数据和属性数据构成的。空间数据对应着空间实体的地理编码,如实习点的分布、空间地理位置等,其还包含空间实体的地理坐标。野外实习点的空间数据以.shp的格式进行保存,并通过ArcSDE空间数据引擎,将其统一存储在SQL Server 2008R2数据库中。
3.1.2 属性数据库设计。
①用户信息表。用户信息是用来区别每个注册用户的身份。每个用户都有ID(学号)、密码、用户昵称、头像、班级、联系方式等信息。学生可在系统中查看注册的个人信息、本人及同群组成员的位置信息;教师可在系统中查看其管理的参与野外实习学生的实时位置和历史记录,可在系统中查看实习期间所有学生的位置和安全状态等,并发布任务与测试信息。
②用户位置信息表。用户位置信息记录的是每个野外实习用户在实习期间上传的位置信息,将该信息上传给系统,并在前端电子地图上显示,包括用户ID(学生学号或教师工号)、经度、纬度、上传时间等。教师可查看学生的历史位置信息以及系统绘制出的运动轨迹图。
③任务信息表。任务信息表记录的是此次野外实习的任务,包括任务ID、教师ID(教师工号)、任务内容、学生提交时间、应得分数等。在实习过程中,教师可随时发布一些小测试,学生可直接在线提交成果,且教师可实时对测试进行批改。
④测试结果表。所有学生提交的答案信息都存储在该表内,教师在批改打分后,也会把评价和分数存储在该表内。当统计分数时,就可根据该表内的分数进行统计。
⑤实习点信息表。实习点信息实体及其属性可用于查询地图上地物点属性,包括点名称、编号、图片、属性、详细信息等属性。通过查询地物点名称可找到该点的属性信息,其中属性表示该点的地貌属性(石灰岩、沉积岩、溶蚀洞地貌等),图片表示该点图片的储存地址。
3.2 功能设计
庐山野外地理实习辅助APP分为四个功能模块,分别为地图模块、实习任务模块、聊天模块以及用户模块,如图1所示。
图1 功能模块图
4 系统实现
4.1 地图模块
地图模块包括所有与地图相关的功能,包括实时搜索实习点、查看位置、路线规划、搜附近等功能。用户在输入框中输入关键字,然后点击查询按钮,系统会将匹配到的地物在地图上进行定位,并在屏幕中心通过高亮放大的形式进行显示。通过ArcGIS Server的地图服务功能来查询空间位置,根据图层属性字段可查询对应点名。同时,APP首页面会弹出该实习点的“详细信息介绍”及“搜附近与到这去”的按钮。其中,详细信息页面有来源于SQL数据库的实习点详细信息。“搜附近”是以该点为中心,搜寻缓冲距离为1 500 m范围内的地物点(如超市、实习点等),“到这去”是根据ArcGIS发布的网络分析服务,对实习点之间的路径进行规划。
4.2 任务模块
实习模块主要包括任务和测试两大部分(一个账号,不管是教师还是学生,同一时间只能参加一个实习任务),见图2。实习测试是指在实习过程中,教师可发布一些小测试来检查学生的学习效果,由于是野外实习,所以测试内容比较简单,主要是让学生们在实习区域内寻找某一特定景观或其他实物并拍照上传等,有点类似于考试中的简答题,没有固定的答案。一个实习任务可包含多个实习测试。该模块主要分为教师发布新的实习任务、任务管理、教师编辑发布新的测试、测试管理、学生提交测试答案、教师批改测试答案并打分、统计实习任务中每位同学的得分以及推送等。
图2 任务模块图
4.3 聊天模块
考虑到实习任务是以班级为单位开展的,学生彼此之间都认识,所以就没有设置验证功能,即任何人都可在不加为好友的情况下向别人发送信息。该系统有3种情况可跳转到聊天界面:①点击会话列表中的会话信息进入聊天界面(没有聊过天的两个人之间没有会话信息,若删除两人之间所有的聊天记录也会默认删除会话信息);②在地图界面点击“联系他”进入聊天界面,若进入聊天界面后不发送信息就退出来,也不会创建会话信息;③点击用户搜索结果列表,可进入聊天界面,在进入后不发送信息就退出来,同样不会创建会话信息。聊天模式采用环信开源工具包,每个账号和密码都绑定着一个环信账号和密码,所有的聊天记录和会话信息都保存在环信服务器上。
5 结语
本研究以庐山野外地理实习为例,采用Java、XML和SQL开发语言,基于ArcGIS Server10.2.2、ArcMap10.2.2、Android Studio4.1.2开发工具,根据师生野外实习需求和实际情况,设计并开发出庐山野外地理实习辅助APP,其具有一定的可行性、实用性和可操作性。该APP能充分发挥移动GIS的便捷性、良好的用户交互性和地理位置依赖性[3],为前往庐山地区进行野外地理实习的师生提供了一定的便捷性和决策辅助。随着信息化技术的发展,庐山野外实习辅助APP要面临着新的要求和挑战,如多源异构地理实习数据的融合问题、专题实习的内容深化与应用提升问题、实习过程的线上线下结合问题,APP开发组要紧跟庐山地理野外实习的新形势,进一步研究和完善APP功能,从而提高庐山地理野外实习辅助APP的规范化、人性化和智能化。