sdk 选型,产品经理的角色或许比想象中更重要
编辑导语:由于 sdk 多数是离线形式提供出去,对于业务方和产品方来说,后期修改起来都是很麻烦的一件事情,所以产品经理需要调查清楚业务方到底有哪些需求,说到底就是产品经理的需求梳理能力了。对于sdk 选型,产品经理的角色或许比你想象中的更重要。
sdk 即 Software Development Kit(软件卡发工具包),指辅助开发软件的相关文档、范例和工具的集合,通常提供一些接口,但也可能包括能与某种嵌入式系统通讯的复杂硬件,还经常包括示例代码、支持性的技术注解或者其他的为基本参考资料澄清疑点的支持文档。
sdk 的使用,通常是为了降低开发成本,或是作为第三方工具实现一些专业性要求较高的功能。也有一些厂商,以 sdk 的形式对外提供一些自有的数据。sdk 的选型,不仅仅是技术人员需要考虑的问题。
本文以实际项目为例,谈谈产品经理在 sdk 选型中需要做的事(为避免不必要的纠纷,本文仅谈方法,不提及具体 sdk 厂商测评使用结果)。
一、项目背景
企业化办公应用平台中,音视频通讯是必不可少的功能。
由于其专业性要求较高,集成 sdk 实现,是比较合理(似乎也是唯一可行)的方式,目前市面上提供音视频 sdk 的厂商包括 zoom/agora(声网)/腾讯云等。
二、选型步骤
1. 功能&性能
sdk 的选型,最核心也是最基本的标准,是 sdk 提供的功能和性能,选择方法包括文档分析和实测。
1)功能
进行 sdk 选型时,首先要根据需求,框定功能范围,以检视 sdk 是否能够满足。需要注意的是,sdk 受制于第三方厂商,不太可能根据某个使用方的需求改变其更新迭代的节奏。
所以在选择时,产品经理需要预判功能范围,比如当下需求不强,但是未来可能会纳入的需求;对于当前用户不重要,但是作为通用产品比较重要的需求。
如果嵌入后发现不合适,又不能等待厂商升级,只能再次替换 sdk ,会造成双倍的开发成本。
2)性能
不同厂商提供的 sdk 性能不尽相同,需要根据实际需求进行选择。
实例分享:笔者梳理了音视频通讯的功能范围如下:
上图的功能中,有些并不是音视频的核心功能,比如录音/录屏、智能降噪等。
产品经理需要结合用户的实际情况,对需求进行分析和预判,比如某公司A,对信息安全度要求较高,不允许参会者录屏;某公司B,用户需要通过线上会议进行定期的技能分享和信息同步,录屏则成了刚需。
音视频通讯是体验敏感型功能,对于 sdk 及其后端服务的要求较高。我们在第一个 sdk 实现效果不佳的情况下,痛下两个月开发成本替换了 sdk ,体验得到了大幅提升,用户数据出现了火箭式飙升。
可以从以下几方面,结合用户实际情况进行分析。
厂家通常会提供文档,对核心性能指标进行说明和保证。音视频厂商也大多提供包括其核心功能的demo供试用。产品经理可以牵头组织大家下载demo进行实测。下面附某 sdk 的实测记录供大家参考:
2. 适配分析
在功能和性能满足要求的基础上,还需要考虑 sdk 对于将要嵌入的产品环境是否适配,保证原产品不会对这个“客体”产生排异反应,这里主要考虑两方面:
1)产品逻辑
产品经理需要从框架层面,审视 sdk 是否适配,避免因逻辑冲突带来的返工。
例如,音视频是与IM深度结合的功能,需要考虑其是否支持现有的会话架构,是否支持一个会话ID有多个视频通话,是否支持跨群通话,是否同时支持加密群与普通群等等。
又例如,在集成厂商用于提供数据的 sdk 时,某个字段与自有字段名称相同,但是含义有出入,则需要进行特殊处理,比如换名字区分。
2)界面交互
部分厂商的 sdk 不支持自定义UI,或者支持范围有限,嵌入后对app整体风格会产生影响。对于用户体验要求比较高的产品,需要注意这一点。
3. 配套服务
1)售后服务
sdk 集成及后续使用会有很多细节问题。能够提供及时/负责的售后服务,也是选型时需要考虑的重要元素。
如果厂商已经建立起完备的工单系统,问题能够短时间内传递到负责人员而不仅是客服安抚情绪,那么将会极大地提高合作的流畅度(曾经合作过的某厂商,提供1v1微信客服群售后,但是IM形式的零散对话,无法建立起结构化的清晰的沟通过程,也无法准确得知问题当前的流转情况,沟通效率低下)。
2)数据跟踪
部分厂商提供基于服务端的数据跟踪服务,如音视频的使用量及不同维度的分析。这些数据一方面相对客户端埋点实现会更准确,而且减少了集成方的埋点和可视化成本。
4. 选型成本
1)显性成本
以音视频为例,包括 sdk 一次性购买费用/实际使用费用(基于时长或流)/售后服务费用等等。
2)隐性成本
这里主要是指 sdk 的集成难度/服务稳定性等,譬如集成国外厂商 sdk,可能会面临其未来退出中国市场的风险。这也是动荡大环境下需要考虑的问题。
三、总结
同上所述,sdk 是实现功能的手段。
但是 sdk 的选型,并不只是工程师需要操心的事。产品经理需要做的,比想象中更多也更重要。笔者结合实际经验,将 sdk 选型的思路和框架进行整理,希望能给大家提供参考,欢迎留言与我讨论。
本文由 @可可可可 原创发布于人人都是产品经理。未经许可,禁止转载
题图来自Unsplash,基于CC0协议
sdk就是一系列接口功能集合嘛