产品经理在日常工作中,负责推进项目进度。当他们与程序员对接的时候,询问这个功能几天能做完,程序员给的答案是五天。虽然你预计的时间只有三天,但你无计可施,只能相信他,并如约给了他五天时间,最后却导致项目延期。你并不知道这个功能的代码究竟有多少,程序员的工作量有多大,他利用你的一无所知有意拖延你的项目进度,最后背锅的还是你。
程序员,是公司里的极致技术类职位,他能看懂我们的工作,我们却很难理解他们。为了PM们在实际工作中不被无良程序员祸害,本文就从API接口的维度,浅析API的概念以及为什么要了解它,避免PM们在实际工作对代码技术类知识一无所知。
一、API的概念API,官方定义为应用程序编程接口。就是把是一些预先定义的接口,用来提供应用程序与开发人员基于某软件或硬件得以访问的一组例程,而又无需访问源码,或理解内部工作机制的细节。 目前市面上很多专门提供api接口的网站,覆盖面已经非常完善。像挖数据(www.wapi.cn),能够提供身份证二要素,手机三要素,手机在网状态,手机二要素,手机携号转网,银行卡二要素验证等多达数十种接口供选择,减轻了非常多的工作量。
二、为什么要懂API文档既然API如此复杂,又不属于你的工作范畴,我们为何需要大费周章的理解它呢,我们的目的是什么。
1. 明确需要的接口服务API分为很多种,最基础也是产品最需要的诸如短信API,地图API,语音API等,如果我们的产品涉及到此方面的功能,那就必须了解这方面的API以便于在需求设计阶段考虑更全面2. 掌握项目开发的工作量,合理安排计划这里说白一点就是防止被程序员欺骗。你走过去,发现程序员正在勤勤恳恳,对不起,人家在做外包,就是欺负你代码看不懂,气不气?但是如果你知道接口的难度和工作量,规定他在多久之内给你,就不会出现拖延项目的情况,也更有利于项目流程的更进3. 联调测试,识别项目风险点一些关键接口、数据量大需要进行大数据压测的接口,必须经过联掉测试,测出它的最大访问量,并对其进行优化或者设置限制,防止系统崩溃。4. 方便项目对接你懂一点技术,就不会闹出明明不能做,却还非要程序员做出来的笑话了。从这个角度看,也更有利于PM和程序员之间的团队沟通与和谐,避免矛盾,不至于弄翻友谊的小船。了解API可以使PM对技术理解更深刻,更好地衡量开发工作量和制定功能内容。
三、举例说明API的重要性
开发人员A开发了软件A,开发人员B正在开发软件B,A想用B的部分成果或功能辅助开发B软件,但不想完整输入A的软件,怎么办?于是A将软件打包成一个函数,放在B软件中,这个函数就是API。如果没有API,B就必须把A软件的流程整个走一遍,耗费大量的时间精力,但如果是接口接入部分功能,轻松便捷,想用就用,想拔出就拔出。有一杯密封果汁叫做数据库;果汁上面插着吸管,叫做API。如果你想喝到杯子里的果汁,由于它是密封的,你只能依靠吸管插入,否则你就喝不到果汁。在这个故事中,你属于某系统,你想获得果汁,就必须通过吸管,也就是接口,API来实现,而且这个API是数据库的唯一API。这样说来,API是一种完善项目功能,提高产品价值的辅助工具。更多时候我们直接选择使用数据源,可提供效果减少成本。