当前位置:朝夕网 » 数码科技 » 如何设计并搭建开放平台?

如何设计并搭建开放平台?

本篇文章介绍了从产品经理的角度,以作者亲身经历,在从0到1设计企业的开放平台过程中,需要考虑哪些环节,搭建哪些基础功能,技术接口设计,以及如何落地并推进开放平台项目启动。一、企业为什么需要搭建开放平台三、开放平台设计1.根据不同的服务对象,

随着ChatGPT和AI绘画的爆火,市面上关于AI的工具型产品越来越多。作者从产品经理角度,并结合自身经验,分享从0到1设计企业的开放平台过程中,需要考虑哪些环节,如何设计并搭建开放平台?希望对你有所启发。

本篇文章介绍了从产品经理的角度,以作者亲身经历,在从0到1设计企业的开放平台过程中,需要考虑哪些环节,搭建哪些基础功能,技术接口设计,以及如何落地并推进开放平台项目启动。

写在前面

随着ChatGPT和AI绘画的爆火,市面上越来越多的工具型产品继而出现。

那么为这类产品开发以及设计者提供底层能力的OpenAI到底是什么公司?

实际上OpenAI是一家全球最著名的人工智能研究机构,发布了许多著名的人工智能技术和成果,而这次爆火的ChatGPT便是OpenAI所研发的InstructGPT模型,这是一个AI对话系统,也是OpenAI对外开放平台收费的API能力之一。

一、企业为什么需要搭建开放平台

什么是开放平台?

在互联网时代,把网站的服务封装成一系列计算机易识别的数据接口开放出去,供第三方开发者使用,这种行为就叫做Open API。

而提供开放API的平台本身就被称为开放平台。(狭义角度,本文后续将阐述当前各个企业开放平台的定位区别)

企业为什么要搭建开放平台?

最早尝到开放平台甜头的公司是Facebook,扎克伯格所崇尚的开放思维、群体智慧和创新精神汇聚到一个平台。

Facebook搭建的开放平台,为网站源源不断地注入群体开发者的智慧,开放战略使得Facebook迅速脱颖而出,并且得以积聚人气,为下一步的拓展、布局做好准备。

开放平台的能力简而概之,就是将Facebook拥有的海量社交用户档案和关系数据,通过API开放给第三方开发者。

一般大厂做开放平台的目的:

二、开放平台的分类以及服务形式1. 开放平台分类

一类是输出自身海量的基础数据,例如极速数据的API接口。

另外一类则是输出自身业务能力,例如高德地图、微信、支付宝开放平台等。这种类型紧贴业务场景的开放平台建设,按照业务能力形成一道护城河,也极大丰富了开放平台这个大家庭的种类。本文也将重点阐述这种类型的开放平台建设。

2. 服务形式

纯API形式和H5形式:

如需引用请联系作者

如需引用请联系作者

两种服务形式的优势和劣势:

两种服务形式各有优劣势,当然目前市面上也有变种,即某些部分H5形式 某些接口api输出。具体哪种形式建设开放平台,要依赖自身业务模式、团队情况、业务发展阶段、系统稳定性等诸多因素综合考量。这也是开放平台建设者需要第一步考虑的事情。

以我建设的开放平台为例,最早在设计开放平台之初,需求方来自于技术以及商务,需要一个可以便捷管理接口,支持让异业接入方能快速接入并且投入使用。那么基于这些考虑,最早第一版本的开放平台是只支持H5模式的输出,一直迭代到2.0才支持API模式的输出。业务方通常不会给太多的时间给到产品设计者,只有在保证业务模式清晰的基础上,快速上线满足业务方需求,才能有下次迭代。

三、开放平台设计1. 整体架构设计

如需引用请联系作者

这里架构设计按照市面主流开放平台的架构来绘制,包括门户中心、开发者接入板块、开放能力运营板块、运维中心、API网关。

门户中心:这里主要涉及到开放平台的访问入口,设计者需要考虑到有多少角色参与到开放平台里。一般正常最基础的角色是 平台运营者、开发者,平台提供api能力给开发者接入。再次基础上,较大规模的开放平台一般构建一个大生态体系,那么对于API接口服务能力的提供不仅仅需要依靠自有能力,更加重要的就是要依赖于开发商和合作伙伴的可共享能力接入。此时便有合作伙伴,也就是服务商的角色参与。

