城市网约车系统的分析与设计.docx
- 文档编号:25461415
- 上传时间:2023-06-09
- 格式:DOCX
- 页数:28
- 大小:439.77KB
城市网约车系统的分析与设计.docx
《城市网约车系统的分析与设计.docx》由会员分享,可在线阅读,更多相关《城市网约车系统的分析与设计.docx(28页珍藏版)》请在冰豆网上搜索。
城市网约车系统的分析与设计
软件工程课程设计报告
题目
城市网约车系统的分析与设计
院系
班级
组长
组员
摘要
科技的进步衍生了一系列新兴的行业,网约车便是这些衍生物里的一种,它为人们的出行带来了方便,这种便捷,使得网约车的市场在短时间蔓延出巨大的规模,恶意收费、脏乱的车环境、不法分子的作案等负面产物也成为了人们担忧的因素;而目前一锅好汤里面的老鼠却依然存在,并且逍遥法外,腐朽如果不处理将导致正常态被波及从而被感染,手段有不少,而以一种良性的,最为有效且成本较小的是一种容易存活且被社会接受度高的一个理念,在系统前期的问题考虑中这些都已包括。
网约车车诚信系统中主要容纳的有:
网约车系统管理员、车主、乘客四种人物。
与之一一对应的功能详情,网约车系统诚信管理员:
系统的全部功能,车主:
操纵自己的录入修改信息功能,乘客:
操纵登录账户的数据信息,观车主的私密的以外信息,其余略。
包含的技术:
java语言去书写服务器端的功能,以EXT为基石描绘出绚丽的页面图像,以SpringMVC框架为桥梁管道连接服务器与页面,以ibatis框架为另一管道通向数据库,采用大家普遍接受却也性能较优的mysql作为数据储藏的仓库。
工欲善其事必先利其器,性能较好的工具可以让整个系统的功能的书写,及页面亲和力有较强的展示,思维的区域定位使得我的选择成了如此:
jdk1.7,ecplice,WEB容器tomcat用7.0版本。
合理性是系统寿命且保持活力年轻的必要因素,系统的惩罚制度在考虑到惩戒的本质即:
惩戒的力度问题,如果力度太大,那么用户的减少速率可想而知,而反其道行之,惩戒本身有未有成果,在权衡之中系统采用交通法律法规这一硬性却又不受排斥的标准。
【关键词】:
社会需求;方便;java,springMVC;快捷;诚信;价格合理
ABSTRACT
heprogressofscienceandtechnologyderivedfromaseriesofnewindustry,networkaboutcarsisoneofthesederivatives,bringsconvenienceforpeopletotraveltothis,itisconvenient,thenetworkaboutthecarmarketspreadahugescaleinashortperiodoftime,maliciouscharges,dirtycarenvironment,criminalscrimethenegativeproducthasbecomeafactorofconcern;thereforeaneffectiveregulatoryschemeisessential.Networkaboutcarmanagementsystemistoachievesuchasolutiontotheproblemofasuperiormethod.
ThissystemadoptsB/Sstructuredevelopmentmodel:
theserverandthebrowsermode,thisisalotofmemoryresourcesandefficientmodeofoperationdoesnotrequireuserstorelyonthebrowserwillbeabletocompletethedesiredoperation.ThebackgroundofthedevelopmentoftheJavalanguage,themainfunctionisto:
customerorders,customercomplaintsandsuggestionsofoperation,informationinputdriver,accesscontrolfunctionofeachrole,regulatorstoviewthedriverinformationandexposurefunction;thefrontinterfaceusingtheEXTframework,combinedwiththenativeJSandjquery,
SimplifytheHTMLandsomeofthehigherreusabilityoftheJScode,savingthedevelopmenttimetoreducetheamountofdevelopment.
Thissystemcandoagreatdealofdatacollationandorganizeddisplay,andtheoperationissimple,suitablefordifferentlevelsofuseroperation.Practicalandcost-effectiveareveryhigh.
Keywords:
java;springMVC;traffic;convenient,quick;
1绪论
1.1课题背景和意义
时代的进步催生了一些事物,网约车便是近年社会发展的衍生物,并且在不长的时间占领了大批市场,规模的日益扩大,一些负面的东西也开始浮出水面,犹如一颗石子投入水中,涟漪不断扩。
中国有句古话,无规则不成方圆。
在一些丑陋的现象下一套用于监管网约车行业的规章制度和显得尤为重要:
司机为多赚钱拉顾客绕远路,乘客遗失在车的物品不予归还,车脏乱差的环境…,网约车管理系统是一套方便通过社会各界人士来监管及规网约车服务的系统,通过不同角色的评价可以很确切的给出很多真实的数据,通过这些数据可以对每一位网约车司机的行为做一个中肯的判断,根据判断可以对司机做一些利益上、道德上、法律上的一些处理,从而对司机乃至这一市场的进行一个规和约束。
本系统采用了B/S架构的开发模式即:
服务端与浏览器模式,这是一种快捷的操作方式不需要占用用户的很多的资源及存依赖浏览器便可以完成想要的操作。
后台的开发选用java语言,主要实现的功能为:
客户对订单的操作,客户的投诉建议操作,司机的信息录入,各个角色的权限控制功能,监管人员对司机信息的查看以及曝光等功能;前台界面采用了EXT框架,结合原生的js和jquery,简化了html和一些复用性较高的JS的代码编写,节省了开发时间减轻了开发量。
本系统以自身庞大的数据存储为基础,能够高效而准确的计算和分析出大量数据所从而得出最为合理和真实的结果。
最重要的是系统可以最大程度化的节省人力,真正意义上的做到一劳永逸的效果,程序不会随着时间的流逝而导致数据的遗失和损坏,如果说使用人力来完成这一项任务,那么这将是无比庞大的一个工程,还有大量人员的长期的工资花费,随着数据量的不断增加在一定时间后两种花费的比例将会成一个几何倍的增加,这其中还可能存在因人员失误所造成的数据错误和一些不可控事情的发生。
对比之下系统所节省的资源是一极其庞大的。
它的实用性和高效性已然不言而喻,我们已经从几个角度对于管理系统的优点做了突出,所以开发一套高效且实用性较高的管理系统是非常有必要的。
1.2研究现状
国际上对网约车行业政策的指向。
在美国和英国对网约车代表Uber进行了限制,在欧洲大陆部分国家甚至完全判定Uber。
可以看出整个国际社会对网约车行业还是以限制为主,这主要是考虑到出行行业其它从业者利益平衡、出行行业的社会责任属性、国家税收、行业监管等方面问题。
中国国政策指向。
2016年7月28日出台的《网络预约出租汽车经营服务管理暂行办法》(以下简称《网约车管理办法》)虽然明确了网约车的合法地位,但是文章中提到监管层也做了清晰的定位:
配套新政需要“以巡游出租车为主、约租车(网约车)为辅,在价格上要层次分明、竞争有序”。
通过以上表述和各地相继出台的《网约车管理办法》实施细则来看,国家只会允许网约车作为辅助,成为巡游出租车和公共交通的补充,国家并不希望网约车成为大众化的出行方式,所以各地实施细则做出的各方面限制也只是手段而已,目的是限制网约车发展的规模。
1.3研究容
主要实现的功能为:
乘客对自己信息的编辑功能,乘客对司机信息的浏览功能,乘客对司机的投诉功能:
根据司机是否绕路,是否恶意加价,乘客对司机的曝光功能:
乘客对一些不良的现象进行曝光,乘客的建议功能,司机编辑自身信息功能,司机客户的投诉建议操作,司机的信息录入,管理员审核乘客投诉功能,管理员审核乘客订单信息并进行对订单的分配功能,交通执法者根据车主的交通违规情况进行对车主的诚信值进行增加或减少,交通执法者根据司机的信誉值已经乘客的投诉建议情况进行对司机的管理警告或者取消其司机权限,管理员根据不同的角色的功能性分析和安全性分析对各个角色或者用户动态分配。
1.4论文结构
本论文一共五章,其结构如下:
第一章:
绪论。
主要提出了国外的研究现状和要研究的容与研究的背景。
第二章:
阐述了系统的需求分析。
主要包括对系统的各种可行性分析和功能需求的分析,用例的分析以及对数据流程的分析。
第三章:
阐述了系统设计思想,模块设计。
第四章:
数据库的分析与设计。
第五章:
结论。
2需求分析
2.1可行性分析
本项目的开发、运行和维护对硬件和软件的需求不高,因此本项目将会根据如下的几点来分析判断现有条件下设计系统的价值。
2.1.1技术可行性分析
前台界面采用了EXT框架,结合原生的js和jquery,简化了html和一些复用性较高的JS的代码编写,节省了开发时间减轻了开发量。
后台服务器端采用了springMVC+Spring+Mybatis,组合框架来作为系统的架构。
2.1.2经济可行性分析
本系统从前台到后台全部使用了框架进行开发,这种开发模式无疑缩短了开发周期,加快了开发效率,在软件这个以程序员工资为主要开销的开发成本上无疑大大的减少了经济投入。
2.1.3操作使用可行性分析
本系统采用简洁明了的图形化页面来进行系统的功能化视图,让操作变得直观明了,加之简单快捷的操作按钮,令系统的用户体验度非常的高,这无疑很好的表现了系统的操作使用可行性。
2.1.4系统安全的可行性分析
本系统在开发中利用以框架本身所封装的安全编码格式进行规化的编码,从前期设计到正式编码安全问题都以通过健壮的代码进行了规避,所以在系统安全上具有可行性。
2.2系统功能需求
2.2.1功能需求
本系统的主要功能有:
1、色授权:
根据不同角色,可给予不同权限来控制各个角色的操作围。
2、车型设置:
司机所使用车辆车型。
3、乘客信息编辑:
乘客完善自己的个人信息。
4、乘客信息审批:
管理员浏览乘客信息,并根据乘客信息的完整程度给予相应操作权限。
5、网约车信息编辑:
司机根据如实填写自己的信息。
6、网约车审批:
管理员根据司机信息填写的真实度及完整度,给予审批通过与否。
7、网约车公司信息:
公司申请网约车需要填写的公司相关信息。
8、网约车公司审批:
管理员根据网约车公司的状况及信息的真实程度进行给予通过或不通过。
9、用户下订单:
用户填写订单信息,预约车辆。
10、订单审核:
根据用户填写的订单进行审核。
11、用户催单:
如自己等待的车辆长时间未出现,用户可进行催单操作。
12、曝光操作:
用户可根据自己发现的网约车不法行为进行曝光。
13、执法者对司机进行诚信管理,和吊销网约车经营资格。
14、集成微信、QQ登录功能。
15、网约车公司管理:
公司实行对部员工的奖惩制度。
2.2.2性能需求
为了保证系统能够安全稳定的运行,本系统对其性能的要求如下:
(1)并发性能
在系统设计和开发过程中充分考虑并应用并发性,这一点十分重要,因此在开始阶段我们就已经考虑了大量用户并发访问这个问题,所以本系统可以实现这个功能需求[10]。
(2)系统的兼容性
在测试阶段,着重测试了本系统对各大主流浏览器的兼容问题,处理了IE8带来的小的bug目前系统可以很好的支持各大浏览器。
(3)系统安全性
系统的sql采用mybatis框架的占位方式,所以可以很好的解决sql拼接问题。
系统的密码才用了MD5加密方式,可以避免密码的泄露问题,在安全问题上系统做到了放心、安全的层面。
2.2.3用例分析
为更好的实现将系统的的实体和实体所对应的业务,以及实体与实体之间的关系的功能的描绘需要用到建模图,系统中建模图的使用主要对于类的功能进行建模。
1、网约车系统乘客用例,如图2-1所示。
图2-1网约车系统乘客用例图
用户注册登录页面,根据分配的权限执行权限围的功能,一般注册用户只能具有浏览功能,可进行乘客注册或司机注册获取角色所具有的权限
2、网约车系统司机用例,如图2-2所示。
图2-2网约车系统司机用例图
3、网约车系统执法者用例,如图2-3所示。
图2-3网约车系统执法者用例
4、系统管理员用例,如图2-4所示。
图2-4网约车系统管理员用例
网约车系统管理员可操作所有模块信息以完成对系统信息的管理,主要操作为,为不同角色分配权限,审核各个用户所录入的信息等。
3、网约车系统主要用例
(1)乘客预约用例描述表,如表2-1所示
表2-1乘客预约用例描述
用例名称:
乘客预约
用户:
乘客
简介:
乘客执行预约操作,匹配可预约的司机
前置条件:
乘客登录,填写合法的预约信息
用例功能:
乘客预约成功司机后完成下单操作
事件流:
触发预约事件,完成下单操作。
异常事件流:
遇到不可控因素预约被取消。
(2)乘客投诉用例,如表2-2所示。
表2-2乘客投诉的用例描述
用例名称:
乘客投诉用例
用户:
乘客
简介:
乘客执行投诉操作,投诉信息等待管理员审核。
前置条件:
乘客登录,如实填写投诉信息。
用例功能:
乘客触发投诉功能,对司机进行投诉
事件流:
乘客触发投诉事件,投诉信息提交
异常事件流:
注册账号已存在,账号密码输入错误
(3)系统管理员操作用例,如表2-3所示。
表2-3系统管理员操作用例
用例名称:
系统管理员操作
用户:
系统管理员
简介:
系统管理员登录获得系统所有操作权限
前置条件:
系统设置管理员账号为不拦截状态
用例功能:
系统管理员进入操作页面
事件流:
系统管理员账号密码校验成功
异常事件流:
系统管理员账号密码输入错误
(4)网约车车主注册登录用例,如表2-4所示。
表2-4网约车车主注册登录用例
用例名称:
司机登录
用户:
网约车车主
简介:
网约车车主登录成功获得可操作权限
前置条件:
网约车车主信息已审核通过
用例功能:
网约车车主进入操作页面
事件流:
在注册登录页面成功执行登录操作
异常事件流:
账号密码在数据库中未查询到
2.2.4业务流程分析
对于网约车管理系统的业务功能进行分析和整理,梳理好系统的业务功能及相互之间的关联关系,然后以图像的形式将这种业务和逻辑上的关联关系及其具体业务功能刻画出来。
图2-5核心业务流程图
小结:
需求分析是程序设计最重要的部分,一个完整的需求分析是可以为后程序的功能以及作用奠定良好的基础。
3系统设计
3.1系统功能模块图设计
从整个系统整体来进行划分,可以清晰的划分出许多功能模块,在对这些功能模块进行图形化,便更能清晰明了的表现出系统的功能模块,下面列出了系统的管理、用户操作等功能模块图:
管理界面的功能模块图如图3-1所示。
图3-1系统管理界面功能模块图
用户界面的系统功能模块图如图3-2所示。
图3-2一般用户功能模块图
司机界面的系统功能模块图如图3-3所示。
图3-3司机界面功能模块图
3.2登录模块的设计
本部分的实现采用一个性能良好且功能强大的SpringMVC框架,它将用户账户密码信息封装到一个器具中,跟随者请求的步伐一起迈向服务器端,服务器端将传递而来的数据进行处理然后进行通向数据库的流入,似水流一般的融入最终存储且又确定的容器数据库中。
如若此次活动成功,返还给用户的将是与之所对应的操作界面,如若相反,则停留不到且给予用户友好且准确的提示。
用户登录后台系统模块,类图如图所示
图3-4用户登录后台系统模块类图
用户登录后台系统模块序列图,如图所示
.
图3-5登录模块序列图
3.3用户注册功能模块的设计
我们用户在系统后台注册页面的类图描述和说明。
不是每一个的自由人都可以注册成为我们的乘户,比如该乘户有没有犯过刑事责任,是不是拥有自理能力的人,有没有单独乘车的能力,这都需要注册以后提交给我们的管理者进行审核之后确认。
具体的是现实强大的数据层会把数据以JSON的格式发送到服务器的Servlet,请求数据会首先提交到Register类的register()方法然后在行云流水般的送到SendPost类的sendPost()方,最终经过数据的层层流向Servlet中,数据库中的数据表中插入相应的方法的逻辑系统中的客户,然后搬到登记。
用户注册模块的实现,类图如图所示
图3-6用户注册模块的实现类图
用户注册功能模块,用户进入注册页面填写注册信息,前端页面会有部分校验,和ajax效验,当确定数据没问题,用户点击确认注册后向服务器发送请求,并把注册信息传入后台,后台接收数据,并将数据存入数据库中,当执行完成后,向前台返回成功信息,并跳转至登录页面。
用户注册模块序图,如图所示。
图3-7登录模块序列图
3.4用户申请为乘客功能的设计
当用户注册成功且登录后,服务器会返回给用户一个操作页面,用可以点击相应的功能按钮来执行相应操作,点击乘客申请时,跳转至乘客信息填写页面,用户根据自身信息如实填写后,当信息通过简单校验后会存入乘客表中,此时用户并为具有乘客的功能和权限,状态为未审批,当管理员审批完该用户的信息完全属实后,会为该用户执行审批操作,此时用户角色从一般用户变为了乘客,具有了乘客的权限和可操作项,简单的实现逻辑为,用户提交乘客信息导数据库中save(),管理员查看find()信息后修改update()用户状态为乘客。
用户申请为乘客模块类图如图所示。
图3-8用户申请为乘客模块类图
用户申请为乘客模块序图如图所示。
图3-9用户申请为乘客模块序图
3.5用户申请为司机模块的设计
一般用户登录后,可选择申请为司机,在点击进入申请司机页面后,进行填写申请司机所需要的信息,再信息填写完成并通页面校验后可进行提交申请信息,这些信息会被存储到数据库中,但此时用户状态为未审核状态,当管理员审批通过后,用户方可成为司机,并具有司机权限。
用户申请为司机类图,如图所示
图3-10用户申请为司机类图
用户申请为司机序列图,如图所示
图3-11用户申请为司机序列图
3.6乘客进行预约下单模块的设计
乘客登录系统后会具有预约下单功能,乘客进入下单页面,填写订单详细信息,并将通过效验后的信息在此会在前台页面利用Jquery和js对所输入的数据进行格式和类型进行交易,进行提交,预约信息将会存入数据库中,待系统确认及审核该信息后,改变该信息状态,司机便能够查看该信息,进行接单。
乘客预约下单操作类图,如图所示。
图3-12乘客预约下单操作类图
乘客预约下单操作序列图,如图所示
图3-13乘客预约下单时序列图
3.7管理员审批功能设计
网约车系统管理员可对乘客及司机的申请消息进行查看和审批操作,管理员查看申请信息后,可根据填写信息的真实性进行核实,核实完成后,根据核实情况分别给予不同的审批结果操作,管理员所进行的操作描述:
调用查看方法进行查看,然后根据信息执行update()操作,提交信息状态被改变。
管理员审批功能实现类图,如图所示。
图3-14管理员审批功能实现类图
管理员审批功能实现序列图,如图所示。
图3-15管理员审批功能模块序列图
3.8管理员用户管理功能的设计
管理员可根据系统能用户的一些不良操作,来尽心取消其权限功能,或者取消其用户资格,比如车主违规太多,管理员便可收回其车主账号,以此来对其进行惩罚。
管理员用户管理序列图,具体见图
图3-16管理员用户管理序列图
小结:
系统设计是程序设计的核心部分,在设计的过程中国将各个模块分隔开来进行设计,从而达到了设计的目的,简单明了,让自己的思路清晰。
4数据库分析
4.1数据库
数据库简单来说就是存储系统中数据的一个集合,当然它不单单只具有存储这一功能,其还包括了关系建立,数据划分及管理等相关功能。
[6]本系统所采用的数据时mysql.
4.2数据库的理念
市网约车管理系统的业务关系是建立在规且具有合理关系和逻辑的数据库表上的,所以数据库表所承载的便是业务上的逻辑关系。
4.3数据库概念结构
用户实体如图4-1所示。
图4-1用户实体信息
车主实体图4-2所示。
图4-2车主实体信息
订单实体图4-3所示。
图4-3订单实体信息
订单详情表实体图4-4所示。
图4-4订单详情实体信息
评论表实体图4-5所示。
图4-5评论实体信息
预约实体图4-6所示。
图4-6预约实体信息
投诉实体图4-7所示。
图4-7投诉实体信息
车型实体图4-8所示。
图4-8车型实体信息
4.4网约车管理系统-数据库的逻辑分析
一个系统的实现,数据库的设计是整个系统业务功能的合理性和正确性的必要条件之一,在对真个系统的的业务功能进行分析和整理后,构建出如下所示的数据库设计(其中编号(id)为主键)
(1)user用户表(编号,账号,密码,是否被删除,系统名称,账号类型,账号状态)
(2)driver车主表(编号,车主名称,所属公司,入职时间,车型,车辆描述,性别,年龄,号,个人简介,操作编号)
(3)order订单表(编号,订单号,司机,派单人,派单时间,拍单描述,附件,图片,操作编号,订单状态)
(4)orderdatil订单详情表(编号,预约单号,订单时间,订单号,订单描述,审批状态,可操作编号)
(5)evaluate评论表(编号,订单号,车主,评价等级,评价描述,评价人,评价日期,附件,图片,操作编号)
(6)bespeak预约表(编号,预约人,预约时间,预约地点,预约备注,预约单号,审批,附件,图片,操作编号,下单时间,详情)
(7)complain投诉表(编号,投诉司机,投诉理由,投诉日期,投诉人,投诉描述,附件,图片)
(8)whip车型表(编号,车型类型,操作编号,操作时间,详情,状态)
4.5网约车管理系统-数据库的物理
(1)user表展示详情见表4-1所示。
表4-1user表
字段
类型
位数
主键
备注
Id
Int
11
是
ID
UserAcct
varchar
50
否
账号
userPass
varchar
50
否
密码
DeleteFlag
Int
1
否
是否删除
userName
varchar
50
否
用户名称
UserType
int
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 城市 网约车 系统 分析 设计