评论

平台化设计思维

本篇文章主要讲述作为一个码农在进阶的路上如何拥有平台化设计思维

一、概述

  作为一个码农,在成长过程中总是有各种各样的挑战,面对这些挑战很对人又不知该如何解决。而作为成长方向上为数不多的有光明前途的平台设计者,可以拥有更多的“机会”,也是团队中可以指引整体发展方向的“引导者”,在组织中拥有“重要”的地位。
  当然先成长为一个优秀的“开发者”对升级成为一个平台设计者会更有帮助,以前的文章也有探讨过研发思维的建设,传送门在这里 码农进阶中的思维变化
  回归正题,多数程序员成长过程中经常会遇到不知怎么将一个很好的东西变成高大上的产品的问题,或者说不知道该更方便的提供/邀请给其他人使用,这里介绍平台化设计思维或者说方向,可以给大家提供一个思路。

二、定义

 平台:它是一个基础设施,可以提供 “资源”、“交流”、“服务”等内容,并制定完善的规则,使各种角色的用户可以制作或者获取到特定的内容。

三、如何拥有平台化思维

3.1、为啥要做“平台”

  这里我们先探讨“如何拥有”平台化思维,让我们先有个潜意识的就会往那边想,至于“如何设计”,我们下一章节讨论。
  为何我这里说“我们先有个潜意识“,是因为我发现日常工作中很多能力强的小伙伴其实都有不错的”研发能力“、”效能思维“、”行动能力“等,然后工作中遇到问题后开发出来了一个”工具“提升了自己的开发效率或者沟通效率,但是却止步于此,比如一个调试工具、一个多端编译工具、一个上传工具等,这些“工具”都有一个普遍的特点,那就是:“单向服务无组织规则”、“功能共享使用者却无法约束”、“生产的数据不共享”、“即使开源也得不到发展”,因此我们要做“平台化”,建立一个基础设施,作为一个“平台”,上面的用户(内容提供者、内容使用者)可以有机的组织到一起,使服务更加流畅、用户各司其职、信息共享更加方便、发展更加迅速,那么如何建立这种“平台化思维”呢,我这里有一个简单的方法-“两步七问”,即:
  第一步:规划,时刻谨记我们需要成长和成果,因此我们需要一些更耀眼的“内容”
   ●要不要功能更强大一些;
   ●要不要推广更广泛一些;
   ●要不要做成独一无二(一定范围内);
  第二步:落地,判断能不能做成“平台”
   ●可以共享使用功能和数据吗?
   ●可以让更多人来自主“生产”内容吗?
   ●需要统一管理用户和使用规则吗?
   ●需要有更多人来一起发展吗?
  以上要时刻提醒、锻炼自己,形成一定的思考习惯,在做之前先“思考”,不然遗忘或者没这个想法,那自己设计开发的东西就发展不起来,甚至可能启发其他人并被占先;

3.2、平台化思维如何建立

  上面的3.1小章节只是用来让大家时刻谨记“要不要”和“是否适合“的,接下来我们思考平台要做成什么样,也就是“平台化”的“战略目标”;
这里简单画了一个思维导图,大家看起来可以更加直观。

3.2.1、定位

  对应图里的”解决什么问题“,也就是我们这个”平台“是用来做啥的,是个”工具平台“、”电商平台“,还是”管理平台“、”娱乐平台“,有了目标才能规划功能,这里简单罗列了几个方向。
  需求:范围较广,比如来自产品、研发、测试等等;
  效率:提高服务、内容生产的效率,如商城、后台管 理等;
  降本:降低了”工作内容“的成本,如开源社区、工具类平台等;

3.2.2、角色

  角色即使用此平台的所有构成者的身份,粗略划分为“内容使用者”、“内容提供者”、“中心化服务”,真实用户又可以划分的更加细致,比如后台管理员、会员等级1、会员等级2、普通会员等

