谈谈API的接口设计
2020-12-30
随着各行各业的精细化发展,应用于各行各业的软硬件系统也呈现专业化、垂直化的发展趋势,一些业务场景极有可能需要多套系统配合来完成,那么系统之间进行集成对接,是摆在企事业单位及各类系统提供商必须解决的课题。
呼叫中心行业也不例外,常见与CRM系统、ERP系统、OA系统及客户的业务流程系统进行对接。天天讯通经过多年的生产实践,API接口相对完善,公共的API接口能满足绝大多数业务场景。但在实践中,天天讯通发现不需要配合独自完成对接的只占一小部分,更多的伙伴们需要厂家的技术支持配合联调,甚至针对业务流程进行流程定制。
那么,API接口到底该怎么设计才好呢?
一般情况下,绝大多数系统开发工程师,对API接口的关注点重心放在了功能实现上,因为功能实现是最容易理解的,对API对接的双方均如此。考验厂家的,并不是功能点实现,而是功能点的抽象设计是否合理,否则,一个伙伴一个功能点实现方式,多个伙伴将引入多种实现方式,长期看,维护开销将是不可承受的。
一般的,功能点之外,API接口设计比较容易被忽略的部分是可维护性设计,除接口的可维护性之外,还有对功能点的维护。接口的可维护性,主要是体现在接口要设计前后兼容、扩展预留设计;功能点的维护,主要体现在维护特性,例如功能点的配置、增删改查、日志及记录文件的维护管理等,功能点的维护部分,开发工作量上可能成倍高于功能点设计,一般的,需要根据管理操作的频度、开发代价等做出平衡。
API接口相对较难的地方,主要是对于异常情况的处理;既要考虑业务流程的异常,还要考虑软硬件环境、网络传输、安全验证等方面出现异常时进行合理的处理,而往往针对这些异常的处理又显得十分必要,如果出现异常将导致经营上的不小损失,例如用于计费的话单出现重复或丢失,而这类问题,一种可能是网络传输不可靠,其导致的关键数据出现重复、丢失时,如何在两套系统同步信息,对双边系统都是一个考验,特别是在业务繁忙的系统,处理方式的不同对系统的影响也将天差地别。
除上述一些因素外,依据场景的不同,在实践中往往还会对API接口的性能、安全等方面做出特别考虑,均需要做好设计,满足场景需求。
在多年的生产实践中,天天讯通在系统产品上对接过各行各业的多种业务系统,积累了丰富的API对接经验,也将一如既往贴近使用场景,做好API设计,做好产品&服务。
那么,API接口到底该怎么设计才好呢?
一般情况下,绝大多数系统开发工程师,对API接口的关注点重心放在了功能实现上,因为功能实现是最容易理解的,对API对接的双方均如此。考验厂家的,并不是功能点实现,而是功能点的抽象设计是否合理,否则,一个伙伴一个功能点实现方式,多个伙伴将引入多种实现方式,长期看,维护开销将是不可承受的。
一般的,功能点之外,API接口设计比较容易被忽略的部分是可维护性设计,除接口的可维护性之外,还有对功能点的维护。接口的可维护性,主要是体现在接口要设计前后兼容、扩展预留设计;功能点的维护,主要体现在维护特性,例如功能点的配置、增删改查、日志及记录文件的维护管理等,功能点的维护部分,开发工作量上可能成倍高于功能点设计,一般的,需要根据管理操作的频度、开发代价等做出平衡。
API接口相对较难的地方,主要是对于异常情况的处理;既要考虑业务流程的异常,还要考虑软硬件环境、网络传输、安全验证等方面出现异常时进行合理的处理,而往往针对这些异常的处理又显得十分必要,如果出现异常将导致经营上的不小损失,例如用于计费的话单出现重复或丢失,而这类问题,一种可能是网络传输不可靠,其导致的关键数据出现重复、丢失时,如何在两套系统同步信息,对双边系统都是一个考验,特别是在业务繁忙的系统,处理方式的不同对系统的影响也将天差地别。
除上述一些因素外,依据场景的不同,在实践中往往还会对API接口的性能、安全等方面做出特别考虑,均需要做好设计,满足场景需求。
在多年的生产实践中,天天讯通在系统产品上对接过各行各业的多种业务系统,积累了丰富的API对接经验,也将一如既往贴近使用场景,做好API设计,做好产品&服务。
- 上一篇:如何选择电销型呼叫中心
- 下一篇:如何选择客服型呼叫中心