IBM的SOA方法论之一——五个切入点和八个场景-程序员宅基地

一、什么是SOA:

        面向服务的体系结构(Service-Oriented Architecture,SOA)是一种 IT 体系结构风格,支持将您的业务转换为一组相互链接的服务或可重复业务任务,可在需要时通过网络访问这些服务和任务。当在战略业务目标的引导下进行 SOA 实现工作时,可确保对业务进行积极转换,并能够实现 SOA 的好处:IT 与业务的一致性和IT 资产的最大化重用。

二、五个切入点:

 

       IBM 定义的五个切入点能帮助您和您的业务实现预定义的 SOA 解决方案,从而从中获益。这些切入点同时受到业务需求(人员、流程和信息切入点)和 IT 需求(连接性和重用切入点)的驱动。以下是五个切入点的一般描述信息:

  • 人员:SOA 的这个切入点关注用户体验,以帮助生成调用和实现更好的协作,从而获得一致的人员与流程交互,提高业务效率。例如,通过使用 SOA,可以创建基于服务的 Portlet 来提高此协作。
  • 流程:流程切入点可帮助企业了解其业务中发生的情况,从而支持其对现有业务模型进行改进。通过使用 SOA,可以将业务流程转换为可重用且具有灵活性的服务,从而改进和优化这些新流程。
  • 信息:通过使用 SOA 的这个切入点,能以一致而可见的方式利用公司中的信息。通过在所有业务领域提供这个一致而受信任的信息,可促进企业各个领域的创新工作,从而更为有效地进行竞争。通过使用 SOA,可以更好地控制信息,而且通过信息与业务流程的结合,可以发现很多有意义的新关系。
  • 连接性:利用连接性切入点,可以有效地连接基础设施,从而将企业中的所有人员、流程和信息整合到一起。通过在服务间和整个环境中实现灵活的 SOA 连接,可以获取现有业务流程并在不需要太多工作的情况下通过其他业务通道提供此流程。甚至还能以安全的方式连接防火墙外的外部合作伙伴。
  • 重用:通过 SOA 重用服务,可以充分利用企业中已经存在的服务。通过对现有资源进行构建,可以简化业务流程,在整个企业内确保一致性并缩短开发时间。所有这些将能帮助您节约大量的时间和资金。另外,还能减少服务中的功能重复,并能获得使用企业中为大家所熟悉的经过验证的核心应用程序的好处。

      其实,对于对于任何一个IT系统来说,人员、流程、信息都是IT系统不可缺少的部分,换句话,可以说:人员、流程和信息是IT信息的三要素。而对于后两个,也就是连接性和重用其实是SOA的本质属性,因为没有连接性和重用性就不是一个基于SOA架构风格的系统了。