3.2.3、组织

  组织即平台通过一定的“规则”使所有使用者、内容形成一定的规范,可以形成功能闭环,不同部分各司其职,共同组成了一个“平台”。我们可以这样假设,现在有一堆人、有不同的需求,但是“人”能够去哪、“看”到什么东西、“制作”出什么东西、如何“交流”,这都是零散的、独立的,是个无效、无意义的“组合”,只有通过一定的“规则”“组织”起不同的部分,提供一个平面上,“用户”可以到不同的“地方”,“看”或者“制作”不同的“内容”,这样才能性能一个有效的“系统”。所以一个“平台”需要提供两方面内容:“制定规则”、“提供基础服务”。

3.2.4、发展

  一个“平台“若不发展,迟早要没落,要想发展,那就需要提供“更多功能”吸引“更多人”来使用,“更多人”来提供“更多功能”。简单理解就是用户更多、开发更多,那么从一个平台来说,在不谈主动推广,只探讨自然生长的情况下,如果做到“更多人”来开发呢?现在有个比较好的模式就是“生态”,开放出去一部分能力,让更多的人基于“开放”去制作更多的“内容”和”功能“,类似“插件”。这些”插件“越来越多,功能越来越强大,使用的人也就越来越多。

四、如何设计一个平台

 上面已经讲了“战略”,接下来我们思考“战术”,即一个平台该“怎么做”

4.1、公式


  为了方便大家的使用,简单总结了一个公式(大家可以一起来完善它)如上,这里简单介绍一下:
   ●“角色A和B”:用户
   ●“可以”:权限
   ●“动作”:规则
   ●“内容X”:数据
   ●“越来越多、很多”:生态
   ●整体表达:需求

4.2、思维导图

  为了方便大家理解,我们还是画个图

4.2.1、定位

  思考方向主要有:
   ●用途,提供给什么人什么服务,大方向上制定目标
   ●发展方向,细分市场,提前做好规划
   ●竞争对手,对比竞对,思考优势劣势

4.2.2、角色

  尽可能多的争取到更多的用户,划分出各种角色,后续可方便规划“需求”、“规则”

4.2.3、规则

  可分为如下的内容(粗略):
   ●用户管理:包含登录、注册、权限等
   ●内容管理:包含制作、存储、删除、获取等
   ●数据管理:包含统计等
   ●业务逻辑:包含使用规则、功能服务逻辑、流程逻辑等

4.2.4、生态

  “插件”的设计规则:
   ●准入规则:登录、权限等
   ●开放规则:“平台”基础服务、规范、兼容等
   ●制作规则:开发、调试、发布、定价等
   ●容器规则:跟平台的”融合“逻辑等
   ●使用规则:购买、打烊、过期等
   ●管理规则:禁用、删除、推广、分账等
   ●其他:安全、审核、文档等

五、举个栗子🌰

5.1、背景

  笔者曾经接到过一个C端消息通知的需求,要求是服务端推送消息给C端,我们可选择的是自研和购买第三方服务,经过调研对比了:功能、性能、成本、兼容性等多个方面打算自研,那么很自然而然的想到要实现这个需求,我们可以建一个服务提供生成消息、发送消息、存储消息等等,然后实现一个客户端sdk,用于接收消息和处理消息。需求实现了,皆大欢喜了,然而我们是否就可以满足了?结项了?
接下来让我们用今天讨论的平台化设计思维再来思考一遍。

5.2、战略思考

  两步七问,规划和落地:
   ●要不要功能更强大一些
    ○当前的需求确实简单,一推一收即可,将来会不会有黑名单、群发、根据特定的产品范围发、是否有c端向服务端发送的消息?可以跟产品探讨一下。更多的功能是否就可以有更多的沉淀、更多的收获、跟多的发展?
    ○- 要
   ●要不要推广更广泛一些
    ○当前是一个产品功能在用,公司或集团下有没有其他部门也有类似的需求?更多人使用我们的价值产出是否就更大,甚至将来作为isv开放给外部企业使用,未来的“钱途”是否也会更好?
    ○- 要
   ●要不要做成独一无二(一定范围内)
    ○是否可以设计成一个统一的系统,不同的人可以划定一个“私有区域”,可以管理只跟”自己“相关的内容,比如成本、消息管理、权限管理?然后让大家都来使用,完全“垄断”某一个范围?ps:垄断的好处就不用说了吧~
    ○- 要

   ●可以共享使用功能和数据吗?
    ○不同部门的产品同样有此类需求,达到“总成本”降低
    ○可以
   ●可以让更多人来自主“生产”内容吗?
    ○不同的需求需要生成不同的“消息”
    ○可以
   ●需要统一管理用户和使用规则吗?
    ○多团队使用时,需要管理不同的成本单元用户;也需要管理c端不同权限以及名单的用户和使用规则
    ○需要
   ●需要有更多人来一起发展吗?
    ○可以开放一些插件(消息处理方向),比如针对特定消息内容可以类型转换、展示不同交互,让不同的团队自己实现自己的“功能“,减少本团队的人力成本
    ○不确定

  结论:有做成平台的必要性

