技术开发 频道

SOA 建模之服务实施

    完成解决方案

    UML-to-SOA 转换并不产生完全的解决方案(至少现在如此)。这是因为将实现细节放到模型中的努力,将会比通过使用为此目的而创建的编辑器将它们放到特定平台上更加困难。这些也是没有被转换到 BPEL 的 UML 2 Activities 的一些特性。这些将被添加到未来发布的版本中。Rational Software Architec 中的 Help 中将提供在一个特定版本中将支持哪些功能的详细说明。

    典型的,WebSphere Integration Developer 将必须完成某些或者是下列所有的开发活动。

    如果在模型中没有提供用于不透明行为的 Java 代码,则添加之。即使 Java 代码在不透明行为的主体中被提供,它也是易于出错的,这是因为 Content Assist 和 Java 编译(目前)还没有同 Rational Software Architect 的建模功能集成在一起。
 
    为业务过程添加相关性。相关性指定了识别一个组成元素的实例所需要的信息,并且它尚不被 UML-to-SOA 转换所支持。它将在将来发布的版本中被支持。
 
    为人工任务创建一个用户接口(UI)。UML 建模器可能包括一个不透明操作的主体中的 JSP 或者 HTML。但是,如同 Java 源代码一样,这可能是不完全和不正确的。集成的开发器将希望使用 Human Task 编辑器、Page Designer、入口、或者其他工具来创建正确查看和感觉来完成应用程序 UI 的完全的人工任务。
 
    配置监控器模型。当前,UML-to-SOA 转换并不创建任何监控器信息来评价业务 Key Performance Indicators (KPIs),这些 KPI 可能已经作为服务和服务提供者的约束被进行建模了。集成开发器能够在 WebSphere Integration Developer 中使用 Monitor Model Editor 工具,配置那些被收集起来用于仿真更新和业务测量的数据。

    本系列总结

    我们总结了在 Rational Software Architect 中使用 IBM Software Services 规范的服务建模(请参见左上方的 More in this series)。第一篇文章,SOA 建模: 第 1 部分 服务识别,介绍了如何使用业务过程模型和服务协作,为一组服务应当如何被连接和设计从而实现某些目标指定需求合同。这些服务合同往往被用来指定什么必须被完成,从而达到目标。然后服务协作能够在识别那些提供真正业务价值的服务中发挥作用。

    SOA 建模: 第 2 部分 服务规范,显示了如何从提供者的角度对一个服务规范的细节进行建模。服务规范为潜在消费者决定一个服务是否适用于它们的问题,以及如果适合的话如何真正使用它,定义了必要的信息。服务规范还定义了一个服务的提供者要实现该服务都需要做什么。

    SOA 建模: 第 3 部分 服务实现 和 SOA 建模: 第 4 部分 服务组成,显示了如何设计和建模提供或者需求服务的组成元素,以及该服务操作是如何被实现的。它们还描述了服务提供者如何指示出它们完成的将服务提供者链接回到业务目标、过程和需求的合同。

    最后一篇文章描述了如何在 IBM WebSphere Integration Developer 所提供的 Web 服务平台上,通过使用 IBM UML-to-SOA 转换来实现服务。WebSphere Integration Developer 支持一个 SOA 编程模型,该模型同在 Rational Software Architect 中捕获的服务辨认、规范和实现设计相一致。通过使用 WebSphere Integration Developer,您能够完成服务编程,然后为人工任务、运行测试和配置您的 SOA 解决方案产生一个 UI。

    参考资料 
    学习
    您可以参阅本文在 develperWorks 全球网站上的 英文原文。
    由 Jim Amsden 撰写的 SOA 建模: 第 1 部分 服务识别,即本系列五部曲中的开篇之作,其内容关于基于面向服务的体系结构(SOA)的软件开发。(IBM? developerWorks?,2007 年 12 月)
    由 Jim Amsden 撰写的 SOA 建模: 第 2 部分 服务规范,即本系列五部曲中的第二篇文章。(IBM? developerWorks?,2008 年 1 月)
    由 Jim Amsden 撰写的 SOA 建模: 第 3 部分 服务实现,即本系列五部曲中的第三篇文章。(IBM? developerWorks?,2008 年 1 月)
    由 Jim Amsden 撰写的 SOA 建模: 第 4 部分 服务组成,即本系列五部曲中的第四篇文章。(IBM? developerWorks?,2008 年 1 月)
    由 Ali Arsanjani 撰写的 基于服务的建模和架构: 如何为你的 SOA 鉴别、指定和实现服务,关于 IBM Global Business Services 的面向服务的建模和架构(SOMA)的方法。(IBM? developerWorks?,2004 年 11 月)
    IBM Business service modeling,是由 Jim Amsden 撰写的一篇 developerWorks 文章(2005 年 12 月),文章描述了业务过程建模和服务建模之间的关系,获得两者的利益。
    使用模型驱动开发和基于模式的工程来设计 SOA,第 2 部分: 基于模式的工程,IBM develperWorks 指南系列四部曲的第二部分(2007年)。
    使用 Rational Software Architect 设计 SOA 服务,IBM developerWorks 教程系列四部曲(2006 年 - 2007 年)。
    用 Rational Software Architect 建立面向服务的体系结构(Service-Oriented Architecture)的模型,第 3 部分: 外部系统建模,IBM developerWorks 指南系列六部曲的第 3 部分(2007年)。
    为面向服务的解决方案建模,是 Simon Johnston 的一篇著名文章,文章描述了服务建模驱动面向软件服务的 UML Profile 以及面向 SOA 插件程序的 RUP 的开发方法。(developerWorks,2005 年 10 月)
    用于软件服务的 UML 2.0 Profile (UML 2.0 Profile for Software Services),也是由 Simon Johnston 撰写的(developerWorks,2005 年 7 月),文章描述了面向软件服务的 UML Profile,即一种允许对服务、面向服务的体系机构(SOA)、以及面向服务的解决方案进行建模的 UML 2.0 规范。该规范现在已经在 IBM Rational Software Architect 中被实现。
    由 Donald Ferguson 和 Marcia Stockton 撰写的 用于实现 Web 服务的 SOA 编程模型,第 1 部分: IBM SOA 编程模型简介 (developerWorks,2005年6月),描述了面向服务的体系结构(SOA)的 IBM 编程模型,它使得非编程人员能够创建和复用 IT 资产。该模型包括组件类型、配线、模板、应用程序适配器、统一的数据表示、和 Enterprise Service Bus (ESB)。这篇文章是关于 IBM SOA 编程模型和选择、开发、配置和推荐程序模型元素需求的内容的系列文章的开篇之作。
    服务数据对象(Service Data Objects) 单一化并且统一化了应用程序访问和操作不同种类数据源的方法。
    请参见 用于 Web 服务的业务流程执行语言(Business Process Execution Language for Web Services) 来了解更多关于 BPEL 1.1 规范的知识。
    订阅 developerWorks Rational 专区事实通讯。时刻关注 developerWorks Rational 的内容。每隔一个星期,您都将收到 Rational 软件交付平台最新的技术资源和非常好的实践的更新。
    浏览 技术书店 来获得更多技术主题的书籍。
    获得产品和技术
    下载面向 SOMA 方法的 Rational Unified Process 插件程序:IBM RUP for Service-Oriented Modeling and Architecture。您必须具备 IBM Rational Method Composer 来安装该插件程序。
    下载 RUP plug-in for SOA,使用 IBM Software Services Profile 对面向服务的 Rational Unified Process 插件程序进行建模。
    IBM SOA Sandbox IBM SOA Sandbox 提供了完全版本软件试验和 “在线试用” 主机环境(在此您能够探索指南并且获得体系结构的指导)的一种混合。
    下载试用版本:IBM Rational Software Architect V7。
    下载 IBM 产品评估版本,并且从 DB2?、Lotus?、Rational?、Tivoli? 和 WebSphere? 中获得应用程序开发工具和中间件产品。
    讨论
    查看 developerWorks 博客,并且参与到 developerWorks 社区 当中。
    Rational Software Architect、Data  Architect、Software Modeler、Application Developer 和 Web Developer 论坛:提出关于 Rational Software Architect 的问题。

0
相关文章