研发团队协作核心:API 接口文档
随着 Apifox 2.0.0 版本以及 web 端版本的上线,越来越多的用户认可 Apifox。而 Apifox 为团队节省研发时间、提高研发效率的基础在于——API 接口文档。
接口逻辑的沟通问题
在我们大量调研团队的日常工作过程后,认为有三个痛点,是严重影响研发团队的开发效率的:
- 后端同学,在接到优化或者是重构需求的时候,需要了解以前的接口逻辑。而为了达到这个目的,大多数情况只能是去翻代码;少数团队有 Word 版的接口文档,但查阅的时候发现,有些逻辑是记录了,而有些逻辑却没有。麻烦!
- 前端同学,需要根据不同的返回参数,编辑不同的页面样式。所以在编辑前端页面过程中,需要经常询问后端同学逻辑。麻烦!
- 测试同学,测试开始前,需要了解接口的逻辑,保证测试覆盖程度。所以在测试前或测试过程中,需要频繁向后端同学询问。麻烦!综上,这样的结果导致所有人大部分时间都在同步信息,真正的开发时间大大减少,整个团队效率下降。而本质的问题在于研发团队对接口逻辑的信息不对称。
如何解决信息不对称的问题?
同样是信息不对称的问题,在完成需求过程中,是以产品的需求文档作为工作的标准;在完成设计过程中,是以设计稿为工作的标准。那么在开发过程中,对于接口的逻辑,就是以 API 接口文档为工作的标准。
我不想写文档,我懒!
大多数记录文档的问题
我们工作过程中沉淀文档是如何完成的?每次版本迭代结束后,才把的新逻辑总结记录在文档里,后期维护文档的问题也不知道归谁管了,这样暴露出以下问题:
- 首先,记录文档没有对团队或公司短时间产生直接效益,属于长期收益项目,只有真正需要的时候,文档才会被关注,其他时间不重要(类似疫苗)。
- 其次,大家都有懒惰的时候,写文档这件事吃力不讨好,为什么要做?
- 即使没有文档,一般不会直接影响到 Leader 的工作。
记录文档的新概念
我们都认为文档要在项目或事情结束后再总结,但这也会进一步增加工作量。我们为何不在工作进行过程中就完成文档的编辑呢? 工作的输出物是代码也是文档!
填表最简单
相较于使用文字来总结逻辑,需要考虑大量的格式问题还有排版。如果像填表格一样,只需要填写重要信息,免去描述语句,对编辑文档和阅读文档都是根本性地减少了工作时间。
Apifox 的实际操作
填表
当一个需求下发后,我们需要先对接口,定义名称、字段,通过 Apifox,可以将讨论后的结果,以填表的形式,写入接口文档,如下图。包含该接口文档的【路径】、【说明】、【责任人】、【请求参数】、【返回值】等。
对于【请求参数】、【返回值】的数据结构部分,可以通过【JSON / XML 智能识别】,直接粘贴代码,自动形成数据结构,如下图。
对于【请求参数】、【返回值】的数据结构部分,如果是重复的参数,那么可以通过提前设置【数据结构】,然后在【请求参数】、【返回值】中引用,减少工作量,如下图。
上述信息写入文档时,不需要考虑格式和样式,就像填表格一样按顺序填入,文档就完成了。而且还支持【JSON / XML 智能识别】、【数据结构】,减少了大量的重复工作。
查表
现在通过 Apifox,查看原有接口逻辑,信息架构简单易懂,很快就知道请求参数是什么样的,返回值是什么样的,有几种返回样式,在文档中都有注明。不需要思考!
如果还有不清晰的地方,可以【运行】或查看【接口用例】,了解详细的接口运行详情,如下图。
或者也可以生成在线文档,对开发团队外的人员(如产品、测试)查看,如下图。
API 文档形成后,不需要再去翻代码,直接阅读在 Apifox 中简化的格式,可以快速获取信息,不再痛苦。
API 接口文档的价值
综上,API 接口文档在开发过程中的,解决的问题:
- 工作结束后,不需要再总结文档,不需要从头再写一遍了。
- 因为 Apifox 是云协同软件,所以沟通、评审不需要再来回发文件了。
- 前端/测试/产品不懂的地方,直接看文档,不需要打断后端的思考过程。
Apifox 的理念:节省研发团队的每一分钟
也许我们会觉某个功能和其他软件很像,但这些都不重要。重要的是我们会始终站在开发团队的角度思考,为提高开发团队的效率而努力,为此会不遗余力的完善我们的服务和软件功能,这一点是其他软件所不具备的。在提高开发团队效率这件事上,除了Apifox 软件、Api Hub 现在已经上线的产品,来支撑开发团队的协作;我们还会积极响应开发团队反馈和诉求。不单单只是工具层面的支持,未来还会输出一整套科学的、偏平的、现代的开发模式来支持开发团队更好的专注于业务,成就更大的事业。 节省研发团队的每一分钟!