三、SOA的八个场景:

       IBM 技术专家在参考实际的客户经验和多年的积累的情况下,认识到业务部门在设计和实现 SOA 解决方案的过程中经常会遵循多个常见的场景。通过定义这些场景,IBM 为您提供了预定义的真实方法,帮助实现 SOA 解决方案。每个场景都提供了经过测试和集成的产品或实现,用于实现此场景。因此,可以将这些场景映射到您公司具体的目标和需求,从而很好地确定自己如何实现这些好处。

  • 服务创建:创建灵活的基于服务的业务应用程序。新的面向服务的应用程序将业务行为作为服务公开,同时还能重用作为服务公开的业务逻辑。 服务是自包含的可重用软件模块,各自执行特定的业务任务。它们具有定义良好的接口,独立于所运行的应用程序和计算平台。通过服务创建实现 SOA 重用后,JK Enterprises 将实现以下价值:
    • 重用现有服务比从头编写新应用程序开销要小些。
    • 重用经过验证的应用程序可降低风险,还能缩短进入市场所需的时间。
    • 通过大幅度使用经过验证和测试的常用功能代码,可以缩减维护开销。

        创建服务的一种方式是对启用服务的现有资产使用称之为间接公开的技术。例如,对于启用服务的帐户查询流程,公司将其帐户应用程序作为简单对象访问协议(Simple Object Access Protocol,SOAP)/HTTP Web 服务公开(作为会话 Bean 实现)。此方法使用 CICS 事务,可通过 CICS 的适配器进行访问。在这种情况下,使用者和提供者位于防火墙内。还可以直接从头创建新服务或者通过查找和使用其自己 IT 基础设施之外的服务来创建服务(这需要使用共同认证的 SSL 实现安全性)。

  • 服务连接性:无论何时何地使用何种工具,都能使用中间层服务网关或总线让各种应用程序访问核心服务集,从而通过无缝的消息和信息流将企业中的人员、流程和信息连接起来。  将现有 IT 应用程序作为服务公开,并通过访问外部服务和创建新服务来弥合差距。现在要将这些服务彼此连接,甚至连接到整个企业。这将通过服务连接性场景(此场景是通过连接性切入点着手的典型方法)的实现方面完成此工作。
            通过服务连接性实现 SOA 连接性,从而实现以下价值:实现自主构建的或传统连接性方面的成本节约;通过扩展 IT 资产(而不是重复构建),可消除冗余性;通过新业务通道和设备公开相同流程,从而提供安全而一致的用户体验;通过基于服务的托管连接增强业务合作关系。

        将通过实现企业服务总线(Enterprise Service Bus,ESB)在其系统中实现连接性;ESB 能提供所需连接性,而且其成本低于传统连接性的实现成本。将能够通过 ESB 以安全而且可扩展的方式连接到整个外部和内部基础设施。

服务创建和 SOA 连接性将为 JK Enterprises 提供更大的业务灵活性和稳固的基础,从而更便于进行更多的 SOA 项目。ESB 对业务部门内的服务、应用程序和资源进行统一和连接,允许软件的连接在不同平台上并行进行,并使用各种编程语言。因此对所有信息在企业服务总线 (ESB) 中的传递情况进行建模,确定谁在何时需要哪些信息就非常重要和必要。

  • 交互与协作服务:必须通过多种设备(如浏览器、PC 和移动设备)向人类用户提供一个或一组服务。交互与协作服务还可通过将这些服务聚合为视图,以交付信息并在业务流程的上下文进行交互,从而提高人员工作效率。
  • SOA 所支持的业务流程管理:业务流程管理是将软件功能和业务专业知识相结合来加速流程改进和促进业务创新的学科。

    业务流程管理是一个学科,将结合使用用于控制组织跨功能的核心业务流程的工具和方法。其重点是将整个组织的资源部署定向到能够实现客户机价值的高效流程中,从而实现战略业务目标。BPM 的核心原则之一是进行持续改进,从而不断地提高产生的价值和保持市场竞争力。

    SOA 所支持的 BPM 允许对业务流程进行更改,而不用对基础技术进行再工程;同时它还允许在不影响业务流程的情况下对技术基础设施进行更改。JK Enterprises 可以通过以下方式利用业务流程管理场景。提供将其流程可视化并提供相应的决策点,这是流程管理的基础。通过建模这些流程, 可以标识其流程中的瓶颈、连接断开以及效率低下的情况。通过这样,将能够快速地确定有待改进和实现自动化的区域。

  • 作为服务的信息:“作为服务的信息”可在企业内作为可重用服务访问复杂的异类数据源。
  • SOA 设计:通过一组角色、方法和构件保持业务设计建模和 IT 解决方案设计的一致,以提供一组供优化的显式业务流程和用于组合及集成的服务。 SOA 设计是减少成本和提高公司的 IT 集成有效性的关键因素。在通过创建恰当的服务来实现 SOA 解决方案之前,都必须首先建模和定义用于创建主要新组件和重用现有组件的接口。

    IBM 通过以下产品可帮助您开始实现此 SOA 场景:

  • SOA 治理:建立并执行 SOA 开发与运行时流程。定义策略、流程和工具来监视服务的归属、使用人、使用方式及提供时间。 理包括两个方面:
    • 建立责任、授权和通信链,以对人员进行权利分配,确定谁有权进行哪些决策
    • 建立度量、策略和控制机制,以支持各个人员执行各自的角色任务和履行相关职责。

    治理经常与管理混淆,但二者之间通常存在以下差异:

    • 治理决定谁具有决策的权力和责任,为决策提供框架。
    • 管理是进行决策和实施决策的过程

    因此治理讨论应该如何进行决策,而管理进行决策和执行决策。

    任何 SOA 治理模式必需适应企业的 IT 治理,IT 治理涉及以下内容:

    • 建立与 IT 关联的决策权利
    • 建立用于度量和控制 IT 决策及执行的机制和策略

    即,IT 治理讨论的是谁负责 IT 部门中的什么事务以及部门如何知道这些职责得到了很好的执行。

    SOA 向控制添加了以下几个独特的方面:

    • 充当 IT 控制的扩展,重点关注服务的生命周期,以确保 SOA 的业务价值
    • 确定谁应该监视、定义和授权对企业内现有服务的更改
  • SOA 安全性和管理:作为 IT 服务管理(IT Service Management,ITSM)服务一部分的发现、监视、保护、供应、更改和生命周期管理工作。 保护 SOA 服务需要对策略进行评估和做出相关决策,并需要对这些策略进行管理,以保证其执行。

之前讨论的五个 SOA 切入点直接映射到(即具有一对一关系)本列表中的前五个场景。(例如,重用直接映射到服务创建,而连接性直接映射到服务连接性。)我们还将讨论其他 SOA 场景,这些场景均以上面的五个切入点为基础。即 SOA 设计、SOA 治理与 SOA 安全性以及管理。

转载于:https://www.cnblogs.com/dadadechengzi/p/9549404.html

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_30598225/article/details/98505528

智能推荐

python使用requirements.txt安装库,跳过错误_pip install requirement 忽略错误-程序员宅基地

文章浏览阅读8k次,点赞7次,收藏11次。1.安装pipsudo apt-get install curlcurl https://bootstrap.pypa.io/get-pip.py -o get-pip.pysudo python get-pip.py #安装python2的pipsudo python3 get-pip.py #安装python3的pip2. 生成requiremet.txt#将A环境的库..._pip install requirement 忽略错误

assert文件夹 设置android_Android Studio增加assets目录、raw目录-程序员宅基地

文章浏览阅读376次。assets与res/raw不同assets目录是Android的一种特殊目录,用于放置APP所需的固定文件,且该文件被打包到APK中时,不会被编码到二进制文件。Android还存在一种放置在res下的raw目录,该目录与assets目录不同。注意点:1、 assets目录不会被映射到R中,因此,资源无法通过R.id方式获取,必须要通过AssetManager进行操作与获取;res/raw目录下的..._安卓assets中如何建多级目录文件夹

maven-compiler-plugin插件指定编译-程序员宅基地

文章浏览阅读663次。最近拿到一个maven系统,需要使用jdk1.8的环境才能运行(公司开发使用jdk1.7),于是下载、安装jdk1.8。 安装完成之后(本人使用idea工具),打开module settings,设置里面的Modules->Dependencies->module sdk为安装好的1.8版本,同时还得设置Modules->Dependencies->sources..._maven-compiler-plugin 只编译指定类

SharedPreferences 用法详解_sharedpreferences用法-程序员宅基地

文章浏览阅读1.4k次。SharedPreferences 是Android平台给我们提供的一个轻量级的存储类,使用非常简单,能够轻松的存储数据和读取数据,特别适合用于保存软件配置参数。SharedPreferences只能保存简单类型的数据,例如:String、int等。一般会将复杂类型的数据转换成Base64编码,以字符串的形式保存。SharedPreferences背后是用xml文件存放数据,文件存放在/data/..._sharedpreferences用法

解决Github单个文件100M以下的限制_githubdesktop 如何设置单个文件的最大值-程序员宅基地

