当我们做软件考虑的不再是功能时,我们还能考虑什么?

做软件要的其实不是功能,而是业务场景下的解决方案,这就是今天我想要说的主题。

全文共1218字,阅读约2分钟。

刘洋

外包大师产品顾问

一般我们在和客户沟通时,会先询问客户想做软件的主流程、业务场景和使用人群是什么。当我们识别出客户想要的系统,以及支持的业务场景后,就可以通过场景对问题、问题对方案的逻辑去分析问题,只有把问题分析清楚,就可以导出系统所需要的各项功能。

场景到方案

首先,要细化场景,把每个场景都转化成事件流,先把解决问题的最短的步骤写下来,然后再考虑其他变化出来的情况。

然后,我们要站在用户的角度上,去考虑每一个步骤和动作,想想他们会遇到什么样的问题。

最后,就是针对上述问题,思考系统应该提供什么样的功能,罗列出功能清单,经过反复推敲后,就可以考虑初步的UI设计了。

业务场景细化

针对细化的业务场景,一般有3个步骤。

1. 这些场景中,用户要实现什么目的

我们可以站在用户角度描述将要达到的目的。比如:我想要添加购物到购物车、分享我喜欢的文章给我的好友等功能。

2. 执行该场景的前提条件

对于一个操作,有时候是有执行条件的。有时则是在执行某些功能动作后才能执行,那么这些执行条件是什么呢?这点要在策划的时候,务必标注清楚。

3. 除了主要用户,还有什么干系人

除了主要用户,一套流程还要涉及到上游、下游、管理者等其他关心这些场景的角色。对于主流程外,这些人的关注点是什么,我们应该提供哪些需求来满足他们。

分析问题,导出功能

通常有两个思考角度,第一个是在执行这些流程的时候你所遇到的问题,这里面都会遇到哪些变化及异常(分支流程和异常处理的问题怎么去解决);第二个是面对这些问题,系统应该设计什么功能去支持(即考虑逻辑闭环问题,不能有让用户有上一步操作,却没有下一步操作,导致人工介入)。

考虑环境及规则

面对客户,我们一定要问清楚需求,比如是要做小程序和APP,还是web端页面,亦或是saas系统等等。然后还要考虑系统承载的3个情况。

a. 性能相关,主要包括使用软件的人数,峰值,密度等等;

假如你是个电商平台,考虑最近新品发布,限购100件,想买的用户成群结队的在某一个时间点点爆同一个页面,这就会造成服务器宕机,所有业务被迫关停的尴尬局面。

b. 易用性相关,主要是设计的时候是不是符合用户的使用习惯,这跟设计人员的经验经历都有很大关系;

易用性的问题,通常是要看用户在没有指引的情况下,能否快速通过最短的步骤,找到自己想要的内容或者结果。易用性设计很差的,可能用户找不到,或者感觉不好,就再也不会来了,更别说主动推荐你的产品。

c. 部署环境相关,用户可能使用的网络,系统的软硬件环境;

最近有个客户,想做一个给幼儿园老师提供上课讲义的,产品需求是客户端。之前做个web端版本,其实用的流畅度,体验感也蛮好的,后来才知道,因为很多幼儿园没有网络,所以需要有单机离线版去支撑整体业务。

有了我给您介绍的这套追踪业务场景的流程,是不是能对理解用户和理解异常问题的处理,有了更多的理解。软件开发,并不只有主流程,考虑到方方面面,更需要有一个靠谱的产品经理来梳理。

本文作者:刘洋

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180803A1HTBO00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券