zoukankan      html  css  js  c++  java
  • 如何提升前端基建的效能价值?

    写在前面

    上一篇如何衡量工具平台的效能价值?推导出了一种度量模型,通过具体的数据指标来衡量效能价值,让内部工具/平台的价值也能看得见、说得清

    那么,对于正在做或者将要做的工具平台,如何进一步提升其效能价值呢?

     

    一.效能价值有哪些影响因素?

    首先,工具的关键目标是解决实际问题

    工具总是为解决问题而生的

    选定目标问题之后,接着通过工具化、平台化等自动/半自动的手段来尝试解决,并通过效率和体验两方面的提升体现出解决方案的效能价值

    效能价值 = 效率价值 * 体验因子
    

    进一步细化:

    工具效率 = 问题规模 / 操作时间
    工具效率 = (不用该工具解决所需的)时间成本 / (用该工具解决所需的)时间成本
    
    工具体验 = 易用程度 * 稳定程度
    

    因此,工具的效能价值取决于 4 个因素:

    • 问题规模

    • 操作时间

    • 易用性

    • 稳定性

    提升工具效能就是想办法增大分子、减小分母,即提升问题规模、易用性、稳定性,降低操作时间

     

    二.如何提升问题规模?

    对于选定的目标问题,其规模通常是固定的,所以关键在于如何选择目标价值最高的问题

    问题的目标价值 = 目标用户量 * 需求频率 * 单次的价值
    

    多数情况下,我们倾向于选择目标用户量更大的问题,因为解决一个普遍存在的问题要比解决只有小部分用户才会遇到的特殊问题更有意义

    然而,需求频率与单价对目标价值的影响却不那么显而易见:

    其中:

    • 首选高频高价:非常难得的需求,如果有,优先满足

    • 不做低频低价:此类需求不值得做

    • 高频低价、低频高价并重:大多数需求都是这两类,选择也都集中在这里

    在高频低价与低频高价之间,产品经理的一般策略是:

    高频抓用户,低频做利润

    也就是说,前期先通过满足高频低价的需求获得大量用户,中后期再将低频高价的需求考虑进来

    先利用高频低价的需求抓用户,因为高频场景和用户互动的机会多,而低价的轻决策场景可以降低用户进入门槛,容易拉新、引流;再用低频高价的需求做利润,因为单价高了,可以切分的蛋糕才大。之所以采取这样的先后次序,是因为必须有海量用户做基础,低频需求的总量才足够大。

     

    三.如何降低操作时间?

    当然,如果有明显的待优化项,应该尽快去做,先把工具自身的效率提升到相当高的水准,减少用户等待工具运转完成的时间

    但如果工具本身在耗时上已经没有太大的优化空间,此时就需要将目光从局部的工具中移出来,放眼全局考虑整体优化

    • 面向过程的视角:流程上,能否减少一些中间环节,简化工作流

    • 面向对象的视角:模式上,能否减少参与其中的相关角色,减少人与工具、工具与工具、工具与人之间的交互,减少一些中间产物

    流程上,甚至协作模式上的变革通常有机会颠覆先前解决问题的关键路径,绕过既有工具的效率瓶颈,从而大幅降低操作时间

     

    四.如何提升易用性?

    工具型产品的第一要义是用户会用,让用户至少会用,才能体现产品的价值

    易用性要求产品功能尽可能地符合用户心智(至少要保证核心功能的易用性),简化交互,降低用户上手使用的学习成本:

    从用户心智向产品功能做映射,极致的易用是符合直觉,上手即用

    那么,首先要明确用户心智,做法非常简单:

    告诉用户,这个工具能给你解决什么具体问题。

    接着(在产品功能不那么符合直觉的阶段)先教会用户怎么用,功能引导、新手教程/视频、帮助文档等都是不错的方法,旨在提升易用性,让用户先用起来。同时根据用户真实反馈不断优化使用体验,缩小产品功能与用户心智之间的差距,使之最终符合直觉:

    • 心智负担小(学习成本低)

    • 交互友好

    • UI 美观

    • 核心功能流程顺畅

    除了让产品功能向用户心智靠拢外,还有一种非常规思路是培养用户心智(即改变用户直觉,使之符合产品功能),多出现在颠覆式创新的场景,必须改变用户根深蒂固的直觉才能真正提高效率

     

    五.如何提升稳定性?

    从用户心智向产品性能做映射,极致的稳定是完全信任,从不怀疑工具会出问题

    与易用性相比,稳定性是客观而明确的,单从技术角度就能在很大程度上确保稳定性,例如:

    • 降低 crash 率:持续关注 top 崩溃,及时修复影响范围较大的

    • 减少 bug 数:持续观察 bug 增长趋势,快速迭代修复,收敛功能性问题

    • 减少操作失败次数:记录失败操作,分析改善常见误操作,同时反向丰富功能

    其中,值得注意是记录失败操作,以搜索功能为例,失败操作包括:

    • 搜索服务出错

    • 搜索无结果

    • 搜索结果与预期不符(结果没有帮助)

    从技术上看,后两类并不属于操作失败,但同样值得关注,因为无结果的搜索通常意味着语义化/模糊搜索功能不够完善,或者相关内容有缺失,这些信息对于丰富产品功能很有帮助。同理,不符合用户预期的搜索结果也是一种有价值的负反馈,有助于发现问题,改善用户使用体验

     

    六.如何提升用户量?

    当工具的效率和体验都达标后,最关键的问题是如何提升用户量,放大工具的价值

    与其它产品相比,工具型产品的难点在于:

    • 可替代性强

    • 用户不知道(有工具可以用)

    • 用户粘性差,容易流失

    强的不可替代性是决定性因素,作为唯一选项自然不必考虑用户量的问题,例如小程序开发者工具

    如果不具备强的不可替代性,就要通过其它手段来增加用户的替换成本,常用的策略有场景化运营、社区运营、内容运营等

     

    场景化运营

     

     

    将工具与使用场景紧密关联起来,培养用户的使用习惯:

    做工具型产品一定要时刻追问用户在什么样的场景下会想到打开你的产品,这个具体场景就是一切运营的基础

    围绕一个核心场景,充分满足关键需求,成为该场景下的最优解决方案,从而解决用户不知道的问题

    另一方面,场景化的温馨提示有助于提升产品的温度,让用户感受到人性关怀,而不只是冷冰冰的工具

     

    社区运营

    加强产品与用户,以及用户与用户的联系,建立社区是提高用户粘性的有效手段,例如:

    • 运营一个群组:将冰冷的工具做成能够交流的“活人”,拉近产品与用户的距离

    • 增加社交功能:用户订阅产品更新,用户之间关注、评论、点赞等,增加用户的参与感和归属感

    通过群组将产品的变化告知用户,这种持续的频繁正向反馈能够激发用户反馈问题的积极性,增强产品与用户的联系

    社交化听起来与供内部使用的工具平台有些距离,实际上并不遥远。以前端工程为例,像公共组件/代码片段、Code Review、新手教程/API 文档等都可以有简单的社交功能(点赞、评论),看似细小,却有助于提升用户的参与度

     

    内容运营

    与社区一样,内容也是一种场景延伸,将工具产出的内容也作为工具的一部分,例如:

    工具引导用户输出附加价值,从而提升工具的整体价值(工具 + 共享内容)。另一方面,用户将产生的内容分享给其它用户,也有助于提升自身的影响力,互相促进

     

    参考资料

     

  • 相关阅读:
    iOS提交后申请加急审核
    EF5.0修改实体的时候,出现“对一个或多个实体的验证失败。有关详细信息,请参见“EntityValidationErrors”属性这个错误
    验证码生成-->漂亮啊
    用js将毫秒时间转成正常时间
    Ajax异步请求-简单模版
    unity3d自己写角色移动脚本
    unity3d实现序列帧动画
    unity3d切换场景时,背景音乐保持播放
    C#给文件重命名
    NGUI如何创建自己的精灵图集
  • 原文地址:https://www.cnblogs.com/ayqy/p/13813005.html
Copyright © 2011-2022 走看看