欢迎来到学术参考网

设计模式在流动人口信息管理系统中的应用

发布时间:2015-12-14 14:26

摘 要:在对流动人口信息管理系统进行功能分析的基础上,讨论了系统总体架构模型,运用了合成模式、桥接模式和策略模式的设计方法,说明了系统关键模块的设计开发技术,最后展示了系统的运行效果。设计模式的应用使流动人口信息管理系统可以适应流动人口管理工作的各种需求变化,提高了软件的复用率,规范了系统的开发过程。

关键词:流动人口;系统开发;设计模式

引  言

  随着我国经济的快速发展,人口流动已经越来越普遍,流动人口在给当地经济发展做出贡献的同时,也带来了一些社会管理的问题。在这样的背景下,各地区的流动人口管理部门逐渐使用信息化的管理模式来对本地区流动人口进行有效的监管,流动人口信息管理系统便是一个具体的体现。该系统实现了流动人口信息的采集、加工、存储、查询和统计等功能,降低了管理工作的强度,为管理人员提供了及时准确的流动人口信息及分析结果,有利于进行科学的监控和决策。系统除了目前的功能外,还要具有适应应用环境不断变化的能力,即要方便开发人员随时对系统进行更新和升级,而减小系统变化对用户使用的影响。
  软件设计模式是一种建立在面向对象思想之上的设计思想,它充分运用了面向对象的特性,将常用的设计方法进行了总结、提炼,形成了一套复用率高、扩展性强的软件设计方法。一个完整的设计模式由模式名称、问题、解决方案、效果四个基本要素组成[4],设计模式分为创建型模式、结构型模式和行为型模式三种,对应软件设计中经常面对的三种场景。实际应用的环境是复杂多变的,设计模式可以很好地封装这种“变化”,这些“变化”用抽象进行封装,使软件能够根据未来需求的变化进行不断的扩展。
  本文讨论了流动人口信息管理系统业务的特点和需求,分析了系统的总体架构和组成模块,并详细论述了合成模式、桥接模式和策略模式在系统设计中的应用,以及运用设计模式的作用,最后通过系统几个典型业务功能,说明了系统的实现效果。

1. 系统业务分析

     业务需求是系统设计的根据,流动人口管理业务有以下特点:流动人口的信息中多种类型的信息并存,如基本信息、配偶信息、子女信息和三查信息;流动人口信息的查询方式多样,查询效率要高;日常工作中要对流动人口的多种信息进行监控;定期要上报多种不同的统计报表。系统的功能架构如图1所示。
     基于流动人口管理业务的特点,系统的设计要点有:系统应采用模块化设计框架,减少各模块间的耦合度,提高软件的共享与复用;系统要有较强的数据处理模块,并提供操作接口,以管理数量较大的信息数据;系统要有数据访问模块封装对底层数据的连接、访问过程;系统的业务逻辑模块要具有适应业务变化的能力。因此,深入理解系统各模块的作用及联系,提高模块的复用率,是设计出高质量系统的必经之路。

图1 系统功能架构
  
2.设计模式的应用方案

2.1 总体架构模式
     流动人口信息管理系统采用基于B/S的分层架构模式,B/S架构部署简单,适合于分布式系统的管理与数据的共享。分层架构是解决复杂软件开发的常用方法,各个层次之间相互独立,以促进软件的重用。流动人口信息管理系统根据其复杂度分为三层(如图2所示),从下到上分别为数据存储层、业务逻辑层和表示层。
     数据存储层由系统数据和存储过程组成,通过由扩展的SQL语言开发的存储过程来对流动人口数据进行增加、删除、修改和查询操作,并且建立数据分析与统计模型,封装操作过程,使上层模块通过调用接口即可进行数据处理,不用知道具体的操作过程,方便了程序的修改、维护,提高了开发效率。
     业务逻辑层使用面向对象的语言开发了一组独立的组件,包括数据访问组件、数据转换组件、数据服务组件和业务组件。数据访问组件对开发平台已有的数据组件(如)进行了二次封装,将数据操作抽象化,提高了开发效率,数据访问组件具有较强的通用性,用户可在此基础上开发出需要的模块;数据转换组件主要针对流动人口信息编码问题而设计,由于流动人口的户籍地、婚姻、生育情况等信息在系统中通过特定的编码来存储和处理,数据转换组件完成对信息编码的格式化、输出编码对应内容的功能;数据服务组件使用户能从其它相关系统中提取数据,并使其它系统能有限地访问本系统的数据,这个组件是为了提高系统间的信息共享而设计的。业务组件是系统的核心,接下来要介绍的设计模式主要应用于业务组件的设计。
     表示层由页面控件、图表控件和报表控件组成,系统将不同的界面元素进行了封装,增强了软件界面元素的可复用性。
     接下来,论述通过合成模式、策略模式和桥接模式来提高系统设计的灵活性和可扩展性,使系统具备适应用户需求变化的能力。

图2 系统的架构模型

2.2 合成模式
  流动人口信息管理需要采集处理流动人口的相关信息,包括基本信息、子女信息、三查信息和流动记录等,流动人口信息种类较多,管理部门根据需要获取相应的信息组合。比如户籍部门比较注意本地区流动人口的户籍信息和流动信息,而计生服务部门关心流动人口的子女信息和三查信息,将来可能增加其它计生信息。因此,设计时要适应用户对流动人口信息需求的变化,在增加或减少信息时,不影响用户已有的功能。这时采用合成模式可以满足不同信息集合的处理要求(如图3所示)。

图3 合成模式应用类图
  合成模式是处理树结构集合对象的一种方法,用户只需知道集合对象的接口,而不需要知道各节点的结构,集合内部结构的改变不会对用户产生影响。合成模式由抽象构件、树枝构件和树叶构件组成,抽象构件为集合中的对象定义出公共接口,树枝构件含有下级子对象和管理子对象的方法,树叶构件没有下级子对象。
  在图3中,流动人口信息接口定义了处理流动人口信息的一般方法,基本信息类、子女信息类和三查信息类实现了该接口,是原始的树节点类型。个案信息类也实现了流动人口信息接口,定义了对流动人口信息子对象的引用,增加了添加子信息、删除子信息和获取子信息迭代器三个方法操作子信息对象集合,采用了安全式的合成模式。用户调用个案信息类中实现的公共方法时,将分别调用信息子对象集合中子对象的方法,采用向下递归的方式处理。如果个案信息发生变化,只需修改信息子对象集合,用户调用个案信息的接口不受影响。
  
2.3 策略模式
     在流动人口管理工作中 ,用户对信息需求的不同,造成选择的查询方式不同,比如有的用户要了解本地区有2个以上孩子的流动人口的情况,或直接查询某个人的个案信息。这就要求系统能根据用户的需要动态地选择不同的查询方式,然后输出对应的查询结果,因此选择策略模式(如图4所示)。

图4 策略模式应用类图

 策略模式对相同的行为提供不同的算法,将这些算法包装到相应的策略类里面,用户在使用时动态决定调用哪个算法。策略模式包括环境类、抽象策略类和具体策略类,抽象策略类定义了具体策略类所需的接口,具体策略类包装了相关的算法 蒋正华,张羚广.人口信息系统的建设与发展研究.中国人口科学,2003,5:56-59

上一篇:多平台数据处理接口技术探讨

下一篇:远程数据同步的设计与实现