转载于:
xstsky的专栏
原文地址今天学习了IBM中国软件开发中心SOA设计中心任志宏先生关于“同IBM合作,构建SOA应用——如何使用IBM SOA相关技术、产品和服务实现一个典型的业务场景”的讲座内容,整理其框架如下:
SOA价值
1. 建立集中的企业服务总线,屏蔽具体的服务实现,保持IT系统的柔性;
2. 引入业务规则作为服务实现方式,保证系统灵活性的同时,提高工作效率;
3. 流程自动化,提供实时的流程监控和管理。
服务建模及流程建模
SOMA——IBM用于服务建模和架构设计的方法学,根据此方法学,业务组件、一级业务流程和业务目标是服务建模的三个主要输入
SOMA的执行:
(一) 服务发现
步骤:
1. 从一级流程逐步分解,找出各个层次的服务候选者;
2. 分析关键业务指标,验证已有服务候选者以及发现遗漏的服务候选者;
3. 分析现有系统,发现遗漏的服务候选者,并为服务实现提供依据;
服务发现的三个步骤获得服务候选者的组合以及服务暴露(???)的决定,利用输入的业务组件将服务候选者分类,为服务规约和服务实现做准备。
(二) 将新发现的服务发布到Service Registry,在企业范围内实现统一的服务管理。
(三) 利用Websphere Business Modeler进行流程建模,从业务流程、组织结构以及关键业务指标等方面,对业务流程进行全方位建模。
(四) 利用Websphere Business Modeler进行模拟,在实现流程之间发现潜在业务瓶颈,并及时进行优化,降低项目实施的风险和成本
服务实现及架构
要注意的几点:
(一) 从Service Registry中获取可重用的服务的相关信息,直接应用在本项目中,避免重复开发,降低开发和维护的成本;
(二) 基于服务规约和现有系统分析,确定服务实现的决策;
(三) 架构设计:将已有服务、新建服务以及服务中介按照SOA参考构架进行架构设计;
(四) 人工任务用统一的服务接口定义人工活动,提供重用人工服务的可能性
(五) 流程服务提供灵活、方便的服务组装模式,使得企业能够最大可能地重用现有服务,并快速响应需求的变化
(六) 业务规则将易变的业务逻辑从代码中分离出来,便于快速响应业务需求的变化
(七) 基于Websphere ESB的服务中介能够拉近服务提供者和请求者的差距,并提供虚拟化服务
(八) 商业化的适配器以及适配器框架采用标准化的方式解决不同应用之间的联通性问题,采用保护企业投资的方式解决复杂的集成问题
以服务为中心的开发与集成
通过使用Websphere Integration Developer,从服务模型直接映射到SOA编程模型,实现模型与实现的完美统一。
将流程从Websphere Business Modeler导入到Websphere Integration Developer,自动实现流程服务以及相关的业务对象、接口定义,提高了开发效率,并保证了模型和实现的统一。
在Websphere Integration Developer中实现人工任务,统一的安全机制确保人工服务的权限的控制,客户端设置支持工作人员通过Web页面或者手持终端设备等方式参与自动化流程。
在Websphere Integration Developer中实现基于业务规则的服务,将易变的业务逻辑从代码从代码剥离成业务规则,从工作效率和质量两方面使系统可以更加灵活的应对变化。
在Websphere Integration Developer中为服务创建中介,拉近服务提供者与请求者之间的差距,将两者的具体实现解耦。
通过使用Websphere Integration Developer,在所依赖的服务并未实现的情况下,利用集成测试客户端独立测试服务组件,从而实现快速的迭代开发。
服务部署及管理
Websphere Process Server为流程、人工任务、业务规则等服务以及服务中介提供稳定、高效的运行环境。
完成服务部署后,将新实现的服务状态设置为可用,使得该服务可以在企业范围内得到重用。
基于建模阶段定义的业务指标模型和运行环境的业务事件通知,Websphere Business Monitor实时监控业务流程运行情况,并将流程运行情况以关键业务指标的形式反馈给Websphere Business Modeler,从而实现一个完整的业务流程优化周期。