5.3、战术思考

  根据公式: {“越来越多”} {“角色A”} {“可以“} 通过平台 {“动作”} {“很多”} {“角色B”} {“动作”} 的 {“内容X”}
  思考如下:
   1、定位:面向公司内部的需求,实现客户端、服务端之间的消息通信,将来可以开放给其他外部企业付费使用,简单易接入、兼容各个平台、功能完善定位于基本的消息处理并深度挖掘业务使用场景(抛弃如视频、语音等场景)、费用比竞对低、稳定安全有保障;
   2、角色:不同研发、不同消息生产者、不同消息接收者、其他功能扩展开发者;
   3、规则:设计一个平台,包含:运营管理系统、后台管理系统、用户端sdk/消息页等,囊括的逻辑有,用户身份相关和权限管理、消息产生发送接收流程、组织间“数据”独立和组织管理、数据(消息)的流转保存统计、成本管理等;
   4、生态:即插件的设计规则,如接口定义、上传和使用规则、审核和更新流程等

  最后,通过相关的“产品”设计、“UI”设计、“架构”设计、“流程”设计、“开发”设计,逐步实现整个平台。

六、最后

  还是那句话,我们每个人都需要成长,从最初写一个“方法”的代码、到写一个“功能”、实现一个“模块”、跟一个”项目“、设计一个”架构“、搭建一个”平台“,这一个又一个的阶段有不同的目标也有不同的思维模式,我们要不停的改变、不停的成长、不停的思考才能应对不同的问题或者目标,一种思维模式也需要慢慢养成一种习惯。
好了,我的分享结束,希望能对大家有用,如有问题请及时与我反馈,我们一同进步~😄

最后一次编辑于  2023-12-20  
点赞 41
收藏
评论

9 个评论

  • 张老师
    张老师
    发表于小程序端
    2023-12-20

    写得真不错,点赞支持一下~

    2023-12-20
    赞同 1
    回复 1
    • 微盟
      微盟
      2023-12-20
      谢谢大佬😄
      2023-12-20
      1
      回复
  • 孟祥阳
    孟祥阳
    发表于移动端
    2023-12-20
    平台思维方式不错,站在了更高层次去设计架构
    2023-12-20
    赞同 2
    回复 1
    • 微盟
      微盟
      2023-12-20
      🙏
      2023-12-20
      1
      回复
  • 清凉
    清凉
    发表于移动端
    2023-12-21
    不明觉厉
    2023-12-21
    赞同 1
    回复
  • 发表于移动端
    2023-12-20
    膜拜大神
    2023-12-20
    赞同 1
    回复
  • 轨迹
    轨迹
    发表于移动端
    2023-12-20
    拜读下大佬作品
    2023-12-20
    赞同 1
    回复
  • 小怪兽张益达
    小怪兽张益达
    发表于移动端
    2023-12-20
    不错不错,学习学习
    2023-12-20
    赞同 1
    回复
  • Hey_Nn_Tiamo
    Hey_Nn_Tiamo
    发表于移动端
    2023-12-20
    大佬🧎
    2023-12-20
    赞同 1
    回复
  • 大米
    大米
    2023-12-20

    思维模式不错,受益匪浅

    2023-12-20
    赞同 1
    回复 1
    • 微盟
      微盟
      2023-12-20
      🙏
      2023-12-20
      1
      回复
  • hope
    hope
    2023-12-22

    学习了,平台思维,高瞻远瞩

    2023-12-22
    赞同
    回复
登录 后发表内容