如何做好接口

来源:互联网 发布:surface linux 编辑:程序博客网 时间:2024/06/06 04:32
2.1     什么是接口
要做好接口,首先要知道接口是什么。实施过程中的接口是指通过技术手段,实现两个或多个系统之间数据交互、数据共享一种解决方案。
2.2     接口形式
接口的三种形式:
第一种:对方提供数据给我方系统。
HRPLUS接口使用属于第一种情况,我方通过对方提供的数据库用户,对表中数据直接进行读取。
第二种:我方提供数据给对方系统。
第三种:前两种的结合,包括数据的取得与回传。
CAMS接口是第三种情况,接口当中我方首先要得到CAMS系统中的单据数据,在控制系统中走完付款流程后,将流程中产生的财务审批相关的数据再回写到CAMS系统当中,是双向接口。

2.3     接口5W1H
做系统接口过程就是解决问题的过程,将5W1H分析法用在接口分析上,从何因、何事、何地、何时、何人、何法六个方面提出问题进行思考,可帮助接口需求人员更加细致的了解接口过程中需要完成的工作。
此种分析法可作为接口调研设计过程中的模板,解决好5W1H,是做好接口的保证。
2.3.1   何因
做正确的事,再正确的做事”,在客户提出要做接口时,首先想到的是这个接口不是怎么去做,而是是不是有必要去做。
对于客户的接口要求,不要立刻答应,当然也不能立刻回绝,需和客户经过详细的沟通,并参考开发部门的意见后再做决定。对于不合理的接口需求,应通过 引导客户的方式,尽量不要做。比如和控制系统基本上没有关系,或是没有包含在当初的招标文件当中以及合同当中,此类需求需尽量通过沟通说服等方式解决。
另有些接口可以用系统现有功能替代实现,并非一定要定制开发,实施人员可建议一些较为容易的实现方式,如系统已有的数据导入导出方式,对于导入导出实在满足不了需求的,再做定夺。
2.3.2   何事
“何事”主要针对于取数的对象,即客户需要将什么系统的什么数据取到我方系统中,此时需要关注的问题是这些数据在控制系统当中的用途,如何与系统现有功能进行结合。
以 CAMS接口为例,CAMS系统不包含审批流程控制功能,故客户希望将CAMS中的单据数据传递到控制系统当中进行流程的审批。客户的此种需求就 涉及到与控制系统中控制单据这个功能模块进行结合,进行分析时应考虑到控制系统对单据的格式要求以及数据要求。此外,客户需要已有的基础数据如单据的格 式、字段信息、审批流程作为接口方案设计的参考数据。
2.3.3   何地
“何地”不是指具体的地点,而是指从什么服务器获取数据,取数后存放在什么服务器。
如HRPLUS接口进行取数时,根据HRPLUS供应商提供的数据库账户,将其系统中查询到的数据存放到我方系统的临时表中,然后再做处理。
CAMS接口是通过WEBSERVICE进行数据传递,这里的“何地”是指WEBSERVICE地址。
2.3.4   何时
“何时”指什么时间进行数据的传递,可分为实时与定时:
实时接口:指当用户执行触发特定事件后执行接口程序,进行数据传递,如CAMS接口,当用户点击单据回传按钮后,触发接口程序,将带有付款审批信息的CAMS单据回传到CAMS系统。
定时接口:通常用做数据的定期同步,如HPRLUS接口每天晚上9点将最新HRPLUS数据同步到控制系统当中。做需求时需根据用户实际情况进行定时时间的确定,一般是凌晨进行。
2.3.5   何人
“何人”指哪一方取数,可分为我方与他方,下面结合数据提供方式进行说明。
按照数据提供方式分为主动取数与对方推送数据两种:
 
主动取数:l  主动取数指对方提供数据源,我通过读取数据源数据的方式取得数据,又可分为直接取数与间接取数两种。
 
直接取数:HRPLUS接口中,HRPLUS系统提供其数据库中具有特定查询权限的数据库账户,我方通过对方提供的数据查询语句取得数据,就是直接取数。
间接取数:由于不是所有系统都愿意开放其数据库供他方系统访问,有些供应商只提供如WEBSERVICE之类的数据传递中介,我方可通过访问其WEBSERVICE,取得数据,这就是间接取数。
 
对方推送:l  对方推送我方提供可以接受数据的WEBSERVICE方法供他方调用,他方供应商可调用此 WEBSERVICE将数据推送到我方系统。在CAMS接口中,我方提供一个接受数据的WEBSERVICE方法,CAMS方在系统中有相关单据生成时, 调用此WEBSERVIEC,将表单数据传递至我方。
 
2.3.6   何法
何法主要指取得数据后的处理,需结合现有系统功能进行细致分析。
实施人员在充分挖掘客户需求的基础上,及时与开发部门进行沟通反馈,由于开发人员对系统设计层面的知识有更深的了解,在设计过程中更加容易发现问题。
以 CAMS接口为例,控制系统单据的预算由单据包含的维度成员来确定,当CAMS中单据向控制系统单据进行转换时,需要将CAMS系统中的维度,对 应到控制系统当中。由于控制系统中单据涉及六个维度,CAMS系统单据只包含两个维度,故需通过对应关系与设置默认值的方式,将CAMS中两个维度的单据 变为控制系统中六个维度的单据。
另外CAMS单据中部分字段是控制系统中没有的,设计表单时通过自定义字段,并在后台数据库中,将CAMS传递过来的列名与控制系统中的列名进行对应关系设置,将CAMS中的字段信息与控制系统的字段对应起来。
再 举个HRPLUS例子,接口调研时需要客户提供需要传递的字段信息,如员工姓名、登录名、职级、公司等,得到这些字段后,便要开始分析这些字段在 系统当中的作用,如HRPLUS系统中的登录名要转换成控制系统中的登录名。由于HRPLUS系统中公司与部门的层级关系,在控制系统中是项目与部门的层 级关系,还需有对应关系表,将二者对应起来。此外当HRPLUS中人员变动时,在控制系统中人员的相应信息,如职级信息,也要跟着变动,此时要考虑到是否 对系统流程产生影响,这就需要和开发部进行及时的沟通。
此过程是接口中最为复杂的部分,需要协调各方人员进行沟通,故在时间安排上此步骤也应当是最多的。沟通过程中涉及的细节问题需通过邮件与客户确认,并记录的相关文档当中。
原创粉丝点击