01课 - 功能需求:秒杀业务背景及前端需求是怎么产生的?(秒杀系统)

先问你一个问题:为何我们要在项目开始前要先了解业务背景和需求?

拿到一个项目,你也许能从技术层面上做出来,但你真的知道为何要做这个项目吗?如果没有充分了解业务背景和需求,你能确保自己理解项目的业务价值吗?能确保自己开发的产品符合要求吗?所以,为了避免后期设计走偏,这一讲我先和你聊聊秒杀的业务背景和前端需求。

什么是“秒杀”?

“秒杀”对经常网购的人来说应该不陌生吧?它是商家通过少量库存和超低价格的方式吸引用户的一种营销手段。但你知道它为何叫“秒杀”吗?又是在什么背景下诞生的呢?接下来我们就从电商发展史讲起。

电商发展史

问你个问题:中国最早的电子商务公司是哪一年诞生的?

1997 年,当时有两家 B2B 公司——中国商品交易中心和中国化工网,它们分别在这一年诞生。之后到了 1999 年,携程网、易趣网、当当网陆续上线。此时电商处于萌芽期,中国网民占比非常低。

时间进入 2000 年,伴随互联网泡沫,大批互联网公司倒闭,而阿里巴巴也在这一年拿到了软银投资;2003 年非典,因为城市全员隔离,线下交易暂停,线上电商便迎来了新的机遇,京东和淘宝就是在这一年出现的。

2005 年苏宁网上商城一期面世,2008 年淘宝网在商品详情里推出竞拍秒杀功能。同年,京东在网站上以秒杀的形式第一次推出了“618”活动。

2009 年 9 月 25 日,为庆祝成立 6 周年,淘宝网在首页推出“一元秒杀”活动,蜂拥而来的流量让商品详情功能瘫痪好几分钟。也就是这一年,淘宝“双11”活动上线。

可以说,2000 年到 2009 年,是电商发展的波动期、酝酿期,在经历了互联网泡沫和非典的重新洗牌,电商进入高速发展阶段。特别是 2010 年双十一的价格大战和 2013 年小米 816 大狂欢。前者苏宁易购、京东、淘宝三大电商争相通过降价、秒杀等方式进行大型促销活动,后者 10 万件商品 1 元秒杀。

如今,电商已经从一线二线城市拓展到农村和海外,农村电商和跨境电商也成为常态。

秒杀业务背景

看完了电商发展史你有什么发现没有?秒杀系统在其中充当了一个什么样的角色?

首先,“秒杀”第一次出现是在 2008 年淘宝推出的“竞价秒杀”功能,当时淘宝看到营销效果非常喜人,第二年在办 6 周年庆时,又推出了“一元秒杀”活动。虽然 2008 ~ 2009 年“秒杀”已经出现了,但它真正火起来还是在经历淘宝、苏宁、京东双十一价格大战之后的 2011 年。

这是秒杀系统的第一个业务背景:电商大环境营销模式形成秒杀活动在 2011 年后流行起来

其次,伴随着互联网用户、电商用户量爆发式增长,商家低价促销已成为获客的重要方式之一。试想一下,一件原价 100 块的畅销商品,你可能会犹豫;而标价变成 1 块钱的时候,你不会心动吗?

正是利用这种占便宜、省钱划算的心理,商家用很少量的库存,获取成千上万甚至几十万用户的关注。特别是在大型促销活动中,当某个商家推出低价促销后,为了抢夺平台上的用户,竞争对手也会推出类似手段。

这就是秒杀系统的第二个业务背景:电商用户爆发式增长,竞争激励,各大电商纷纷低价促销抢夺用户

最后,在秒杀系统出现之前,这种低价促销的方式都是直接在商品详情页改商品价格。由于普通的商品详情页本身并不具备处理大流量的能力,一旦遇上大型促销活动,它很可能就抗不住而崩溃。

以小米网为例,2012 年 1 月,小米手机在官网第二轮开售,用户访问量直接把小米网挤瘫痪了。2013 年 1 月,MIUI 用户突破 1000 万,高性价比和粉丝经济,给小米网带来了极大的承受压力。

每年小米网都会有几场大型促销活动:米粉节、618 大促、816 大促、双十一大促、年终大促等。你可以想象下这样一个场景:每逢大型促销,作为米粉的你打开小米网,守着心仪商品降价或释放库存的那一刻,到关键时刻系统却崩溃了,你心里是什么感觉?


即便网页顺利打开,结果却被许多“黄牛”利用“秒杀器”工具一下子将原本不多的库存刷走了,你的心情会怎样?

这是秒杀系统的第三个业务背景:在大型促销活动中,老系统面临并发性能、可用性、公平性等问题的挑战

以上就是秒杀系统的业务背景分析,它是电商发展到一定规模后必然出现的产物,只有了解了秒杀系统诞生的业务背景以及需要解决的问题,我们才好进行准确的需求分析。

image.png

前端需求分析

接下来,让我们从前端开始,看下秒杀系统的需求都有哪些。

你可能会问:为何我们要从前端需求分析开始呢?想一想,当用户登录电商网站,先看到的是什么?对,是首页!首页对用户来说就是查看网站主要信息的入口,对我们来说就是前端。

前端是一个系统中离用户最近的部分,为用户提供信息展示、交互逻辑等。当前端的需求基本决定,一个系统的功能需求也就随之产生。 所以,接下来,我们重点分析一下秒杀系统前端的需求。

image.png

1. 秒杀详情页

在小米网上,一个用户是如何进入秒杀系统的前端页面呢?

首先,作为电商的子功能模块,秒杀通常不会直接出现在首页上,而是有一个单独的秒杀详情页,首页作为它的流量入口。用户会先打开平台首页,从首页秒杀入口进入到秒杀功能模块的页面。

当用户通过首页入口进入到秒杀页面后,他希望看到什么信息呢?应该是有关这场秒杀活动的详细信息,比如活动场次、秒杀商品、秒杀价格,活动规则等。对我们来说,这就是秒杀详情页。

详情页会展示多场秒杀活动信息以及每场秒杀活动的商品信息,让用户选择自己感兴趣的活动场次。比如今天 9:00 ~ 10:00 是小米手机专场,10:00 ~ 11:00 是红米手机专场,11:00 ~ 12:00 是生态链产品专场。

因此,秒杀详情页需要划分两个展示区:活动场次信息区活动商品列表区。活动场次信息区里可以点击场次按钮切换场次;活动商品列表区里可以点击某个商品的按钮查看商品详情。

2. 查看商品列表

接下来,用户可能会点击活动场次信息区的某个场次,查看该场次的商品列表。像点击“出行穿戴”专场,就可以查看所有参与秒杀活动的穿戴商品,比如小米手环 4 NFC 版,大屏彩显,可刷公交和门禁,原价 229,活动价 179,库存剩余 8%等信息。

对应到前端需求当中,就是商品列表区的商品信息——商品图片、商品名称、广告语、库存信息、原价、活动价、秒杀按钮。

接下来,用户可能直接点击商品按钮,这里会出现 3 种情况:

  1. 活动已开始,对于已登录用户来说,按钮提示“立即抢购”,点击后会跳转到商品详情页;

  2. 活动已开始,对于未登录用户来说,按钮提示“登录后抢购”,点击后会跳转到登录页;

  3. 活动未开始,按钮则会提示“提醒我”,点击后就会订阅活动通知。

最后,当用户进入到商品详情页,可能希望看到诸如“原价 229,活动价 179,距离结束还剩 15 分钟”的活动信息;“全新 AMOLED 大屏彩显,手环刷公交卡、门禁卡,能用支付宝抬手支付……”的商品描述信息;“黑色”“白色”等规格选项;“北京朝阳区”“上海浦东区”等配送区;是否有货的库存信息。这些就是商品详情页的前端需求。

以上就是用户参加秒杀活动时,在前端页面出现的行为及需求,具体落实到前端设计,主要包括 UI 设计和交互逻辑。

3.UI 设计

UI 设计主要包含秒杀系统各个功能页面的内容和布局,大致有 3 类:首页入口、秒杀活动页、商品详情页。

首页入口主要是秒杀广告位。

image.png

秒杀活动页包括活动场次区和场次详情区。其中活动场次区,包括进行中的活动和未进行的活动;场次详情区,包括商品列表、商品信息(比如商品图片、名称、广告语、原价、活动价、库存信息、秒杀按钮)。

下面是小米秒杀活动场次UI,包括用户未登录和已登录活动进行中的图示,还有未进行的活动图。

image.png

image.png

image.png

其中,页面顶部显示 5 场活动时间和活动状态的区域叫活动场次区,主要用来告诉用户活动什么时候开始,有哪些场次。

活动场次区下面的就是场次详情区,主要展示选中的场次有哪些商品会参加该场活动。比如抽纸、电热锅、吸尘器等就是 20:00 这个场次的商品,净水器、160L 银色对开门冰箱就是 22:00 这个场次的商品。

更多课程可以访问 https://shop.exp-9.com/ 进行获取

商品详情页主要包括基本信息和销售信息。比如下面的抽纸商品页,其中就包含了它的商品图片、商品名称、商品描述、商品规格等基本信息;还有原价和活动价、配送地区、库存信息等销售信息。

image.png

4.交互逻辑

介绍完 UI 设计,我们来说下交互逻辑。所谓交互逻辑,主要包括页面上各个部分对用户行为的交互方式和响应结果,它是基于 UI 设计页面来进行的。我们还是以首页入口、秒杀活动页、商品详情页来介绍。

首先来看首页入口,它的交互逻辑是“点击秒杀广告位进入秒杀活动页”。

秒杀活动页,它存在四大交互逻辑,请看下面的流程图。

image.png

  1. 当用户进入活动页,如果当前页面显示的就是他想要的场次信息,那么他就会参与其中。

  2. 活动场次切换,如果当前显示页面不是他想要的,用户则会点击切换场次,这就是用户点击切换,还有一种是自动切换,它需要设定定时任务判断时间,到了时间则自动切换,切换后系统自动重新获取活动场次信息。

  3. 接下来,为了找到自己想买的商品,用户会点击活动详情区的商品,进入到商品详情页。

  4. 活动详情区商品的按钮。如果是活动已开始,未登录用户会提示“登录后购买”,点击则会跳转登录页;如果是已登录用户,则会提示“立即抢购”,点击后会跳转到商品详情页。如果活动未开始,则会提示“提醒我”,点击订阅活动通知。

最后,我们来介绍下商品详情页上的交互逻辑。它有三类交互,请看用户操作流程图。

image.png

第一个交互,点击配送区修改按钮,选择配送地区;

第二个交互,点击规格按钮,选择商品对应规格;

第三个交互,点击秒杀/购买按钮。这里会出现两类状态,一类是活动进行中,一类是活动未进行。

在活动进行中,如果是未登录用户,则会提示“登录后购买”,然后点击跳转登录页;如果是已登录用户,则会提示“立即抢购”,点击后若抢购成功,将商品加入购物车,商品享受活动价。若抢购失败,根据后端返回,给出失败提示“活动已结束”或“已售罄”。

活动未进行,交互逻辑会提示“加入购物车”,点击后将商品加入购物车,商品不享受活动价。

另外,由于用户量大,页面需要采用前后端分离、动静数据分离的方式,静态资源和静态数据由 CDN(Content Delivery Network,内容分发网络)和前端缓存,尽量减少对后端的压力。

小结

这一节我们从电商的发展史中了解到了秒杀系统诞生的业务背景,然后从 B2C 电商业务模式、用户量、营销手段等方面综合分析了秒杀系统的前端功能需求。

需要注意的是:不同电商的秒杀系统,可能存在细微的差异。比如,对于用户非常熟悉的商品,有的电商是在秒杀详情页点按钮后可以直接加购物车,不用跳商品详情页;有的电商可能跳过加购物车环节,直接扣库存并生成订单。总之,具体实现要看具体的业务需求。

对于一个秒杀系统来说,这一讲的内容看上去不是核心内容,但实际上需求分析是一个项目中最关键的环节之一。只有把需求弄清楚了,在项目落地的时候方向才会有的放矢,才能设计出既满足业务需求又能稳定运行的业务系统。

思考题:如果不跳商品详情页,并跳过加购物车环节,前端该怎么设计?

这一节就介绍到这里了,下一课时我们将介绍秒杀系统的管理后台和后端功能需求,看看秒杀活动信息是如何管理的。


相关文章

03课 - 非功能需求:高可用、高性能、高并发的指标如何计算?(秒杀系统)

03课 - 非功能需求:高可用、高性能、高并发的指标如何计算?(秒杀系统)

你好,欢迎来到第 03 讲,这一讲主要介绍秒杀系统的非功能需求分析,特别是涉及高可用、高性能、高并发方面的内容。前两讲,我们介绍了秒杀系统的前、后端功能需求,许多人在做业务系统时会发现,虽然功能自测、...

04课 - 系统架构:如何设计秒杀的系统架构?(秒杀系统)

04课 - 系统架构:如何设计秒杀的系统架构?(秒杀系统)

你好,欢迎进入模块二的系统架构设计。前面 3 讲我们介绍了如何分析功能需求和非功能需求,按照一个软件项目开发流程,接下来我们要做什么呢?设计软件的系统架构。为什么要重视架构设计呢?软件的系统架构和我们...

02课 - 功能需求:秒杀活动信息是如何管理的?(秒杀系统)

02课 - 功能需求:秒杀活动信息是如何管理的?(秒杀系统)

上一讲我们介绍了秒杀业务背景和前端需求是怎么产生的。回想一下,你在秒杀活动的前端页面能看到什么?有活动场次信息,比如第一场、第二场,以及对应每个活动场次的详情及规则,有商品的名称、价格等基本信息,还有...

开篇词  秒杀系统的“三高”架构是怎么炼成的?

开篇词 秒杀系统的“三高”架构是怎么炼成的?

记得那是 2016 年初,我做 IM 云核心服务开发。当时我们的核心服务是个大的单体应用,每到客户做活动的时候,系统的 CPU 负载都会超过 90%,请求错误率超 10%。更可怕的是,高负载导致已建立...

课程表:打造千万级流量秒杀系统(秒杀系统)

收集不容易,访问 https://shop.exp-9.com/#/goods?goods_id=2  获取所有课程内容课程列表:00 开篇词秒杀系统的“三高”架构是怎么炼成的?....

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。