众筹一个报名签到平台的设计思路(一)——业务需求篇

前言

目前,在线组织的各类活动愈来愈多,例如:培训,会议,比赛等等。想作一个开源项目,实现一个基本的报名和签到框架。这个框架能够很容易的与业务应用整合,成为快速开发轻应用的一个组件,像嵌入的评论组件,分享组件同样。但愿你们可以拍砖,一块儿研究研究,弄个你们收益的东西出来。后面我陆续把作这个产品过程当中的想法、问题和经验分享出来,敬请关注。微信

分析

设计一个通用的报名签到平台,任何注册用户均可以发起报名签到活动,而且能够和已有的应用进行集成。活动分为两个阶段:报名和签到。用户在报名阶段填写与我的身份相关的信息,例如:姓名,单位,手机号,邮箱。签到阶段用户经过二维码等方式实现快速签到,签到时尽可能避免用户再次输入报名信息。这两个阶段都支持参与用户都利用社交帐号进行分享。其余一些功能包括:分组,多轮签到,签到状态统计,签到结果导出等。框架

一般用户是这样理解报名签到的:活动发起者给潜在参与者发报名表,收集汇总报名信息;给审核经过的报名者发一张“票”;活动参与者到现场凭票入场,签到就是给这张票打个标记或收走。总结起来就是给谁发票,票怎么发,票怎么检,身份怎么确认,结果怎么记录?设计

最直接的实现方式。报名阶段:活动发起者在平台注册一个平台帐号,制做报名表和签到页;活动发起者经过各类渠道发送报名表,例如:邮箱、公众号、微博等;活动参与者注册一个平台帐号,填写报名信息;活动发起者肯定报名名单,向审核经过的报名者发送报名确认通知;活动现场用报名时注册的用户身份登陆完成签到。接口

后面分析一些细节。开发

报名阶段

报名阶段的目标是造成活动人员名单。产品

报名表不必定要报名人直接填写,能够由活动的组织者集中(手工或导入)添加。这种方式带来一个问题,由于并非用户本人进行的报名,因此没有办法将报名人和填写报名信息的用户(注册用户)关联起来,这样对后续的签到过程会产生影响。微博

若是在报名阶段须要给报名者发送“通知”,就须要创建通知渠道。通知的渠道能够是:人工,邮件,短信,微信公众号消息等。邮件和短信方式要求报名信息中必须包含报名者的邮箱或手机号。微信公众号方式报名,必须是用户本身报名,而且关注公众号。人工的方式须要系统生成好通知信息,由接口人向报名者发送信息。前3种方式能够针对报名人自动造成个性化信息,人工的方式只能提供统一的信息。各类通知方式都须要系统通知模版。若是不支持给报名者发送个性化通知,就不能把包含报名者信息的签到信息发送报名人,对后续的签到方式有影响。效率

若是是用户本人进行的报名,支持用户关联社交帐号,分享报名信息。登录

签到阶段

签到阶段的目标是肯定报名人时候按时到场,造成签到表,有两个核心问题要解决,人是否到场,到场的是否为本人。终端

最严格的方式必定是由活动组织者在现场人工签到,就像机场和火车站同样,检查签到人有没有票(在不在报名名单中),来的是否是本人(看身份证)。可是,这样活动组织者的就必须安排专人负责签到,签到的投入高和效率低。通常的场景中,是否是本人到场很差控制(例如:培训,会议),并且意义不大,能够下降要求。那么签到目标调整为:是否是有人在现场作了签到,并且不是其余人代签。假如没有代签的状况,且全部报名人都签到了,那么即便不是本人来也得找人代替来,这样报名方的造假成本也挺高。防止代签能够从限制签到终端的惟一性入手,假如只接受一种签到终端,且这种终端和我的身份关系密切,就能够很大程度上限制代签。目标继续调整为:限制签到终端和终端签到的次数。经过限制签到终端和签到终端的次数解决代签问题后,还要解决签到地点问题。解决这个问题就是要有一个和签到现场绑定的验证信息。签到用户当前的地理位置坐标能够做为一种验证信息,可是这受限于用户所处环境,准确性难以保证。另外一种方式是在签到现场提供具有较短的的有效期,一次性有效,且不能传递的验证信息,只有获取了这个信息才能完成签到。(彷佛没有太理想的方式)

除了设置限制成功签到的条件,还要解决报名信息和签到信息关联问题。由于在报名阶段,填写报名信息的人不必定是报名人本人,因此签到人必须绑定报名信息。基本实现方式是签到人首次签到时,输入手机、姓名等信息,若是对应的信息在报名清单中,则经过签到并绑定,后续的签到就不须要再输入报名信息了。若是报名阶段也可以限制报名终端和报名次数,而且这个终端与签到时的终端为同一终端,那么报名信息和签到信息能够自动实现绑定。

若是是用户本人进行的签到,支持用户关联社交帐号,分享活动现场信息。

总结

从上面的分析能够总结出几点核心需求:一、如何限制终端的惟一性和操做次数(报名和签到);二、如何限制终端的使用位置(前场签到);三、如何通知活动信息(报名状况的通知);四、绑定社交帐号进行分享(用户自选)。

相关文章
相关标签/搜索