基于web开发的学校失物招领系统设计与研究0421Word下载.docx
《基于web开发的学校失物招领系统设计与研究0421Word下载.docx》由会员分享,可在线阅读,更多相关《基于web开发的学校失物招领系统设计与研究0421Word下载.docx(23页珍藏版)》请在冰豆网上搜索。
1.1选题的背景
自21世纪以来,经济与互联网技术的快速发展,生活节奏不断加快,就容易发生物品丢失的情况。
过去人们都是通过传统的方法来寻回失物,而传统的方法不仅让失物丢失与拾取的信息扩散的慢,还容易给失主造成一定的经济损失。
据不完全统计,目前大学生在校园内丢失过物品的人超过75%,而也有过半的人尝试在物品丢失后寻回的过程中,受到各种因素的干扰,最终还是没找到。
目前大学的校园面积不断扩大,学生校园活动层出不穷,导致高校师生参加的校园活动比较频繁且携带东西数量不断增多,这样就容易造成师生随身物品丢失的问题,然而依靠学校的管理平台寻找丢失的物品,往往由于学校管理经常以院系为单位,导致管理比较闭塞,只是局限于院系内部的交流,就算通过校级学生组织,也仅仅局限于师生之间,教职工难以联系起来,因此导致物品丢失以后想要找回变得困难重重。
在科技水平迅速发展的今天,已经有了失物招领系统,但是这种方式大部分却不适用在范围较小的学校里面,失主需要通过系统找到失物还需要到某个地方领取,无疑增加了时间花费。
如果能够通过手机上的软件来实现失物招领,通过该软件可以有针对性的寻找失主或者寻找自己丢失的物品,失主与拾主就可以很快的联系上,这显然具有较大的发展前景。
1.2课题研究现状
1.2.1国内研究现状
现如今我国正在努力建设和谐社会,政府对居民道德水平的提高尤为重视,因此,政府应当为了实现城市的信息现代化和促进县、市级城市与各高校的文明化管理义不容辞。
而我从国内关于网上失物招领的研究现状了解到,我国十分重视失物招领制度的建设,在失物招领制度的建设和推广方面取得了一定的成绩。
目前,一些大学还计划设立失物招领处。
但是目前大学校内的失物招领需要大量的人力物力并且效率低,资源不集中,导致了手工工作的损耗和丢失物品难以找回,所以建立一个失物招领系统是非常重要的。
1.2.2国外研究现状
跟国内不同的是,国外一些地区或机构针对不同的商品和不同的消费环境建立了独特的失物招领管理制度。
对于东方国家来说,日本现在已经对失物招领机进行了强有力的重建,全国到处各种失物招领机构。
但主要采用手动控制方式,日常工作量非常大。
因此,人员和在日本的创办组织在货运站安装了几吨起重卡车用来装失物。
从指定的项目规范中,可以减少管理人员的难度。
为了方便失主寻找失物,日本政府建立了网络数据库,以避免失主因丢失或玩忽职守而造成的损失。
1.2.3发展趋势
现如今,人们的生活节奏不断加快,丢失物品的几率就会加大,遗失物品的现象时有发生。
有些人丢失了较为贵重的东西就很难找回,传统方式在现在很难起到大的作用,而常用的寻物方法其信息传达率不高,不易找回失物,很不方便。
为处理该问题,有必要开发一个失物招领渠道网络办理体系,为失主和拾到者建立起一个良好的沟通交流平台,来便利大众生活。
国内现在对失物招领制度的建设十分重视,在失物招领制度的建设和推广方面取得了一定的成绩。
目前,在很多网站,例如失踪网、失物招领网、58招领网等。
上面列出的各种失物招领系统都有自己的功能。
有些网站分布在全国各地,可以根据地区或项目类型进行分类。
它们有特定的搜索功能。
有些物品丢失并被找到,有些站点是门户网站的子服务,可能会列出丢失的项,还将为大学和学院提供一些简单的搜索功能,所有这些功能都为缺少的项目和显示元素提供属性搜索功能。
这样,在手工工作的过程中可以大大减少损耗和检测,也可以提高失物管理的效率,所以建立一个失物招领系统是非常重要的。
1.3本文研究内容
本文基于web技术开发失物招领网站,论文面向的用户主要是校内注册用户和管理员。
论文的主要研究方向,主要从以下六个章节展开论述。
第一章绪论,对论文进行概括,简要概述课题的背景、研究意义、课题研究的现状,从而得到开发一个高校失物招领系统的可行性与必要性。
第二章系统开发环境及相应技术的简述。
系统框架工作的流程图和开发环境的主要框架,阐述了系统主要的开发环境以及涉及到的关键技术与实际应用;
第三章系统总体设计,从整体的全局角度考虑系统的设计问题。
其中分为四个模块:
总体功能模块、系统管理员模块、用户功能模块、程序流程图;
第四章系统详细设计与实现,主要描述系统的数据库配置以及概念模型等。
其中包含数据库的配置与搭建,概念模型的设计与数据库的逻辑模型;
第五章系统功能实现,主要通过流程图、时序图对系统繁荣具体实现过程进行阐释,此章节主要通过8个图来展现功能的实现过程;
第六章系统测试,通过分析测试的目的、任务,并给出测试环境,最终得到测试结果。
最终对系统进行了总结和展望。
第二章系统开发工具和技术简介
本章主要描述系统开发环境及技术简介,系统工作框架的流程图和开发环境的主要框架以及涉及到的关键技术与实际应用
2.1系统开发环境
本次研究基于J2EE框架,选择了Eclipse开发平台,Eclipse属于编程语言的一种,它不仅用作Java集成开发工具,而且还支持C/c++、COBOL和PHP等编程语言的插件。
它本身只是一个框架和服务。
Eclipse附带了一组插件,包括java开发工具(JDD),这使得ElPaso成为一个较成熟的开发平台。
既可以创建web项目也可以创建Java项目。
所以本次系统的开发选择了Eclipse开发平台。
同时为了实现对用户数据的有效存储和使用,系统借助了MySQL作为数据库端的开发平台,它运行速度很快,并且完全适用于网络可以和网络任意地方的人分享[1]。
具备速度快,体积小的优点。
因为是开放源代码,不需要其他的成本,能够实现轻量级的数据支持。
2.2“Struts2+Spring+Hibernate”的简述
SSH不是一个框架,而是多个框架(struts+spring+hibernate)的集成,SSH在J2EE项目中表示了3种框架,即Spring+Struts2+Hibernate。
它由以下3个框架构成:
2.2.1Struts2框架
Struts2是Apache托管的开放源码项目。
Struts2是一个改进的MVC框架,它为MVC系统的开发提供了底层支持。
其主要技术有servlet库、JSP和自定义标记库[3]。
其基本构成如图2-1所示。
图2-1Struts框架的工作流程
2.2.2Spring框架
Springcore是一种轻量级容器、IIC容器(反向控制)、无干扰(无威胁)方案,并提供了面向程序的AOP概念。
它支持持久性和操作,提供MVC网络实现,并为一些常见的企业服务api(软件接口)提供一致的模型包。
除了现有的各种其他框架(struts、JSF、hibernate等)之外,spring还提供了一个集成它们的解决方案[4]。
图2-2Spring主要框架
2.2.3Hibernate框架
Hibernate是一个ORM源层。
Hibernate框架是持久性层框架的优秀实现,它为具有一致数据库的服务提供了高效、经济的对象。
开发人员可以使用面向对象的设计来开发一致的层。
简而言之,HYPERNET只是一个将类一致映射到数据库表的工具,例如,每个持久类对应于数据库表中的一行数据[5]。
用户只需要使用一个直接面向的方法来运行这些实例来完成、插入、删除和读取数据表。
如图2-3所示:
图2-3Hibernate主要架构
第三章需求分析
开发一个系统最先都是对其进行需求分析调研,本章简述系统的总体设计,针对校园失物招领系统进行了需求分析,从整体的全局角度考虑系统的设计问题。
系统用户是软件中最核心的使用者,普通用户可以通过注册、登陆、发布信息与查询信息进行操作。
而系统管理员又是软件维护必不可少的一部分,管理员可以根据实际情况,通过物品审核,监控后台数据,对系统进行日常维护和维护系统安全。
根据之前的需求分析调研数据可以将系统其中细分为四个模块:
总体功能模块、系统管理员模块、用户功能模块、程序流程图。
3.1总体功能模块
系统总体上分为普通用户和管理员用户。
这两类用户在功能上存在着差异。
系统主要分为失物招领启事发表、浏览失物招领启事以及收发感谢信、查看成功案例、用户登录注册等功能模块。
3.2系统管理员功能模块
系统管理员通过系统管理用户信息,操控系统后台数据,保证用户信息安全的同时,可以核实用户信息,因此具有管理的权限。
系统管理员需要实现的功能有以下几点:
登陆管理:
通过输入管理员账号名字与密码,选择登陆角色,经由系统判断登陆是否安全后,自动跳转到管理员界面。
普通用户管理:
管理员可以针对不同用户的需求,增加或者修改用户的使用权限,不同权限的用户可以使用不同的功能。
物品管理:
管理员在后台审核物品信息,待管理员审核通过之后,信息会展现在软件失物招领或拾物认领界面。
感谢信管理:
失主可以在拾主背景墙评论发表感谢,拾主可以在自己的背景墙看到感谢信。
信息栏管理:
对物品信息部分公开,同时加入了搜索引擎,若用户查询物品,则展示相似物品信息。
如图3-1所示:
图3-1系统用户与管理员功能模块
3.3用户的功能模块
3.3.1软件配置需求
普通用户的功能模块实现比较简单,普通用户的功能模块只需要包括
失物招领启事发表:
失主或拾主向系统提供物品的信息,包括物品名字,丢失地点,时间,物品颜色等详细信息,经管理员审核后发表到信息栏里。
浏览失物招领启事以及收发感谢信:
用户可以通过搜索引擎,对相似物品进行搜索,点开对应物品后,可以对信息发布者背景墙发感谢信。
查看成功案例:
每个失物招领的事件都会被展示在功能中的成功案例里。
用户登录注册功能:
用户通过实名认证信息跟个人信息的填写后,可以注册成为普通用户并登陆系统。
普通用户不能够删除发布的内容。
如图3-2所示:
图3-2用户功能模块
3.4程序流程图
本节通过对程序的运行过程进行分析,得到程序的流程图如图3-3所示:
图3-3程序流程图
图3-4失物招领流程图
图3-5用户登录流程图
图3-6用户注册流程图
第四章系统详细设计与实现
本章主要描述系统详细设计与实现,主要描述系统的数据库配置以及概念模型等。
4.1系统和数据库的配置
数据库存储着大量的信息,当用户需要对数据进行增加,查询和删除等操作时都是在数据库完成,由此可见它是每一个管理系统的基础与核心,所以必须要设计的合理安全。
由于该系统面向校园的失物招领管理,固然会有大量的信息存储,所以本系统要设计并实现一个最优的数据库构造模式,使数据能够有效地,安全的,全面的被存储在数据库里,以满足用户的各种基本需求,数据库中信息表的各个部分必须要紧密并且精确的关联在一起,使之成为一个数据表。
4.2概念模型设计
经过系统分析,每个实体用户都有自己的属性,不同实体用户间的关系可通过系统E-R图来描述。
(1)系统中管理员实体是用来存放管理员信息的,它的属性包括用户名,并将其设置为主键。
另外还有密码、角色、性别、地址等属性。
如图4-1所示。
管理员
用户名
密码
角色
性别
年龄
地址
图4-1管理员实体图
(2)招领启事文章页面内容实体图,如图4-2所示。
其中主要包括主键id,内容标题,内容文字、内容类型、生成时间、物品名称,其中根据内容类型来判断是寻物还是招领,生成文章或页面都会记录时间,内容文字用来存储启事内容。
图4-2内容页面实体图
4.3数据库逻辑模型
本节描述数据的逻辑模型,即数据库表的设计。
以用户信息表为例。
用户名表数据结构如表4-1所示,该表存储着网站用户的基本信息。
其中以id为主键,每一个主键都带有一条唯一性的数据,其中username和password用来做登陆系统校验,校验成功则会登陆成功并记录活动时间(activated)。
如下所示:
表4-1用户信息表
名称
类型
空
备注
id
int(11)
no
主键
createtime
datetime
yes
添加时间
email
varchar(255)
邮箱
password
role
用户权限
userlock
是否删除标志
username
表4-2分类表
name
分类名
表4-3感谢信表
info
详情描述
title
标题
uid
添加用户
表4-4回复表
content
回复内容
gid
关联的失误ID
关联的用户ID
表4-5失物招领表
address
丢失地点
happentime
丢失时间
mobile
手机
物品名称
qq
QQ
remark
result
结果
state
状态
typename
失物
cid
子分类
claimuid
添加的用户
uic
关联的用户
第五章系统功能实现
本章主要描述系统功能实现,主要通过流程图、时序图对系统功能具体实现过程进行阐释,此章节主要通过8个图来展现功能的实现过程;
5.1系统功能实现的主要框架
系统功能实现主要分为系统管理员和普通用户两个方面。
系统管理员主要负责通过系统来管理物品信息,及时更新数据,为普通用户提供技术支持。
普通用户发布的信息在经过系统审核后,对信息进行公开,用户可以根据系统的提示来阅读其他用户发出的文章,寻物或者招领启事,如果处理成功则管理员将案例转移至成功案例模块。
此外,管理者还可以针对用户提出的系统请求增加或者删除普通用户。
普通的用户只需要注册登录该系统,然后跳转到个人主页进行发表启事,或者编辑感谢信发送,同时还可以浏览平台所有的公开信息。
这样区分权限的系统设计,更有助于失物招领系统的有效管理,提高了效率。
5.2个人中心模块与管理员模块
用户在登录Android移动客户端后,首先进入登录界面,注册成功后,用户可以在登陆界面选择个人登陆或者管理员登陆。
在登录后进入个人中心界面,在系统提示下完善个人详细信息和进行实名认证,若用户已经在Web端进行了相关操作,登录后信息同步完成则不需要上述操作。
登录界面和个人中心界面如图5-1所示。
图5-1登录界面和个人中心界面
除了上述的普通用户界面,该系统还有后台管理者界面,管理者输入自己的账号密码以后登入后台系统,如图5-2所示。
图5-2管理者用户管理界面
5.3实物招领模块实现
失物招领模块主要实现拾物信息发布、失物认领、信息查询、失物申述功能。
用户在登陆成功之后,可以在搜索框中输入关键词,系统将自动提取关键词到后台核实数据来处理信息,再反馈给用户。
用户登录成功后,系统功能将在左侧以不同按钮的形式展现出来,用户可以点击不同的按钮进入相对应的功能。
拾物信息发布如图5-3所示:
图5-3发布拾物信息
用户通过关键字搜索进入拾物信息列表中,找到自己丢失的物品后可以点击进入拾物详细界面,并进行失物认领操作。
拾物详情及认领页面如图5-4所示:
图5-4拾物详情及认领界面
在用户确认物品后,可以点击认领按钮,系统在核实信息后会弹出提示信息,在用户认定后点击确认按钮方可查看拾物详细信息和拾物联系人方式,同时该物品会被标记为认领中状态。
认领提示界面和认领确认后界面如图5-5、5-6所示:
图5-5认领提示界面
图5-6认领确认后界面
5.4物品发布模块实现
信息发布页面主要有失物信息发布和拾物信息发布。
用户登录后可以通过物品发布功能进入到该界面下进行选择发布物丢失物品信息或捡拾物品信息。
在进入相应信息发布后需要填写物品的名称、类型、地点、时间、特征等详细信息,信息填写完成后点击发布按钮即可将信息发布,同时系统会将已发布信息提交给管理员审核,待管理员审核通过后会自动同步到Web端页面。
物品发布界面如图5-7所示。
图5-7物品发布界面
5.5拾物招领模块实现
在用户进入拾物招领功能后,客户端会在主界面显示拾物招领列表,拾物招领列表保存了拾主捡拾物品的信息,主要包括标题,物品拾取地点,时间跟物品特征,用户可以在列表中看到物品的相应状态,待用户在确定某一物品之后,点击进入物品详细信息界面。
拾物招领列表和物品详细信息界面如图5-8所示:
图5-8失物启示界面
第六章系统调试与测试
系统测试是软件开发流程中所不能少的过程,当完成代码的基本开发后,需要验证软件是否满足软件开发提出的需求,是否系统存在不足,以及判断软件的能否安全使用和质量是否可靠。
以下,是对系统功能的详细测试。
6.1软件测试的目的
软件测试的目的就是要找到系统的缺陷与不足,以便提前对系统的各功能进行改进与完善,并且在对后期的维护中提供方便和减少出错率,防止用户使用过程中网站不断出错的现象发生,从而提高系统的用户黏着度。
另一方面就是验证该系统开发出来的功能是否可以满足失物招领网站的各种需求,如果网站开发出来在功能上都难以满足用户的需求,那么该系统的开发显然是失败的。
6.2软件测试的任务
本次将采用测试用例,兼容性测试以及性能测试三种方法来对此次的系统进行有效测试,用例测试就是针对某项功能设置一个具体动作,通过程序的执行以及结果的输出来判断该功能是否达到预期效果,并且满足了特定需求。
兼容性测试就是测试本系统在特定的浏览器中是否都能够正常运行的测试。
性能测试则是测试各个模块在多人使用的情况下是否出错的测试。
6.2.1测试用例
本节将进行用例测试,根据模块的重要性本次选取部分重要模块进行测试用例。
对基本信息管理的测试:
包括用户注册以及登录、用户发表失物招领启事、用户浏览失物招领启事等。
测试用例如下表6-1系统登录测