不动产与农村权籍调查是目前测绘工作的两个热点,大家知道,这两项成果最后都要向上级汇交,汇交成果需要满足验收标准,如何快速、准确对测绘单位生产的成果进行质量检查是管理单位面临的一项重要任务。
最先接到的任务是开发一个简单的农村权籍调查成果质检软件,其核心目标仅仅是满足能够与现有系统对接,完成空间数据入库。实现思路有二:其一,根据现有系统的数据库标准,开发一个简单的针对空间数据图层、属性、拓扑的检查工具;其二,做一个较为通用、完善的质检工具。当然我是选择了后面一种方案,痛苦自己,成全大家。事实证明,在毫无征兆的情况下,客户又要一个不动产成果质检软件,这个工具通过一番配置也基本能满足用户要求,当然,工具目前还不完善,没有完成成果评分定级等功能,但通过工具软件的开发,完成了一个可扩展的通用质检软件框架,并制定了检查规则体系、质检插件编写规范,程序员只需根据规范编写质检函数即可,大大提高了实施效率。
软件的设计是一个痛苦的过程,一次次推倒重来之后,基本完成了设计稿。下面做一些简单的分享。
软件特点:
(1) 高扩展性
软件通过“配置文件+插件”的方式实现了高扩展性。
这个是整个设计的最核心原则,工具需要满足尽可能多的应用场景。因此对于通用的质检功能,尽可能采用配置方案,如目录结构、图层、字段、拓扑的检查都是通过配置文件实现定制;
设计之初,目录结构的通用配置是最难处理的,因此采取了插件方式,在无法配置的情况下,可以开发一个单独的质检dll,通过该dll替换通用规则解析器。
如:在实际使用过程中出现系统交付实施部门后,客户的文件目录结构标准发生了变化的情况,房产图命名按照不动产单元号进行划分,需要与空间数据进行匹配检查,最简单的做法是编写一个自定义规则解析器,在其中实现相关检查逻辑,然后通过配置方式注册到系统中,将之前使用的检查规则从系统中注销即可。
(2) 质检指标(Indicator)——质检规则(Ruler)关联
系统建立了质检指标——质检规则关联机制,质检指标可对应多个规则,解析器,单个规则现单一的质检功能,质检指标与规则存在1:N的关系。
(3) 实现了目录规则的定制
前面有讲到,设计之初这个是难点,通过多次重构,最终实现了目录结构的通用配置检查,只是配置规则较为复杂,需要编写单独的目录规则配置说明。
目录规则包括:目录(文件)名称、目录级别、数量等规则。
(4) 丰富的属性规则
包括:属性字段名称、类型、值格式、值域等。
(5) 质检结果双击可定位错误
可以定制质检结果错误列表中双击错误记录的响应操作,如打开文件夹、定位错误图斑、打开属性表等。
(6) 其它
还有其它很多特点不再一一赘述。
主配置文件:
新建工程:
质检过程:
直接结果与定位错误: