技能GET:如何使用流程图描述一个典型的APP启动功能?
在产品设计的过程中,产品经理需要根据用户使用场景,逆向思考其背后的实现逻辑,并通过流程图来表达操作过程及信息交互,以便工程模型的实现。开发工程师则通过流程图理解产品经理思路,评估相应的技术方案和实现过程。
作为产品实现过程中的两大重要角色,产品经理和开发工程师的工作是完全不同的。而我认为,流程图是他们的共同语言。在产品设计的过程中,产品经理需要根据用户使用场景,逆向思考其背后的实现逻辑,并通过流程图来表达操作过程及信息交互,以便工程模型的实现。开发工程师则通过流程图理解产品经理思路,评估相应的技术方案和实现过程。流程图可以直观地表现出逻辑的严谨性和流程的合理性,是产品设计中必不可少的环节。本文选择了“APP启动”这个常见的功能,使用Visio工具,对APP启动到进入首页的功能,做完整的需求描述。
需求:用户启动APP进入首页
这是每个APP都存在的一个需求,点击图标然后打开APP,看起来非常简单,当然,也非常重要,涉及到产品的视觉印象和首次体验。
需求分解
- 展示APP的品牌形象;
- 根据业务需要展示广告;
- 向新用户展示APP引导;
- 启动完毕进入首页时的良好体验。
流程绘制
能实现流程图设计的工具有很多种,常用的有Visio、亿图,powerpoint也可以做,现在还有在线版的Process On。但对于工具的选择,原则是简单、通用。由于Visio是windows自带office套件中的工具,普及面广,操作简单易上手,其图示含义也是通用的,故选择visio。
第一步:确定流程的节点与走向
根据上述原始需求以及初步分解,我们得知几个关键节点:软件启动、启动页、广告页、引导页、首页,他们的走向用visio流程图表述如下:
第二步:寻找流程中的影响因素
首次启动:此时需展示引导页而不展示广告
软件启动时,判断是否首次启动,如果是首次启动,则打开启动页,停留2秒后进入新手引导,完毕后进入软件首页。
网络状况:考虑到网络状况对数据传输的影响,一般的网络状况分为三种:
- 无网络时,不加载广告,但加载数据缓存;
- 2G网络时,因传输速度慢,不加载广告,但可更新首页数据;
- 3G/4G/WIFI时,传输速度快,可加载广告并更新首页数据。
流程表述如下:
数据缓存:指上次使用后缓存到APP本地的数据。
APP保留数据缓存的目的,是减少网络数据传输,提高APP的运行效率。根据缓存状况,可分为缓存数据首页和最新数据首页。
第三步:根据影响因素的顺序整合流程
上面提到影响该流程的因素有网络、首次启动、广告,数据缓存,在系统设计中,应该以提高流程效率和不影响用户体验为前提,逐个去假设这些因素的先后顺序。
如果先判断网络,系统会消耗网络运行时间,而且会失去一部分网络暂时不佳的用户;如果先判断启动,系统会根据启动状态分别进入不同流程;如果先判断广告,也需要网络;如果先判断缓存,则不符合显示启动页、广告页的流程。综合分析,应先判断首次启动。
第四步:绘制完整流程
根据各节点及其先后顺序的研究,整理全部流程如下:
流程描述
- 软件启动时,APP自检测是否首次启动;
- 首次启动时,进入启动页,停留2秒后进入新手引导,用户可跳过引导,或操作引导后,进入软件首页,此时做网络判断,如果无网络,则打开该APP原始的静态首页;
- 非首次启动时,若当前无网络,则进入启动页,停留2秒,此过程中调用上次使用后本地保存的缓存数据,进入APP缓存首页;
- 非首次启动时,若为2G网络状态,则进入启动页,停留2秒,在此过程中更新首页数据,并打开最新首页;
- 非首次启动时,若为3G/4G/Wifi网络,则检测是否有最新的广告数据,并请求返回本地显示广告页。广告播放时间为2-3秒,用户可选择跳过,或自动播放完毕进入首页。此过程中APP请求首页数据返回,进入最新数据首页。
- 在首页数据更新时,android环境下,对比本地版本与数据库版本,若版本不一致,弹出版本更新提示。
本文由 @林元从 原创发布于人人都是产品经理。未经许可,禁止转载。