滴滴打车司机,乘客算法

来源:互联网 发布:空气污染指数的算法 编辑:程序博客网 时间:2024/04/28 22:06

题目描

滴滴出行平台的出租车、快车、专车等业务都是基于地理位置的服务,乘客发出订单后,附近的司机很快能够收到订单;下面是一张简化版的分单模型设计图,以及简要介绍:


(1) 乘客创建订单时,会将订单信息写入订单池,取消订单则删除,司机出车时,将司机信息写入司机池,收车时删除;

(2) 订单分配模块会拉取到订单和司机的信息,其中包含地理位置信息,根据位置进行匹配,最终为司机分配1个5公里范围内的订单;

请根据以上的信息,回答如下问题:

1.分析该系统各模块的功能及特点;

2.对该系统做出功能和性能的测试设计;

 

1.分析如下:

(1)订单池:功能:a.包含用户的基本信息,比如用户名,用户电话,所在位置,可选车的类型(出租车、私家车或其他车型)

b.允许多用户同时登录,互不影响

c.创建订单需要填写上车的位置,目的地地址,预约的时间以及车型,在规定时间内可删除订单

d.订单创建好后,将信息传递给订单分配模块,若成功删除订单,则订单池中的订单信息被删除

特点:允许多用户同时登陆,具有数据录入,删除和传递功能

(2)司机池:

功能:

a.包含司机的基本信息,比如 司机名, 司机电话,所在位置,所开车的类型(出租车、私家车或其他车型)和车牌号,是否空车                                    

b.允许多用户同时登录,互不影响

c.接受订单后,在司机池录入出车信息;订单完成后,在司机池录入收车信息

特点:允许多用户同时登陆,具有数据录入,删除和传递功能,与订单池类似

(3)订单分配模块:

功能: 拉取到订单和司机的信息,其中包含地理位置信息,根据位置进行匹配,最终为司机分配1个5公里范围内的订单

特点:是订单池和司机池的控制和分配中心,负责两者信息的匹配与调度

2.(1)功能测试:

登陆模块测试:

a.用户和司机的登陆测试,对输入(账号和密码)进行等价类和边界值分析相结合的用例测试,检测能否成功登陆                                                         

b.测试登陆界面的风格与整体是否相融合,有无错别字

c.鼠标点击文本框,能成功选中,并且鼠标由箭头转换为在相应文本框中开始位置的竖线光标

订单模块 :

a.订单界面包含所有需求说明书上的功能按钮,且链接正常,可成功转到相应界面

b.输入用户的上车位置信息是由GPS定位选择还是自己手动输入

c.填写完所有信息后,订单创建按钮变高亮,点击后出现订单已创建成功,正等待司机接收的提示信息

d.司机接收订单后会弹出相应提示,告知用户司机的一些基本信息,比如司机当前所在位置,到达所需时间等。

e.订单提交后,能在司机接收前删除订单。

司机模块:

a.登陆后可选择出车或收车状态

b.可以成功接收订单,接收订单后可获得用户的一些基本信息,比如名字,电话,所在位置以及目的地

订单分配模块:

a.可以获取订单池和司机池的订单和出车信息

b.可以对两边的信息,根据位置进行匹配,并给司机分配订单

c.订单被司机接收之后,向用户反馈司机的信息。

(2)性能测试:

a.由登陆界面进入系统要多久

b.订单池最多能容纳多少个用户的订单,司机池最多能容纳多少个司机的信息

c.在同一时刻,最多能允许多少个用户登陆

b.用户登陆后,能在系统呆多长时间

e.是否支持网页登陆









http://m.blog.csdn.net/xiaoquantouer/article/details/54428542

原创粉丝点击