1、 毕 业 设 计中文题目 基于工作流的地名数据采集系统的设计与开发英文题目 Design and Development of GeoNames Data Collection System based on Workflow院 系: 计算机与信息工程学院年级专业: 2010 级空间信息与数字技术姓 名: 汪青学 号: 1020012101指导教师: 袁莹职 称: 副教授2014 年 5 月诚信声明书毕业设计(论文)诚信声明书本人郑重声明:在毕业设计(论文)工作中严格遵守学校有关规定,恪守学术规范;我所提交的毕业设计(论文)是本人在 指导教师的指导下独立研究、撰写的成果,设计(论文)中所引用他
2、人的文字、研究成果,均已在设计(论文)中加以说明;在本人的毕业设计(论文)中未剽窃、抄袭他人的学术观点、思想和成果,未篡改实验数据。本设计(论文)和资料若有不实之处,本人愿承担一切相关责任。学生签名:年 月 日摘要摘 要随着数字化城市的发展,地名数据的重要性越来越强,传统的地名数据采集方法已经不能满足日益增长的要求,如何又快又好地获取地名数据成为一个研究热点。现在存在的地名数据采集系统虽然能提高采集工作效率,但是没有达到理想的效果。本课题通过将工作流技术融入地名采集系统,通过工作流提供的服务接口来管理流程,从而弥补现有的地名数据采集系统的不足。本系统采用了 Activiti 作为系统的工作流引
3、擎,通过集成 Spring 和JPA( Hibernate)进行开发。上述框架的集成耦合度较低,对系统的日后维护和升级有很大帮助。系统实现了数据采集,数据检查等基本功能,通过 Activiti 中提供的服务对采集工作进行管理,实现流程的自动跳转,任务人员的分配、流程发布和自定义流程等功能。关键词:地名采集;工作流;Java Web 开发ABSTRACTIABSTRACTWith the development of digital cities, geographical names data become more and more important, the traditional ge
4、ographical names data collection methods have been unable to meet the growing requirements, how to get better geographical names data in time become a hot research topic. Now although the existence of the geographical names data collection system can improve the data collection efficiency, but did n
5、ot achieve the desired results. This topic put workflow technology into geographical names data collection system, using the interface of service provided by the workflow to manage processes, which make up for the deficiencies of the existing geographical names data collection system. The system use
6、s the Activiti workflow engine is developed by integrating Spring and JPA (Hibernate).Integrating the above framework is help for the future of the system maintenance and upgrades because of the lower degree of coupling. System has data collection, data checking, and other basic functions, the data
7、collection work be managed by the service which Activiti provided. The system realizes automatic jump of processes, tasks personnel assigning, processes publishing ,process modeling and other functions.Key Words: geographical names data collection; workflow;Java Web development目录 II目 录第 1 章 引言 .51.1
8、 研究背景与意义 .51.2 国内外研究现状 .51.2.1 工作流的研究现状 .51.2.2 地名数据采集的研究现状 .61.3 主要研究内容与技术路线 .7第 2 章 需求分析 .92.1 功能需求分析 .92.2 用户行为分析 .102.3 采集工作流程分析 .112.4 环境需求分析 .112.4.1 系统开发环境 .112.4.2 系统运行环境 .112.5 技术需求分析 .11第 3 章 系统设计 .133.1 系统总体设计 .133.2 流程设计 .143.3 工作流嵌入设计 .163.4 数据库设计 .163.4.1 数据库环境 .163.4.2 命名规则 .163.4.3 表
9、汇总 .163.4.4 表关系 .183.4.5 数据库操作安全性 .183.5 系统 MVC 模式设计 .18第 4 章 系统实现 .194.1 移动端数据录入 .194.2 系统主页 .194.3 桌面端数据录入 .194.4 数据检查 .204.5 数据修改 .214.6 用户管理 .214.7 流程发布 .224.8 流程建模 .224.9 历史流程查询 .23第 5 章 系统测试 .255.1 测试目的和环境要求 .255.2 功能测试 .255.2.1 用户登录测试 .255.2.2 数据录入测试 .255.2.3 数据检查测试 .265.2.4 数据修改测试 .26目录 III5
10、.2.5 流程发布测试 .265.2.6 流程建模测试 .265.2.7 用户管理测试 .26第 6 章 总结与展望 .27参考文献 .28致 谢 .29引言1第 1 章 引言1.1 研究背景与意义在数字城市建设方兴未艾的今天,建立准确、翔实、全面的地理信息数据库是非常重要的,它是建设数字城市的基础。地名地址信息数据是地理信息数据库的重要组成部分,与人们日常生活的联系也极为密切,在物流、快递等行业及城市精细化管理方面,地名地址信息得到广泛的应用。所以快速得到准确、翔实的地名数据是地名采集工作人员的重中之重,但是现在的地名采集工作存在一些不够完善的地方,比如:采集的数据需要人为的传送(邮件或者是
11、拷贝等方式) ,员工检查数据需要等待数据采集后需等待上级的指派,这些情况都极大地降低了采集工作的效率,本课题针对这种情况设计和实现基于工作流的地名数据采集系统。地名数据采集系统是结合计算机、网络来管理地名采集工作,达到简化采集工作步骤和提高工作效率的目的的计算机软件系统。1.2 国内外研究现状1.2.1 工作流的研究现状自从进入工业化时代以来,过程的组织管理与流程的优化工作成为企业管理的主要研究内容之一。随着市场经济的发展, 市场竞争日益激烈, 企业的物理位置逐渐分散, 部门间的协作日益频繁,决策过程的分散性也日益明显;企业对日常业务活动的详细信息的需求也日益提高。企业要求其业务过程能够进行快
12、速重组; 业务过程的不断变化也相应要求信息系统能够快速重组。因此, 企业希望有一种能够实现企业业务流程快速重组和业务过程自动化的软件系统。随着计算机网络技术和分布式数据库技术迅速发展、多机协同工作技术日臻成熟,20 世纪 80 年代中期, 工作流的概念被提出。工作流技术的提出与发展为企业更好的实现经营目标提供了先进的手段 1。1993 年工作流技术的标准化组织工作流管理联盟(Workflow Manangement Coalition 简称:WfMC) .的成立标志着工作流技术在计算机应用领域之中被明确的划分出了自己的一席之地, 相应的概念与术语也得到了人们的承认。在全球范围内, 对工作流的技
13、术研究以及相关的产品开发了进入了更为繁荣的阶段。工作流为以流程为中心的应用提供先进的技术实现 2,工作流通过使用软件定义、创建和管理流程执行 3达到将业务流程部分或全部自动化 4,5。引言2根据工作流产品运行时与业务应用系统的关系可以分为嵌入式工作流和分布式工引言3作流。对于两种形式的工作流的特点,以基于 J2EE 的工作流引擎 6来说,嵌入式工作流不能单独运行,它是以 jar 包的形式让开发者将其嵌入到自己的项目中,是其成为项目的一个部分。嵌入式工作流引擎通过提供 WAPI(Workflow API)使业务应用系统能够调用工作流提供的服务(启动流程、开始任务、结束任务) 。分布式工作流引擎本
14、身就是一个单独的应用。作为服务应用如果又没有基于某个中间件技术的话,分布式工作流引擎必须自己实现多线程同步、网路通讯处理、资源池等服务端技术,因此实现的成本高、技术复杂。在与业务应用的交互方式上,分布式工作流引擎会以远过程调用的方式提供 WAPI(Workflow API) 。嵌入式工作流国外的有 Activiti7,Activiti 是一个独立运作和经营的开源项目品牌,并将独立于 Alfresco 开源 ECM 系统运行。 Activiti 将是一种轻量级,可嵌入的 BPM引擎,而且还设计适用于可扩展的云架构。 Activiti 将提供宽松的 Apache 许可 2.0,以便这个项目可以广泛
15、被使用,同时促进 Activiti BPM 引擎和的 BPMN 2.0 的匹配,该项目现正由 OMG 通过标准审定。 国内的有 X5 工作流,X5 工作流是起步软件发布的一款工作流。支持 SOA8,9,10架构,并且对 Android、iPhone 和 WindowsPhone 三大移动设备提供全面支持。分布式工作流国外的有 EVE,EVE 是基于“事件驱动 ”的分布式工作流,主要由事件引擎服务器和 Broker(代理)组成。事件引擎服务器负责接收来自本地代理及远程事件引擎服务器的事件,并根据 ECA(Event Condition Action)规则定义,把事件发送给“感兴趣”的代理,当代理
16、接到相应的事件后,就开始执行一个工作流实例的某一个活动,在这期间,代理还会产生新的事件。这些事件被通知到事件引擎服务器后,服务器将继续以事件的方式推动整个过程实例的进程。国内的有协同工作流,它是一个收费的分布式工作流。1.2.2 地名数据采集的研究现状地名是特殊的信息,有着丰富而深刻的文化内涵。地名不但记录着山川等地理自然元素的历史变迁,也反映了城市功能的变化轨迹和乡风民情。地名传承了历史,积淀、升华了文化,寄托了人们美好的向往。一个地名就像一本鲜活的纪念册,往往蕴含着特殊的意义,有时候是承载古老的故事,有时候是镌刻不平凡的历史,有时候是纪念杰出的人物 11。随着数字地球的影响越来越大,地理信
17、息的采集与挖掘也越来越重要,上世纪九十年代,原中国地名委员会就制定了中国地名信息系统技术规范(试行) ,要求对地名档案进行现代化管理 12。现在的地名数据采集的步骤分为四步:(1)数据预处理对比例尺为 1:500 地形图全要素地形图进行处理,只保留房屋、道路、围墙、栅栏、注记、图廓图层,其余数据删除。引言4(2)打印工作纸图将处理后的 1:500 地形图打印黑白纸图,用于作为调绘底图。(3)外业数据采集以处理后的 1:500 地形图纸图为工作底图,沿街有名称店铺全部实地调查采集,在图上标记其位置、名称、门牌号码、并进行拍照。(4)内业数据整理将 1:500 地形图格式的地形图导出为 SHP 格
18、式,使用 ArcGIS 软件打开,将其作为参照图层,依据调绘纸图,定位地名地址的平面位置,在属性字段中添加名称、门牌号码、代码、地址等信息,形成 SHP 格式点文件。门牌号码依附于对应的道路,号码与对应的路名要写在一起。院落、小区要构面,并形成 SHP 格式面文件 13。有人结合全国第二次地名普查的实践经验设计和实现了地名普查采集系统,这个系统分为野外采集系统和数据处理系统两个部分,野外采集系统能够安装在电脑(平板电脑) 上 14,由地名数据采集人员携带 GPS 定位设备,对地名信息进行采集、录入;数据处理系统安装在台式机中,数据处理系统负责将野外采集的数据导入系统,并做相应的标准化处理并将标准化的数据导出为国家要求的地名数据格式 15。1.3 主要研究内容与技术路线实现 Android 平台的数据采集,并将录入数据通过移动网络传输到使用单位的数据库中;利用 Activiti 工作流引擎管理和控制流程;通过 Javascript 和 JSP 实现客户端的开发,Java 实现服务器端的开发,使用单位可以通过网页查看数据和对流程的管理,实现使用单位对人员的安排,审核人员检查数据等工作,技术路线图如图 1.1 所示。地名数据采集数据导入 S Q L i t eA n d r o i d 应用开发J a v a W e b 开发系统测试图 1.1 技术路线图