基于MVC模式城市社区居民信息管理系统的设计
2015-12-04柯秀文
李 冬, 柯秀文
(1.商丘职业技术学院计算机系, 河南 商丘 476000;2.商丘职业技术学院软件学院, 河南 商丘 476000)
随着我国城镇化进程不断加快,城市社区化建设也在不断加强,城市社区居民信息管理系统在社区管理的很多方面都能够得到高效的运行,系统的应用能使整个社区居民信息管理更加科学,更加规范。通过对数据库的添加、更新、删除等功能,将城市社区居民“进”到哪里、“住”在哪里、“出”到哪里等信息以及其相对应的信息管理模块有机的结合起来,达到数据共享。系统便于操作,对用户操作技能要求不高,能够在有效地降低社区管理人员的工作强度的同时,提高服务的效率和水平。
城市社区居民信息管理系统根据实际需要采用C/S和B/S相结合的结构进行设计,C/S部分主要提供给社区工作人员和系统管理人员使用,B/S部分主要为辖区居民服务,系统采用MVC设计模式进行架构。
一、MVC设计模式
MVC是一种把一个应用的输入、处理、输出流程进行分离的软件设计模式,这样就把一个应用分成三个层,即模型层、视图层、控制层。该模式提供的设计框架十分清晰,并提供开发系统所需的规范依据,是一种基于Web应用开发的非常先进、实用的设计思想。MVC模式的功能结构图如图1所示。
模型层处理数据最多,是MVC设计模式的核心。
视图层是用户能够看见并通过它和系统进行交互的界面,可以用来显示用户需要的信息。由于视图以网页形式表现,所以该层采用了HTML、XML、Adobe Photoshop、Java Applet等技术。视图层主要有两个功能:首先可以用来采集用户输入的信息,并将采集的信息返回控制层或模型层处理;其次可以接受来自模型层处理完成的数据并将其通过浏览器表示出来。
控制层是MVC设计模式的大脑中枢,可以在模型和视图之间中转数据,在视图层中接受用户请求,并以此将模型和视图相关联,对用户请求进行处理[2]43-44。控制器对于用户请求进行集中管理。它并不直接参与任何信息处理,而是首先接受用户发送的请求,然后将请求信息交给对应的模型进行处理,控制模型对数据进行恰当的处理,对于处理后得到的结果再交给视图层通过浏览器显示出来供用户查看。
MVC模式其处理过程如下:首先用户在网页提交表单发出请求信息,该过程一般由视图层来处理;然后控制层负责接受该请求并将该请求信息转交给模型进行下一步处理;接着模型层根据控制层的要求对用户的请求进行处理,并将最终的处理结果反馈给控制层;最后控制层将得到的结果交给视图层,视图层将处理结果通过网页形式展现出来。
二、系统功能分析
社区信息管理系统主要包括社区居民基本情况、社区基本情况、信息检索统计等等。
(一)居民基本信息管理
居民基本信息录入界面要求美观大方,操作简单,使用方便,支持信息集中录入和个别录入。居民信息录入以身份证号为主键,不能重复录入。
本模块要满足社区居民基本情况信息进行登记的需要,该项工作是整个社区管理系统运行的基础,也是系统最重要的工作之一。要对社区居民的姓名、身份证号、家庭住址、籍贯、联系方式、家庭收入等多项信息进行采集和管理。
要对社区内的特殊人群进行集中管理。在进行居民基本信息采集的同时,要对于社区内生活困难的居民需要政府进行低保救助的人员进行登记;要采集社区内失业人员的信息,为再就业人员提供数据支持和服务保障;对于社区内的流动人口信息进行及时采集、变更等。
(二)社区居委会基本情况管理
本模块要求进行社区简介,需要输入管理社区的编号名称、地理位置、面积大小、人口数量、历史发展等信息。要进行社区管理组织的登记,采集社区管理人员的基本信息、社区管理人员组织结构、职责范围和系统分配的用户名、密码和权限等账号信息。记录社区建设基本情况,包括社区内的企事业单位、居民小区等构成情况,社区内体育娱乐设施基本情况等。完成社区服务机构、场所、设施、社区志愿者队伍的信息登记。为社区内生活困难的特殊人员的管理,包括低保人员、残疾人员、老年人等特殊人群的进行信息管理和信息统计。完成社区内部组织成立的文艺团队的基本信息采集,如中老年人豫剧团队、秧歌团队等。
(三)信息检索统计
(1)对于社区居民基本信息提供多种方式的检索,并将经常用到的检索设计相关的视图以提高检索效率。
(2)对于社区居民信息提供多种形式的数据统计,如:社区内部的居民的收入状况、社区居民的文化程度情况、社区居民的年龄结构、社区内居民的职业分布、社区内居民宗教信仰等,并能够利用图表进行更加清晰的表示。
三、城市社区居民信息管理系统的总体设计
(一)设计的总体目标
(1)系统可以为不同用户提供个性化的服务,满足不同角色在进行城市社区管理时的需要,且具有严格的权限控制机制。
(2)系统设计建立在通用平台上,服务器可以依托终端完成信息管理所有基本业务功能。
(3)城市社区信息管理系统以网络为主要应用基础,因此,需根据系统的特点,提取城市社区信息管理系统的共性特征,构建一个通用性的服务平台。
(4)系统完成后要具有良好的性能和一定的实用性。
(5)系统可以在通用的网络服务平台基础上,根据需求可以方便的添加或取消各种特色功能,并不对主要功能产生影响。
(二)系统业务架构设计
城市社区居民信息管理系统是面向社区管理的信息化安全管理系统,是构筑信息互通、资源共享的协同管理网络,城市社区信息管理系统可以使社区居民信息管理的各个方面都得到高效的运行,提高社区居民管理的效率与水平。系统实现了对整个居民信息管理的无纸化、规范化、系统化需求。本系统的业务架构如图2所示。
(三)系统层次结构设计
城市社区信息管理系统从上至下共有四个层次组成:应用层、接口层、中间层以及数据层。它们的主要功能如下:
应用层:应用层是社区管理者、社区居民以及相关管理部门通过移动网络等平台在系统终端实现对用户信息查询、管理等综合服务。系统应用层的终端设备必须是便于居民查询使用的。由于需求的多样性,移动终端设备也是多样的,包括平板电脑、PDA、手机等。
接口层:接口层主要是为社区信息管理系统的开发提供一套完整的API组件,可以方便的调用基于Java的应用程序接口,并提供一套方便远程调用的基于XML的应用程序接口。
中间层:中间层是社区信息管理系统的重要组成部分,中间层可以由若干子系统构成,子系统由一系列特定功能的组件组成,将这些功能组合起来就可以实现信息管理相关的服务。
数据层:数据层主要包括用户信息数据库,用于存储系统运行所需的数据,其中包括了居民基本信息、是否外出等。
(四)城市社区信息管理系统功能模块设计
城市社区信息管理系统功能模块设计内容包括:居民基本信息管理、外出管理、常住管理、入住管理、查询及统计等模块。这里主要介绍外出管理、常住管理和入住管理。
社区居民外出管理主要是对社区居民因工作或其他原因需要暂时离开社区期间的管理。对外出居民的管理一直都是社区管理的难题,经常会产生一些矛盾。例如:一些人因为外出无法联系错过了申请低保等很多和切身利益相关的活动,从而和社区管理人员发生矛盾的事屡见不鲜。为了能够更好的为外出人员服务,系统专门设立一个外出管理模块,在居民外出时,需要登记一些信息如:外出人员姓名、身份证号、外出单位名称、外出单位地址、外出时间、外出原因等。
社区居民常住管理主要是对辖区内常住居民的信息管理。在常住人口管理功能中可以以家庭为单位进行户籍信息的查询,并生成人口信息表等功能。系统在维护的过程中包括了对户籍,个人信息和人员迁移的管理。
社区居民入住管理主要是对社区新入住居民的管理。对新入住居民的管理首先要采集该居民的个人信息,将居民信息录入数据库。并根据新居民的实际情况更新其他信息,如修改房屋信息等。
(五)库表结构设计
要管理社区的各种信息,必须要有一个合理的数据库结构作为应用程序的基础。针对系统所要实现的功能,数据库结构中设计了13个数据表,如表1所示。
表1 系统数据表及其用途
数据表名称 数据表用途联系方式表 保存居民的联系方式信息,包括身份证号,联系电话,手机,邮箱,QQ等信息。家庭信息表保存居民家庭的相关信息,包括户编号,总人数,人均月收入,低保类型,计生类型编号,独生子女证年月等。婚姻状况表 保存居民婚姻状况信息,包括身份证号,婚否,初婚年月,再婚年月等。户籍管理表保存居民的户籍信息,包括户编号,户主,户籍地,管理属性,管理变动原因,管理变动时间,现住址。低保信息表 该表用来存放居民低保的相关信息,包括低保类型编号,补助金额,最低标准等。流动人口表保存社区居民流动人口的信息,包括身份证号,流入时间,流入原因,流出时间,流出原因等。用户信息表该表用来保存系统用户即社区工作人员的信息,包括编号,姓名,性别,年龄,职责,密码等。管理员表 保存系统管理人员的信息,包括登录名,身份证号, 密码等。社区概况表 该表用来保存社区的基本情况,包括社区名称,社区编号,社区文化等。孕龄妇女表保存孕龄妇女的相关信息,包括孕龄妇女信息身份证号,户编号,管理类型,生育情况。计生处罚表保存社区居民的计生处罚信息,计生处罚的户编号,处罚时间,罚款数额,征收依据,党纪处分,政绩处分。民事纠纷表保存社区管理员处理民事纠纷的信息,包括民事纠纷时间,处理结果,事务编号,工作编号。
(六)完整性设计
(1)实体完整性。实体的完整性可以通过设定主关键字、唯一索引、唯一键和标识列等多种方法来实现。其最常用的是使用主关键字。在本系统中,采用设定主关键字的方法,保证数据库中实体的唯一性,以此来实现实体的完整性。
(2)域完整性。域完整性是指数据表中的数据处于一个特定的允许范围之内。域完整性可以通过多种方法来实现,常见方法有使用默认值、外部关键字、核查、数据类型和规则等。例如,在本系统中“性别”被限制为“男”或“女”,输入其它值将被数据库拒绝。
(3)参照完整性。借助参照完整性来维护相关数据表之间数据的一致性,避免因一个数据表的数据被另一个数据表的记录改变而变成无效的值[3]29-31。本系统数据库中所有的相关数据表都通过外部关键字链接成一个网状的关系。
(4)用户自定义完整性。用户根据需要自行进行定义。该完整性设计可以通过多种方法来实现存储规则、存储过程、触发器和数据表创建。
四、系统测试
为了保证测试的质量,结合软件工程中系统开发的过程规范,将城市社区居民信息管理系统测试分为了单元测试,集成测试和系统测试三个阶段。
在单元测试阶段,各阶段均有不同程度错误提示,但对各阶段数据测试的错误率均控制在0.5%以内,通过对各阶段错误率的控制,有效的保证了整体的质量和整个系统运转的良好。
集成测试结果显示各部分均能在一起正常运转,在单元测试的基础上,集成测试的出错率大大降低,各项指标均达到系统功能需求目标,进而保证了系统整体功能的实现。
最后对系统进行了全面测试,每个模块均有一些错误出现,经分析均不是系统本身所产生的问题。测试结果显示系统所有功能均实现,并确保了功能的正确性和完整性,保证了系统使用的易操作性,达到系统设计预期目标,系统已趋于完善和稳定。
[1]张红丽.基于B/S模式的毕业论文选题系统的设计与研究[J].经济研究导刊,2011,(11).
[2]项 颖,王日宏,等.基于MVC的Delphi应用程序快速开发架构[J].电脑学习,2009,(4).
[3]娄道凯.高校教务管理系统中课程数据完整性问题探讨[J].中国教育信息化,2008,(4).