加载中…

加载中...

个人资料
人月神话
人月神话 新浪个人认证
  • 博客等级:
  • 博客积分:0
  • 博客访问:4,204,775
  • 关注人气:5,928
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
相关博文
推荐博文
正文 字体大小:

SOA-ESB的需求分析(转载)

(2010-09-01 23:02:30)
标签:

esb

需求

it

分类: 转载文章
需求分析阶段是梳理项目中相关功能需求和非功能需求的重要步骤,它是整个项目成败的关键。在这个阶段我们将从企业业务需求出发,梳理端到端的跨系统业务流程;基于业务流程,依据科学的方法论进行服务鉴别;由服务列表出发,梳理服务的消费和提供关系。

然后根据 SOA 的最佳实践,定义服务的接口,包括服务的 Schema 描述,字段的类型,编码的规则;依据服务的消费-提供关系,梳理 ESB 中的服务映射和转换规则和策略。概括而言,我们需要从功能性和非功能性两个方面来进行 ESB 的需求分析。

针对 ESB 的功能性需求,我们要侧重了解以下方面的问题:

  • 该系统的对外接口是向外调用 (OutBound),被别人调用 (Inbound),还是二者都有;
  • 接口的实时性要求,是实时的还是批量的,还是二者皆有?
  • 接口的调用方式,是同步的还是异步的,还是二者皆有?
  • 应用系统所运行的操作系统平台。
  • 应用系统本身的编程语言?C/C++, Java…..
  • 这些系统现有接口的情况,是否已经可以提供对外接口,接口的方式是什么,包括接口的通讯协议是什么,HTTP/MQ/Socket/ 其它?
  • 接口的数据格式是什么,XML/ 自定义格式 / 其他行业标准格式?接口的编程语言是什么,Java/C/C++?如果本身不能提供接口,那么要做接口开发时有什么要求或限制条件?
  • 这些应用后台数据库的情况,数据库能否直接访问?
  • 每个应用跟其他应用交换数据时,源数据格式和目的数据格式,比如从文本格式转换为 XML 格式?
  • 交易特征:哪些处理要采用两阶段提交;是否需要多个消息组成一个交易;是否要保证消息之间的处理顺序;
  • 适配器的情况:对于一些特殊系统,是否已经具备现成的适配器;适配器是单向的还是双向的;
  • 消息通信的模式:是 Send and Forget、Request/Reply 还是 Pub/Sub?

针对 ESB 的非功能性需求,我们要确认:

  • ESB 平台的扩展性和高可用性需求,包括 HA 和集群等;
  • ESB 平台的性能需求,主要包括系统间数据交换的频率,要交换的数据的大小 ( 消息大小将直接对效率造成影响 );峰值时候对 ESB 数据吞吐量、响应时间的要求等;
  • 哪些交易要保证数据传输的高可靠性;
  • ESB 平台的可管理性需求,如服务的生命周期管理,ESB 平台的维护和管理;如果企业已经设立了 SOA 管控方面的规范,那么要遵从规范的制约,比如要考虑是否有规定的命名规则,企业是否有企业级的数据规范和底层通讯协议的规范等;
  • 安全性方面的要求:是否采用 SSL 传输加密,是否对消息进行加密/解密处理等;
  • 错误处理和日志以及平台本身的运行监控等方面的要求等。

0

阅读 收藏 转载 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 电话:4000520066 提示音后按1键(按当地市话标准计费) 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

新浪公司 版权所有