文章浏览阅读2.5k次。Github限制器前几天跟着教程用Unity做了个小游戏,身为程序员那必须上传github啊。于是轻车熟路clone个空项目,放入文件准备push,结果折腾几次都push失败,百度一番后发现github对上传的文件大小有限制:github 限制在1G以内,单个文件超过50M会警告,超过100M会阻止最先查到的解决办法是自己修改大小限制,命令是这样的:git config http.pos..._githubdesktop 如何设置单个文件的最大值

Ubuntu18.04使用make编译安装LLVM10_ubuntu 安装llvm 10-程序员宅基地

文章浏览阅读113次。时,安装到97%报各种bug(collect2: error: ld returned 2 exit status tools/lli/CMakeFiles/lli.dir/build.make:154: recipe for target ‘bin/lli’ failed make[2]: *** [bin/lli] Error 1)环境:WSL2 Ubuntu18 gcc7.5。,把ninja换成make。bug 2:swap空间不够。可能遇见的bug和应对措施。安装:LLVM 10。_ubuntu 安装llvm 10

随便推点

分析所测的音视频需求_音视频测试如何做需求分析-程序员宅基地

文章浏览阅读1.6k次,点赞2次,收藏12次。 作者:罗必达,腾讯音视频实验室质量平台组组长,高级工程师。我所测试的是不是音视频质量在解答了这个问题后,你可以进行业务分析了。不同的业务,对音视频的要求是不 实时通话类业务 例如我们所负责的QQ音视频,就是这类业务。这类业务对实时性的要求很高。想象一下,你在跟家人聊天,在讲完一句话后,要在几秒后才能听到对方的反应,这是不可接受的。这就要求我们实时地根据网络情况,提供..._音视频测试如何做需求分析

网络安全实验DOS命令使用+抓包分析_daos命令发送数据包-程序员宅基地

文章浏览阅读2.3k次,点赞2次,收藏5次。网络安全实验DOS命令使用+抓包分析DOS命令使用抓包分析DOS命令使用1.1 查看本地主机的ip地址和物理地址命令语句:ipconfig/all1.2 利用ping 命令ping sohu.com, 每次发送15个包,每个包400字节命令语句:ping souhu.com.cn -l 400 -n 151.3 使用tracert命令查看本地主机到sohu.com服务器经过的路由器地址:命令语句:tracert souhu.com1.4 使用netstat 命令查看2-3个目前处于est_daos命令发送数据包

Redis之父:我可不止是一只码农-程序员宅基地

文章浏览阅读316次。一年前我暂停了写代码后开始尝试写科幻小说时,以为这是两条完全不一样的路子。随着写的文字越来越多,不断的推倒重写那也是家常便饭了。我现在总算非常确定了,撸一个大系统和写一本小说本质上其实差不..._redis之父

glsl opengl es shader 闪电特效,闪电2,实际上动态图和之前差不多,只是闪电靠的更近_闪电shader-程序员宅基地

文章浏览阅读2k次。glsl opengl es shader 闪电特效,一道粗的闪电转载自 http://glslsandbox.com/// Lightning// By: Brandon Fogerty// bfogerty at gmail dot com // xdpixel.com// MORE MODS BY 27_闪电shader

启动项目报错 Failed to bind properties under_failed to bind properties under 'spring.cloud.naco-程序员宅基地

文章浏览阅读5.4w次。报错信息:Description:Failed to bind properties under 'mapper.mappers' to java.util.List<java.lang.Class<?>>: Reason: No converter found capable of converting from type [java.lang.Stri..._failed to bind properties under 'spring.cloud.nacos.config.namespace' to jav

解决百度网盘(百度云)分享链接不存在失效、分享的文件已经被取消的问题_百度网盘链接不存在解决方法-程序员宅基地

文章浏览阅读2.2w次,点赞2次,收藏6次。解决百度网盘(百度云)分享链接不存在失效、分享的文件已经被取消的问题_百度网盘链接不存在解决方法

推荐文章

热门文章

相关标签