首页 > 范文大全 > 正文

软件设计模式在农业气象系统开发中的应用

开篇:润墨网以专业的文秘视角,为您筛选了一篇软件设计模式在农业气象系统开发中的应用范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘 要:近年来,随着社会进步和科技发展,人们对农业气象系统的开发也予以更多的重视。本文主要结合农业气象系统的需求和系统模式设计等方面,分析软件设计模式农业气象系统开发中的应用效果。

关键词:软件设计模式;农业气象系统;系统开发;应用效果

中图分类号:S165 文献标识码:A

1 农业气象系统的总需求

1.1 系统功能的需求

近年来,随着我国农业气象事业的发展,业务系统也得到了发展和完善。并先后建立了农业气象灾害监测预警评估、农林病虫害气象等级预报、农业气象影响评价、农用天气预报、生态气象检测评估、作物产量气象预报、农业气象业务产品制作,以及农业气象综合数据库应用等8个子系统。但因各阶段子系统需求的不同,以及计算机技术的日新月异,总系统缺乏对子系统更有效的管理规范,造成系统模块相对零散的现象。

1.2 系统开发技术的需求

为了适应社会经济的快速发展,保证农业气象系统的与时俱进,在针对农业气象系统的开发运用中,系统开发主要集中在系统框架、数据库应用和GIS应用等方面的开发。利用目前我国所拥有的计算机开发技术,对农业气象业务系统进行模式设计。

2 系统模式设计

2.1 系统模式设计前提及要求

在农业气象业务中,主要具有:多种数据资源并存、业务地域性较强、技术革新快、多种模型并存等4种特点。在对农业气象业务进行系统模式设计时,应该结合以往农业气象系统设计的特点,取其精华去其糟粕,注重软件设计模式的实用性和集约化模式。在这些特点的基础上,要求系统的设计应该结合开放式松散耦合框架,具备有独立更新和适应数据变化的能力,具备构建适合不同地域系统的能力,同时,还需确保局部技术变化不影响整个系统运作。

系统的模式设计,主要有创建型模式、结构型模式和行为模式等三大类,细分有几十种模式。在农业气象系统中,常用到的主要有以下几种方法。

2.1.1 模板方法

作为商业服务网站设计的主要方法,其主要原理是减少同属于一个父类的子类中存在的重复代码。

2.1.2 工厂方法

通过对创建对象代码的封装,从而适应业务发展的需求改变。

2.1.3 策略

在系统运行时,使用策略对算法进行择优选择。

2.1.4 装饰者

主要功能是扩展对象结构和灵活选用继承来创建新子类。

2.1.5 观察者

为软件提供“-订阅”的体系。

2.1.6 访问者

将操作片段加以集中,并封装在自身的类中。

2.1.7 组合对象

汇集异构对象,同时,若其类结构发生改变,也不会对客户端造成影响。

2.2 总体框架模型

在江苏省启东市气象局气象系统的开发中,软件设计的总体框架模型主要由数据存储层、低层技术方法、高层系统功能层3种构成。其中,数据存储层主要由图形图像数据库、产品数据库、气象数据库、地理空间数据库、资料控制模型等构成。低层技术方法中,主要运用到的是地理信息开发组件、图表分析组件和其他组件等通用组件。而高层系统功能中,主要由系统自带的准标准化共享功能模块和插件管理的专业模块两种构成。

软件设计总体框架技术的功能,首先是利用数据库强大的数据存储空间和处理能力,对转化来的非标准数据进行整理和管理;其次是公开独立的低层通用软件或是模块,以促进系统二次开发,并为不同的地域业务提供需要。此外,软件设计总体框架技术还能提供集成组装各功能模块的功能。

2.3 数据控制与组件封装模型

2.3.1 数据控制模型

数据模型的设计,在于对原始数据的提取、数据的转换和质量控制等。通过对原始数据进行过滤和转化,将数据转化成业务所需的数据,并加以记录和更新,以此来提高系统兼容性和对数据的处理能力。

2.3.2 数据服务模型

该模型的核心功能是通过利用SQL数据库中的查询指令和统计模块等,实现对数据库存储过程的构建。通过数据服务模型的构建,能够降低客户端运行的负担,也方便江苏省启东市气象局对系统进行维护,为客户端提供更高更全的数据服务产品。

2.3.3 数据组件封装模型

在使用其他模型的同时,若采用数据组件封装模型,不但能够利用该模型的二次开发能力,同时还能提高系统的生产力和质量,减少开发费用等作用。其中,主要有数据库访问ADO组件的封装模型。

3 应用效果

3.1 基于ArcMap的农业气象系统

在江苏省启东市气象局对农业气象的开发中,通过应用ArcGIS开发技术、语言,对传统的业务系统进行改革,通过采用基于ArcMap的农业气象系统,实现在GIS平台上对启东市主要作物生长情况的监测、对影响该市农业气象灾害的监测,以及对土壤水分进行监测对比等。同时,由于在采用基于ArcMap的农业气象系统时,利用动态链接库组件进行开发,促使ArcMap技术开发的软件结构较为简单、程序加载快等特点,也便于日常维护。

但由于系统中使用的是动态的数据库,造成了应用程序的不独立,需要配备占用一定内存空间的组件包支持才能运行。

3.2 基于Oracle的农业气象系统

通过结合Oracle9i数据库平台、ARCGIS SDE空间引擎技术和数据组件封装模型,开发出的基于Oracle的数据库应用系统,能够初步实现数据管理、查询、统计和检索,以及对数据进行对比分析等特定功能。在江苏省启东市气象局进行农业气象工作过程中,能够帮助调用公共气象数据,以及提供快速访问数据库的功能。

基于Oracle的农业气象系统并未在Oracle10g和ArcGIS SDE9.3平台下测试或是运行,因此,对于这项技术的使用,还需要加以调整相关参数和完善。

参考文献

[1] 计春雷.软件设计模式及其应用研究[J].上海电机学院学报,2006(5).

[2] 庄立伟,卫建国,毛留喜.软件设计模式在农业气象系统开发中的应用[J].应用气象学报,2011(05).

[3] 屈振江,郭江峰,曾英,等.陕西市县农业气象灾害监测预警业务系统研究[J].灾害学,2008(3).

[4] 刘丽,刘清,宋国强,等.基于GIS组件的农业气象信息服务系统[J].中国农业气象,2006(4).

[5] 张传国.基于GIS的设施农业气象灾害服务保障系统的设计与实现[J].山东科技大学,2011(1).

作者简介:王炜(1970-),男,汉族,江苏省启东市人,中专学历,工程师,从事科技服务或农业气象。