家庭农场信息管理系统的设计与实现
2015-02-28孙志强朱红梅申翔翔
王 鲁,孙志强,宋 超,朱红梅,申翔翔
(山东农业大学信息科学与工程学院,山东泰安 271018)
家庭农场信息管理系统的设计与实现
王 鲁,孙志强,宋 超,朱红梅,申翔翔
(山东农业大学信息科学与工程学院,山东泰安 271018)
发展家庭农场是提高农业集约化经营水平的重要途径。家庭农场信息化为更好地实现科学种植、科学管理提供了数据支持和技术保障。该研究基于对章丘盛泉家庭农场的调研分析,设计并开发了家庭农场信息管理系统,该系统满足了对当前家庭农场土地、种植养殖记录、生产资料、农产品、操作人员等的信息化管理需求,提升了家庭农场生产及管理的整体水平。
家庭农场;信息管理系统;ExtJS;S2SH;MySQL
家庭农场是指以家庭成员为主要劳动力,从事农业规模化、集约化、商品化生产经营,并以农业收入为家庭主要收入来源的新型农业经营主体。在美国和西欧一些国家,农民通常在自有土地上经营,也有的以租入部分或全部土地经营,农场主本人及其家庭成员直接参加生产劳动。早期家庭农场是独立的个体生产,在农业中占有重要地位。我国农村实行家庭承包经营后,有的农户向集体承包较多土地,实行规模经营,也被称之为家庭农场。2013年“家庭农场”的概念是首次在中央一号文件中出现,鼓励和支持承包土地向专业大户、家庭农场、农民合作社流转。2013年中央一号文件提出,坚持依法自愿有偿的原则,引导农村土地承包经营权有序流转,鼓励和支持承包土地向专业大户、家庭农场、农民合作社流转,发展多种形式的适度规模经营。随着“家庭农场”概念的提出,越来越多的家庭农场开始出现并迅速发展,家庭农场信息管理系统的设计与实现可为家庭农场基本信息管理、种植养殖管理、生产资料管理、产品销售管理、物流管理等提供较好的信息化服务[1-2]。
1 系统需求分析
1.1 功能划分该系统设计的目的是为了让家庭农场管理者能随时随地的通过网络对家庭农场的生产信息进行管理,因此,将系统按功能划分为14个模块,按照不同的模块有以下主要功能。
农场管理:负责管理农场的信息管理,包括名称、面积、位置及农场负责人。
种植养殖批次管理:负责某一时间段内某一农场的作物类型种植管理。
作物护理管理:管理种植养殖某一批次作物过程,规范化地记录种植养殖过程中使用种苗、肥料、药品、农机等的信息,为将来的农产品追溯预留接口。
肥料档案管理:规范化管理不同时期使用的肥料的基本信息。
药品档案管理:规范化管理不同时期使用的农药、疫苗、药物等的基本信息。
种苗档案管理:规范化管理种苗基本信息,包括种苗的购入、分配及剩余数量。
农机档案管理:规范化管理家庭农场所拥有的及租赁的农机信息,包括名称、数量、持有方式。
人员档案管理:规范化管理家庭农场合同工及临时用工的基本信息,包括各项目负责人、用工及管理员的信息记录。
药残检测管理:针对部分家庭农场倡导的健康、绿色、有机的特点,对家庭农场农产品药残检测结果进行管理。模块负责记录对某一批次的药残检测结果及检测时检测单位及负责人。
有效认证管理:管理家庭农场有效认证信息。
客户档案管理:规范化管理农场产品客户及购买方的信息。
农产品销售(订单)管理:规范化管理农产品的去向,包括收购方(客户)、价格、数量、种类(批次)等信息。
物流单位档案管理:规范化管理对物流公司的信息,为系统记录提供统一方便的信息。
订单物流信息管理:规范化管理对公司交易订单的运输记录。
1.2 管理控制流程管理员首先要进行土地的分配等管理用来创建各种生产时需要的土地信息,然后再进行生产物资(包括种苗、肥料、机械)等的管理,包括物资的购买录入。管理员也可以随时对生产操作人员信息及对其进行职责与权限上的划分进行录入。待种苗的种植季节到来之时,管理员通过系统操作土地与种苗,来生成一个种植批次,然后再通过系统设置操作人员与批次号来对某一指定的批次进行护理操作,包括除草、浇水、施肥等。在一个批次生产完成后,系统首先录入购买客户与周围物流单位的信息,然后通过生成一个订单来记录客户的购买信息,并操作该订单将订单交付给物流单位运送到客户指定地点,这样,家庭农场的整个生产过程就完成,该系统功能就是对这样一个个的生产流程进行控制和管理。
1.3 平台方案从技术及目标用户消费水平考虑,该系统采用的设计方案为前端表现采用了开源框架ExtJS,后台技术采用了Java平台下的当前最流行的Java EE轻量级解决方案——S2SH,即Struts2、Spring Framework 和Hibernate的缩写[2]。
ExtJS 主要用来开发RIA富客户端的AJAX应用,主要用于创建前端用户界面,与后台技术无关的前端AJAX框架。
Spring Framework 是一个开源的Java/Java EE全功能栈(full-stack)的应用程序框架,以Apache许可证形式发布,它是为了解决企业应用开发的复杂性而创建的[4]。
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲地使用对象编程思维来操纵数据库,完成数据持久化的重任[4]。
前端ExtJS与后端的S2SH框架的结合,使得软件开发变得非常规范和容易,基于对系统性能及使用者成本的考虑,该研究在数据保存方面采用了当前流行的开源数据库MySQL。MySQL是一个开放源码的小型关联式数据库管理系统,体积小,速度快,总体拥有成本低,被广泛地应用在Internet上的中小型网站中。
2 系统设计与实现
该系统采用目前最为流行使用的B/S模式,即Browser/Server(浏览器/服务器)模式,此模式的优点是用户操作使用时不必需要安装特定的操作软件,只需要使用一个安装有浏览器且能上网的电脑即可通过登录指定页面进行操作使用,同时这也为用户随时切换工作机器提供了可能[5]。该系统支持多用户同时登录进行操作,由于所有用户信息最终都会及时保存到同一个系统中,保证了数据的及时性和完整性。
2.1 类及数据库设计设计该系统时通过详细了解家庭农场生产过程中的流程细节及操作规范,充分合理地进行建模设计来划分不同的系统类及数据库表,从而达到更好的系统处理流程及使系统数据更为合理。表1列出了用到的部分类及其数据表字段。
2.2 系统类关系图1为该系统中全部类及之间的依赖关系。该系统采用将用户的账号与用户信息进行分开保存的存储方法,这样可以做到一个用户多个账号等特殊情况,也能防止用户信息查询时对账号信息的泄漏。考虑到护理物品如肥料、农药、农机等基本信息大体相同,因此该系统的处理方式为声明一个护理物品类,使农药类、肥料类、农机类等分别继承该类,作为护理物品类的一个具体实现,并且考虑到护理物品类数据字段大体相同,因此在数据保存的时候也都保存到同一张数据库表中,并增加一个字段用以区分。该系统中客户与物流单位的逻辑上均属于农场外部单位,数据字段上也基本相同,因此也采用了与护理物品类同样的处理方式。
表1 数据库设计
2.3 批次管理流程图2展示了家庭家场生产过程中对一个批次生产管理的生命周期。该流程图模拟展示了一个批次从选取种苗及农场来进行种植,并根据此行为生成一个批次,表示某一指定的种苗及农场的组合。种植护理过程中的浇水、施肥、除草等活动都是在生成批次后,以指定批次进行,期间可以进行多次,直到批次收获后该系统认定该批次的生命周期结束,管理员可以对该批次进行出售等操作。
2.4 系统实现系统主界面如图3所示,通过树状菜单可完成操作项目的选择,通过查看、添加、编辑、删除、导出等功能按钮,实现对于数据的管理操作。
图3 系统主界面参考文献
[1] 邹立红,戴起伟,董钊.农业信息化的现状及发展对策[J].农业网络信息,2006(1):9-11.
[2] 王儒敬.我国农业信息化发展的瓶颈与应对策略思考[J].中国科学院院刊,2013(3):337-343.
[3] 曹鸣鹏,赵伟,许林英.J2EE技术及其实现[J].计算机应用,2001(21):45-46.
[4] 余浩东.JAVA 应用框架设计与项目开发[M].北京:清华大学出版社,2008.
[5] 戴建国.基于国营农场的作物生产信息管理系统设计与实现[J].中国农业科学,2012,45(11):2159-2167.
Design and Realization of Information Management System for Family Farm
WANG Lu, SUN Zhi-qiang, SONG Chao et al
(College of Information Science and Engineering, Shandong Agricultural University, Tai’an, Shandong 271018)
Development of the family farm is an important way to improve the level of agricultural intensive management. The family farm informatization provides data support and technical support for scientific planting and management. Based on the survey and analysis of Shengquan Family Farm, the Family Farm Information Management System was designed and developed, which can meet information management demands about farm land, planting and breeding records, procreative material in agriculture, agricultural products, and operator etc., so as to improve the overall level of the family farm production and management.
Family farm; Information Management System; ExtJS; S2SH; MySQL
山东省科技发展计划项目“信息化支撑家庭农场发展技术体系研究与示范”(2013GNC21006);山东省国际科技合作项目“大规模本体的模块化方法与技术及其应用合作研究”。
王鲁(1981- ),男,山东东平人,副教授,在读博士,从事农业信息化、复杂网络研究。
2014-11-21
S 126
A
0517-6611(2015)02-365-03