这里参考抖音的林客,本地服务商经营平台:

开发者接入板块:这个版块的主要使用角色是开发者,此时众多开发者就是直接用户。产品经理在设计这个版块的时候,需要考虑到各个类型的开发者。

用户体验里面最重要的一个原则就是把用户当“傻子”下载宝使用说明,开发者接入板块要做到尽可能简明扼要,你面对的可能是刚从培训班出来的小白,或者是接入过无数接口的大佬。

这里重点阐述一下接口文档板块,一直以来接口文档的维护相较于产品说明文档都会比较弱,强依赖于开发者的描述,需要注意的是产品经理可以适当介入接口文档的撰写,尽量做到文档清晰易懂,重点注意事项需要标明。

之前在做实际对接过程中,常有错误返回的追述发现只是开发者看漏了部分文档参数。

开放能力运营板块:这里的用户角色参与者较多,可能是平台实际管理员、财务、客服、商务等。由于参与方较多,对该板块的需求也会较为繁杂,产品经理需要梳理好必要的功能建设。

如何设计并搭建开放平台?

运维中心:运维中心承担了推动开放平台正常往前的齿轮角色,这里部分开放平台会缩减部分,例如白名单管理、数据库管理 这里在部分企业中,已经被其它系统所承担下载宝使用说明,复用这个版块即可,无需重新建设。

API网关:网关可以说是开放平台的核心,承担了整个开放平台的流量入口,同时还要有足够的系统容错能力。如上图所示,网关包含应用的校验、能力权限校验等功能。

市面上无论大厂还是中小厂的开放平台,或多或少都会在其中有部分体现。中小厂在考量到开发能力,业务模式等因素,可以按照最基础的板块建设,但是涉及到安全中心这种必要板块,产品经理在设计开放平台之初就需要和公司安全部门进行协商。防止开放平台被接口攻击。

作为产品经理的角色,不管是哪个阶段设计开放平台,需要清晰自己业务开放平台的最终形态是什么,反推目前必要板块的建设。反推之后,下一步才是进行功能设计以及技术方案敲定。

2. 功能设计

由于我当前项目涉及到api形式和H5形式,这里两块形式都会做一定的介绍,其中有部分重叠的设计思路就不予赘述。

在正式介绍功能设计之前,产品经理需要明确一点开放平台的服务对象是谁?

这里具体服务对象包括大型连锁企业、中小企业、小微商家、有分销能力商家、个人开发者、合作伙伴服务商。

根据不同的服务对象,主流开放平台一般区分为,标准接入型开放平台(例如微信、支付宝开放平台)以及解决方案接入型开放平台(例如高德开放平台提供的解决方案)。

两种开放平台的整体架构不会有太大差别,但是具体对接流程、收费模式、服务形式会有差别,在这个基础上延展出来运营设计也会有所不同。这里需要产品经理按照各自业务特性来进行设计。

根据使用角色,延展出来主流开放平台主要解决以下几个层面的需求:

如需引用请联系作者

3. 功能设计说明

(1)运营管理后台

开放平台运营管理后台主要是基于销售、商务、运营者、财务的多端需求建成的管理后台,其中功能需要能满足接入申请审核、接入方管理、账号管理、业务数据管理、文档管理、工单管理。如果财务板块有对账以及开票需求,还需要融合进财务管理系统中的自动对账中心以及自动开票中心。

(2)开发者门户(接入方后台)

开发者门户的入口一般来说是网站为主,由于目前开发者大部分通过搜索引擎来查询,网站的包装也比较重要。门户网站的主要功能职责就是帮助开发者用户了解开放平台的能力,帮助企业或者开发者做到什么,引导用户进行注册。

一般主流开放平台会选择云服务控制台给到开发者进行应用的申请、账户充值等操作,控制台一般需要承载能力签约、账户充值、文档下载检索、业务数据查看等多项功能。

(3)后端安全中心

开放平台的后端安全中心要解决的问题主要由两个:由接口调用一定会碰到的数据安全以及相关鉴权。这里做安全的小伙伴一定比我更专业,产品经理需要和运维中心、安全部门同事协商考虑好开放平台的后端安全中心建设。

