信息系统实践手记4-平台对接的一些思考

说明:信息系统实践手记系列是系笔者在平时研发中先后遇到的大小的问题,也许朴实和细微,但往往却是经常遇到的问题。笔者对其中比较典型的加以收集,描述,归纳和分享。

摘要:此文描述了笔者接触过的部分信息系统或平台之间的对接构型和情况,挂一漏万的总结分享之。

正文

系列随笔目录:信息系统实践手记 (http://www.cnblogs.com/taichu/p/5305603.html

作者:太初

转载说明:请指明原作者,连接,及出处。

1.什么是平台对接?

一般的信息系统有两种:一种是单套单功能的,一般比较专业,单独的安装在通用或专门硬件上,统一的用户接口(比如客户端)专门执行一个功能。它往往自己完成了数据的采集,计算,呈现,控制,反馈等内容。另一种,就是群件。信息系统中含有多个模块(一般以功能高内聚来区分模块),甚至多个平台(以一整套较为完整功能集合定义为平台)。如果是后一种多平台连接在一起的较大的信息系统,就一定会越到平台对接?为什么? 当然是一个合同中的信息系统的多个平台,一般都是多个厂家(公司)开发,互为第三方,合作完成整体功能。每个小部分(平台)必须按照某种规则和机制互相连接。这就越到了平台对接的问题。

2.平台对接要考虑哪些方面?

一般的,以自己负责的平台或者公司的平台产品角度来看问题,你会发现你的平台A,会需要对接平台B,平台C等等,那么需要考虑哪些方面呢?

  • 平台间的功能划分

    • 这往往是产品经理和方案经理出马的地方。研发部门搞出来的产品是有《FeatureList》(功能集合)的。拿着这些积木搭建起来若干方案Solution,也就是我方产品或平台提供的“功能边界”(SCOPE)了。搞清楚了自己的SCOPE,还需要了解其他几个第三方平台的“功能边界”SCOPE。
    • 等所有平台A,B,C等都划分清晰了,谁干什么,argue之后,定下,email发出留下证据,形成给用户的最终方案,由集成商牵头提交,并组织各厂商实施不同平台的部署和联调。
  • 平台间互通协议确定
    • 既然确定了功能边界,那么不同平台之间的互通就提上日程。需要大家坐在一起根据需要不同来制定互通的协议。
    • 一般的,各平台都有“系统专家(架构师)”,会参与讨论,集成商牵头,这个时候就看谁强势了。每个平台都希望不做或少做额外的开发,对方直接按照自己的协议或标准来对接自己的信令和数据,这是一个大家摆事实,讲道理的时间。但客观上还是可以有规则可以遵循。
  • 平台互通协议设计原则
    • 尽量站在自家平台的立场,企图改动最小,最方便,这是第一。
    • 尽量使用通用技术框架,比如国标GBXXX,国际标准H264,RTP/RTSP,SIP。这对以后联调,对接,抓包,分析,留证据等都有利,说得清。此其二。
    • 尽量不要临时尝鲜,找到一个不成熟的框架或协议,各个平台都不太懂,没领域专家,这样的事情绝对不能做,但往往不懂技术的领导会要求。此其三。
    • 其他情况等价的时候,尽量用简单的技术框架,因为对接是个麻烦事,意料之外的麻烦一定会发生(墨菲定律),能省则省,能减则减,此其四。
    • 遇到新情况,一定不要直接思考workaround的办法,想要绕过去,最后一定自己吃亏,就应在最初就将对接的困难摊在台面上,大家吵一吵,此其五。
    • 智慧的PM会建议,不要将工作量压在一个平台,欺负他为了赚钱而愿意屈服,你需要审核它的人力,能力,是否能按时交货,即便有合同保证,但客观上讲,研发是一个科学的过程,工作量的不均衡,不但容易造成不必要的“关键路径”,而且往往会导致整体失败。即便赔偿了,延期也是对整个solution的不利。此其六。
    • 余下的,技术上面的考虑,属于偏TECH方面,也有不少原则,但一般有法可依,有理可讲,下面再叙述。
  • 平台互通的开发和联调
    • 每个平台各自都会开发,也都会联调。永远记住,要提前准备好,尽快切入开发,做主动的催促者,不做被动的落后者。虽然催促者容易多花effort去协调,盯紧对方,但调测的过程是偏向自己的,能拿到主动,对方围着你头头转,你就拿到的“管理权柄”!
    • 准备好迎接错误,联调一定会出错,要有手段测试,审计,抓包,检查流程(逐级排查网元),查看信令,查看数据,无据可依不是专业的体现,也往往容易导致多方纠缠和推诿。一定要先发制人的给出证据,哪怕错了,不丢脸,积极推动,拿到“联调主动权”,让他人的人力围着你。
    • 调测完毕,主线合并代码后,一定要正式出包,现场复测!这个非常重要。因为往往有多个现场,第三方的一个平台也有多个版本,对方自己的版本管理也许会有问题,你自己的版本管理也往往会忙中出错,一定要复测,拿着版本号说话。
    • 还有太多经验教训,不一一列举。
  • 平台互通收尾
    • 联调完毕,其实还有很多事情要做。比如,技术总结,项目流程总结,版本收纳,分支和主线的合并,workaround的处理,遗留问题的处置。
    • 此联调OK的功能还要同步到主线或分支来提供其他现场的部署和升级。

3.平台对接实践经验分享

  • 项目经验

    • 掌握主动,一定要我方产品经理,方案经理,系统专家(架构师),项目经理,尽早切入讨论,哪怕是详细的技术solution研讨。
    • 清晰划分工作界面,产品scope,接口定义清晰,不武断,不专断,有好激烈讨论,这里最容易争执。
    • 采用自己熟悉的技术,兼容对方接受,平衡工作量。
    • 一定要确定接口人,确定时间,哪怕最后时间肯定会变化,开始不确定,最后变化的就没边没谱了!
    • 有些第三方就扔过来3个研发人员,都不管理,让我方PM自己管理,要记住,这算是好的情况,对方赖着不干活才是最麻烦。
    • 用《进度推进表》,《BUG跟踪表》等支持PM工作,一定要紧盯对方,拿到联调主动权。主动出击,牵头联调,保障自己平台不是拖后腿的。
    • 联调完毕,代码合并,版本记录,重新发布正式版本测试,一定要做细致,别一高兴,结果乱了。
  • 技术经验
    • 一般平台对接,信令要对接,数据也要对接。信令对接大都是传递数据结构,典型的是传递“设备列表”,这个情况太多了。怎么传递?方法很多。

      • 有直接读取对方DB的方法:快速,简单,直接,粗暴,不太建议,除非是兄弟产品可以“深度集成”,不然以后会有问题,对方的一个升版就导致不可预知的情况。
      • 接口对接法:这个是通常的办法,一般速度还可以,相对复杂,但是耦合度低,通用性强。对方即便升级,但需要维持接口不变化,而且联调测试方便。
      • 按标准互通:比如按照某领域的“GB国标”对接“设备列表”等信令信息, 那么就要大家吃透标准,经常互通,有些标准里面甚至有附加“自定义”字段,这些就是坑!一个不小心摔进去了,一定要经常研讨开会,互通进度。也可制定附加的技术接口和协议,作为变化的保障。
    • 对接平台除了信令,最多的还是数据。一般数据会量比较大,要求高速,实时,这对两边的平台都是考验。
      • 双方友好协商,无论对方是否专业,我方必须将专业的咨询分析结果呈报出来,互相讨论。
      • 要讨论数据的规律,出现的频率,峰值,规律,表现,时空特性,是否需要存储,数据在消费节点Px的一系列的行为。数据的发起和终止节点往往额外重要。
      • 选定好的数据结构,考虑安全和压缩等需要。
      • 考虑处理节点Px失效时候的解决办法,异常情况的考虑。
    • 还有很多是经验,找个靠谱的系统专家是关键

说明:如本文涉及相关专有名词或其他如有问题,请联系原作者。文章内容,仅供参考。

[END]

时间: 2024-11-02 14:21:42

信息系统实践手记4-平台对接的一些思考的相关文章

信息系统实践手记7-对接卡口平台细节

说明:信息系统实践手记系列是系笔者在平时研发中先后遇到的大小的问题,也许朴实和细微,但往往却是经常遇到的问题.笔者对其中比较典型的加以收集,描述,归纳和分享. 摘要:此文描述了笔者接触过的部分信息系统或平台之间的对接构型和情况,挂一漏万的总结分享之. 正文 系列随笔目录:信息系统实践手记 (http://www.cnblogs.com/taichu/p/5305603.html) 作者:太初 转载说明:请指明原作者,连接,及出处. 正文 在围绕地图(GIS)展开的应用中,需要接入很多第三方的平台

信息系统实践手记5-CACHE设计一例

说明:信息系统实践手记系列是系笔者在平时研发中先后遇到的大小的问题,也许朴实和细微,但往往却是经常遇到的问题.笔者对其中比较典型的加以收集,描述,归纳和分享. 摘要:此文描述了笔者接触过的部分信息系统或平台之间的对接构型和情况,挂一漏万的总结分享之. 正文 系列随笔目录:信息系统实践手记 (http://www.cnblogs.com/taichu/p/5305603.html) 作者:太初 转载说明:请指明原作者,连接,及出处. 1.CACHE是啥? 最近一直在弄scala,Spark,Pyt

信息系统实践手记6-JS调用Flex的性能问题一例

说明:信息系统实践手记系列是系笔者在平时研发中先后遇到的大小的问题,也许朴实和细微,但往往却是经常遇到的问题.笔者对其中比较典型的加以收集,描述,归纳和分享. 摘要:此文描述了笔者接触过的部分信息系统或平台之间的对接构型和情况,挂一漏万的总结分享之. 正文 系列随笔目录:信息系统实践手记 (http://www.cnblogs.com/taichu/p/5305603.html) 作者:太初 转载说明:请指明原作者,连接,及出处. 正文 在笔者实践中,越到有些情况下(比如开发GIS地图应用),客

信息系统实践手记8-两模块通讯的一些事

说明:信息系统实践手记系列是系笔者在平时研发中先后遇到的大小的问题,也许朴实和细微,但往往却是经常遇到的问题.笔者对其中比较典型的加以收集,描述,归纳和分享. 摘要:此文描述了笔者接触过的部分信息系统或平台之间的对接构型和情况,挂一漏万的总结分享之. 正文 系列随笔目录:信息系统实践手记 (http://www.cnblogs.com/taichu/p/5305603.html) 作者:太初 转载说明:请指明原作者,连接,及出处. 正文 在信息系统开发和对接的过程中,免不了要遇到两个模块之间的消

信息系统实践手记3-按业务展开的代码剥离

说明:信息系统实践手记系列是系笔者在平时研发中先后遇到的大小的问题,也许朴实和细微,但往往却是经常遇到的问题.笔者对其中比较典型的加以收集,描述,归纳和分享. 摘要:介绍一下业务相关的代码优化(比较抽象,偏系统分析和设计). 正文 1.问题出现 如前面2次手记()提到的这个客户端,毛病不少,要开发的面面俱到,毫无瑕疵,难而又难.这次我们又遇到了其实可以泛泛的归为“面向方面的编程”的问题. [END]

JSONP平台对接代码备份

<script type="text/javascript">$(function(){  $.ajax({   url:"http://192.168.11.97:8025/battle_summary?player_guid=1000000",   async: false,   dataType:"jsonp",   jsonpCallback:"summary",   success:function(su

阿里经济体大数据平台的建设与思考

本文内容根据演讲视频以及PPT整理而成. 双十一!=11.11 首先从双11说起,双11已经成为阿里巴巴最大的单日促销活动.双11活动可能对于消费者而言只是一天而已,但是对于阿里巴巴和数百万商家而言,却是一个非常长线的工作.站在阿里巴巴的角度来看双11,其实无论是从业务线还是技术线,背后都存在着很多的思考. 从“人.货.场”的角度看待双11.首先,对于“人”而言,双11需要回答什么样的消费者会看什么样的商品,以及每个人看到的商品是什么样子的.“货”则是对于商家而言的,商家需要知道在这次双11中,

线下线上对接的一种思路(本地erp与线上电子商务平台对接)

目前很多公司都希望本地的ERP能够与线上的电子商务平台进行对接. 但是很多的线下ERP系统商不愿意修改代码来做相应的对接,或者觉得太话费成本. 而对于企业本身,又会有很多的特殊需求. 下面略述一家进口商品企业的线上线下整合方案. 线下系统使用深圳思迅的门店管理系统,使用VS.Net平台开发,数据库使用MSQL2005,BS结构(内部管理用)+CS结构(门店POS开单),局域网部署 线上系统使用本地的一家电子商务平台提供商的商城系统(通过该平台,让分销商可以直接采购下单,查询库存,以及及时下载最新

所说这几天遇到的.net api 和java平台对接遇到的坑及技术总结

这两天 一直和京东对接接口,我们用.net api 提供接口,对方用java调用,本来没什么问题,但是对方对数据安全要求特别严,要验签,于是噩梦开始了. 1.在传输的时候,约定传输格式: HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url);//+ "?RequestData="+ param request.Method = "POST"; request.ContentType = &qu