首页 > 人工智能 > 正文

敏捷SOA成功之秘诀之IT和SOA治理

2010-08-06 17:12:36  来源:eNet硅谷动力

摘要:由于采用了灵活、螺旋状的并行开发方法,在很多敏捷性开发周期的收尾阶段,用传统的瀑布式开发方法测试接近完成的应用程序其实并不能达到敏捷的效果,因为应用程序的组成要素在不
关键词: SOA SOA治理

 人们采用了SOA(面向服务的架构)设计模式,努力让IT更加积极地对业务所需要的变化做出更加积极的响应。新的过程工具被引进,专门用来协助分类服务资产,并组织SOA治理策略。

    由于采用了灵活、螺旋状的并行开发方法,在很多敏捷性开发周期的收尾阶段,用传统的瀑布式开发方法测试接近完成的应用程序其实并不能达到敏捷的效果,因为应用程序的组成要素在不断变化。传统的IT治理模式也将无法发挥作用。

    为了解决这一问题,人们采用了SOA(面向服务的架构)设计模式,努力让IT更加积极地对业务所需要的变化做出更加积极的响应。新的过程工具被引进,专门用来协助分类服务资产,并组织SOA治理策略。

    这些为了支持SOA而特意开发的新工具主要围绕SOA治理平台,比如惠普公司的Systinet /s2、SAG Centrasite、SOA Software、TIBCO ActiveMatrix和Oracle Fusion。这些SOA治理工具管理与服务有关的元数据的收集和分类,并组织他们之间的相互依存关系,同时再根据SOA策略文档确定如何组合服务才能满足业务需求。

    在治理工具集中,SOA Registry/Repositories自动化测试和验证的新平台。传统的系统需求和功能测试将仍然执行,但在SOA环境中,自动化策略验证和执行的机会将会更多。

    目前关于SOA治理的思想基本上是围绕设计时WSDL验证、运行性能和安全政策的执行。随着SOA治理的逐渐成熟,它需要支持各种各样的SOA项目,而 SOA治理思想也必须大幅度扩大。SOA治理平台最大的价值之一就是必须提供一个证明,确保用人类语言或商业条款所表述的策略能够在系统中连续执行。

    验证SOA策略

    让我们看看下面这个部署示例:比如,你要将一系列的Web服务定义(WSDL文件),加载到UDDI注册器中。这些服务彼此之间的关系,以及这些文件如何捆绑在在一起以创建一个业务流程会被记录下来。如果企业招聘了一位新员工,这就可能会设计到一系列的服务,从确定员工的职位和上司的人力资源计划,到提供 IT必要的资源比如电脑和电子邮件,同时还可能涉及到外部合作伙伴的保险和福利登记。这些服务将通过WSDL记录下来并储存在UDDI注册器中。这样,一个从人力资源到薪水制定的业务流程将会被确定下来。

    只要每一个业务流程参与者提供了有案可稽的,可靠并安全的服务,这一切看起来很简单。这些围绕单个服务架构、行为和性能的策略都被记录在治理工具中。举例来说,业务分析师将会在CentraSite ActiveSOA这样的工具中编写策略,描述服务的行为。

    IT服务将会根据新雇员的姓名和身份证号码返回一个新的e-mail地址,域登录和默认密码。安全服务将会向这位新雇员提供合适的系统访问控制权限。安全负责人指出,只有加密和签名数据被发送给服务,该服务才能运行。签名必须由企业安全证书主管验证,证明该请求是来自经过授权的HR人员。最后,IT运营团队将会围绕该服务每秒应该处理多少交易以及服务的最大响应时间制定一个策略。

    如果要进行一个严格的人工验证过程,要进行的步骤远远不止这些。测试的执行应该驻留在SOA治理过程之中。

SOA治理

   

测试,验证和政策执行解决方案



    企业为了管理IT环境的设计、架构、集成和治理必须要部署很多过程,鉴于此,找到一种通用的并且可重用的过程验证和执行方法是非常有意义的。SOA验证执法范围大增,可重复使用并且丰富的测试融合到业务的每一个流程以及支持它们的工具中。

    上图所示的验证法提供了通过运行测试案例来验证一流的IT过程工具定义的不同的规则和策略的功能。通过在过程工具的工作流中将自动化的测试运行与的预期的行为和政策捆绑在一起,治理行为得以实现。从治理平台援引测试以确保SOA策略这一做法与测试管理解决方案的治理方法很相似,最大的不同在于需要验证组件整个生命周期的背景和阶段。

    在传统的瀑布式开发测试方法中,有一个具体的时间点,用来标志该系统可以用于测试了。在今天基于服务的应用程序中,我们不能找到这样一个时间点。

    在SOA生命周期中,我们将设计时、运行时和变更时看做是松散耦合系统中正在建设的业务过程或服务的三个阶段。在上面的例子中,一些服务与套装应用软件(人力资源系统)是互动的,一些是本地系统,其余的则来自外部合作伙伴。这三个阶段的开发和发布周期会有所不同,并且不能通过协调融合成一个大型发布。 SOA的一个优势是有能力实现系统分拆,并利用其它项目创建的服务,无需自己开发。

    在设计时阶段,运行测试确保WSDL符合WS-I的标准,并遵循RPC或文档调用结构,而且客户的特定标记被用于服务标识。在通过了上述符合性测试的基础上, WSDL就会被放入Repository中,开发人员就可以使用它们进行功能编码。

    最后,我们将给出我们的结论:

    由于开发周期已经从传统的瀑布开发和测试转向了ALM支持的敏捷、螺旋、并行的开发模型,所以在应用的整个生命周期都需要不断进行测试已经是不言自明的。为了促进这些过程,并实现SOA的业务响应和成服务、主机和数据行为的虚拟化使开发和测试团队能够完成在现实环境中的所哟管理和测试工作,并且大大节省了成本。这大大增加了灵活性,将开发和测试团队移动到更多的并行开发周期中,消除了不能用于测试的服务和组件的限制。

    这确实大大节省了成本,尤其是在目前全球经济持续低迷的条件下,它的重要性更加明显了。敏捷性SOA正在引起越来越多的企业的关注和兴趣。

    本节主要介绍SOA如何逐渐融入敏捷的生命周期。在这里,我们将研究一下应用生命周期管理(ALM)。

    正如着名市场研究机构Forrester的Cary Schwaber所说的那样,最新的ALM平台将会改善开发过程,向应用工具提供普通服务。这一代的ALM软件在将需求、测试案例、bug跟踪和问题解决方案整合到一个应用套件中做了更多的工作。下图就简单说明了共享测试过程并把它作为协作资产。

共享测试过程



   


第四十一届CIO班招生
国际CIO认证培训
首席数据官(CDO)认证培训
责编:

免责声明:本网站(http://www.ciotimes.com/)内容主要来自原创、合作媒体供稿和第三方投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。