四、技术接口设计

这里主要是基于目前项目的技术方案做的接口设计,当然市面上已经有很多技术大佬写过的开放平台技术设计方案,我这里不做过多的描述。产品经理了解大概的实现原理即可,这里更多需要关注的是接口在设计时候,作为开发者接入时候的开发成本,提高开发者的用户体验,我从这个角度来阐述下接口设计原则。

1. 接口简洁性

这里要考虑到,由于不同业务输出的复杂程度,会导致接口数量指数级飙升。如果是纯API接入的开发者,在理解接口调用时序图时会花更多时间。尝尝会在实际调用时卡在莫名其妙的节点,这里就需要只输出必要接口,并且保证接口足够简介易懂。

由于开发平台建设方,未必有足够资源建设SDK中心,那么对于开发者来说就不是那么友好,因此纯API接入文档的接口和调用方式需要保证和主流接口有一定相似性,最大程度确保开发者能快速熟悉接口。

2. 接口兼容性

这里主要是考虑到,不同开发者应用的平台不同。例如某些专门输出给硬件厂商的开放平台,此时就需要考虑到应用设备前端版本不同,对应参数范围也会造成差异。这里可以考虑各自业务具体形式来设计。

五、运营设计

开放平台的成功运行,离不开良好的平台运营。那么这里需要对平台运营的各个环节进行流程设计,确保每个环节都保证足够高效。

这里我贴上一份目前项目开放平台的对接流程示意图

如需引用请联系作者

大部分商业化的开放平台项目可以基于上述流程做变更。

需要注意的是,业务输出特性不同,会影响运营参与角色不同。比如我所在项目,实际运营人员还包括了客服,因为需要用到客服能力解决接入方平台的客诉问题。那么次数处理流程里面就需要包含客服处理流程。以及产品需要针对业务,给内部客服部门做客服文档,提供客服sop,优化处理流程。

六、落地细节

撰文过程中,考虑到开放平台建设的通用性,没有将建设的很多细节写出来,这里我单独加一个板块来介绍,希望给平台设计者避坑。

需要明确开放平台的核心用户是谁?大部分人的第一反应,核心用户一定是开发者。其实这个答案可以说是也可以时候不是,由于B端商业化商品的特殊性,大部分产品设计出来是给到某一类角色用的(而非具体某个人),开放平台的使用用户角色大部分是开发者,这点没错。

然而,实际上为这个商业产品买单的用户,大部分情况下是公司决策者,这里就代表,如果需要这个平台持续被买单,需要满足的核心用户实际上是公司决策者。

举个例子,只要是打过工的小伙伴大部分都过钉钉打卡这样类似功能。这个产品本质上是B端产品,有签到的功能,签到的时候直接可以定位,对员工而言这简直就是个反人性的功能,员工作为个体本身是很排斥打卡的,钉钉却把打卡功能延展了各种反作弊的功能(比如定位、面容识别),可没办法谁让钉钉是个B端产品。

所以B端产品就算体验不好,甚至是反人性的,只要管理者觉得达成了管理目标,你就要必须使用系统,因为你不是你自己,你是企业的一份子。

企业决策者最关心的问题,实际上是开放平台的能力是否能给企业降本增效,当然并不是说不需要关心开发者的用户体验,而是平台设计者需要把更多的时间花在企业决策者的考虑角度上,要满足为你付费的用户的核心需求。

七、后记

感谢能坚持看到最后的各位,开放平台的建设是一个长期的过程,中间会经历多次迭代,甚至由于公司的业务的调整影响开放平台的基础能力的建设。

设计者除了要为功能负责之外,更多的是陪伴开放平台的成长,开放平台的概念最早形成于2010年左右,目前各大互联网平台都有自己的开放平台生态,服务了无数开发者以及企业。随着OpenAI的火爆,相信平台建设者都逐渐致力于形成自己平台的护城河,为企业提供更多元化,更有意思的能力。我作为建设者之一,也很希望看到中小厂利用核心能力建设开放平台,也希望本文能帮助到各位建设者。

本文到此结束,希望对大家有所帮助!

免责声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如有侵权行为,请第一时间联系我们修改或删除,多谢。朝夕网 » 如何设计并搭建开放平台?