首页 ┆ 网站地图 ┆ 在线留言 ┆ 游戏资讯 ┆ 资源下载 ┆ 端午节祝福 ┆ 迅雷在线影视
设为首页
加入收藏
联系我们
高级搜索
您当前的位置: 主页>软件工程>项目管理>谈谈SOA方法学和其他方法学的比较
谈谈SOA方法学和其他方法学的比较
来源: 发布时间:2007-11-05 发布人: 浏览: 人次   字体: [ ]  
广义上讲,SOA方法学贯穿于IT生命周期的各个阶段和各个方面:IT系统项目的规划,系统分析和设计,系统的实施,系统的部署和维护,以及整个过程中的监控和管理等。从实践的角度说,已经出现如下SOA方法学。

  (1)面向服务的分析和设计(SOAD)。以服务为中心,根据业务需求发现服务、描述服务,并设计服务的实现。

  (2)面向服务的开发过程。结合现有开发过程,规划以服务为中心的开发过程中的角色、职责、活动和工件。

  (3)SOA的成熟度分析和迁移路线图。以服务为中心,分析现有或目标系统的成熟度,并设计从现有成熟度迁移到目标成熟度的路线图。

  (4)SOA监管。设计组织和流程,确保SOA的设计原则在IT生命周期中得以贯彻,管理服务生命周期中的各种迁移的合理性等。

  本章对SOA方法学的阐述主要集中在面向服务的分析和设计。首先介绍SOA方法学和主要的几种方法学的区别和联系,其次以IBM的SOMA(Service Oriented Modeling and Architecture,面向服务的建模与架构)为例,介绍SOA分析和设计中的主要内容和方法。

  1、SOA方法学和其他方法学的比较

  与SOA的设计原则类似,SOA方法学并不是全新的方法学,它是现有方法学的继承和发展。一方面,原有的方法学并不能解决由于服务概念的引入带来的问题,如怎样发现服务,怎样定义服务;另一方面,服务是一个水平的概念,而不是一个垂直的概念,在服务分析和设计的过程中,需要处理服务和现有方法学产物的关系,如业务流程和服务,企业架构和SOA,服务和对象等。因此服务的分析和设计最主要的职责在于发现服务、定义服务和实现服务,并指导如何和其他方法学结合完成这些职责。

  如图1所示揭示了现有几种方法学的定位。图的横坐标将项目周期分为分析、设计和开发三个阶段,纵坐标将域分为应用、架构和业务。流程建模(BPM)用于业务领域的分析和设计,如业务流程的定义、业务数据的定义等;企业架构(EA)和方案架构(SA)侧重在架构领域的分析和设计,如根据业务需求确定目前目标业务系统和IT系统,根据目标系统需求设计主要架构元素和它们之间的关系;面向对象的分析和设计(OOAD)则贯穿分析、设计和开发三个阶段,它主要分析细粒度的业务需求,如用例,分析和设计实现这些需求的类和对象,以及它们之间的关系。

  
    图1 传统的方法学

  如图2所示,面向服务的分析和设计贯穿项目周期的三个阶段和IT系统的三个域。这暗示着,在操作层面上,面向服务的分析和设计会和其他方法学紧密相联。

  
     图2 SOA和传统的方法学

  1.BPM和SOA

  业务流程建模是一个相当零散的领域,存在各种各样的方法和技术,有效的方法可以帮助企业对业务进行合理的划分,从而求得业务层面的灵活性。有些方法则侧重于流程建模本身,例如如何确定和定义业务流程中的业务活动、业务数据、业务规则、业务指标和业务事件等,但是BPM并不会帮助我们去发现和定义服务。从SOA的方法学来看,各种BPM的结果是面向服务的分析和设计的重要输入,如业务组件、业务流程和业务目标是服务发现的重要依据,而业务指标、业务数据、业务规则等是服务暴露的分析的重要依据。

  2.EA和SOA

  尽管和BPM一样,EA是一个零散的领域,但是当前的EA主要侧重于定义跨越业务单元边界的系统框架,企业范围内系统的主要构成元素,这些元素间的关系,以及将这些元素有机组合在一起的参考架构。但是,各种EA技术都缺乏业务领域的蓝图指导企业架构的设计。从SOA方法学来看,一方面,面向服务的分析和设计通过和BPM结合将业务分解为各种类型的服务,可以作为企业业务的蓝图指导企业架构的设计;另一方面,企业架构设计的结果,如参考架构,又是服务实现的重要依据。

  3.OOAD和SOA

  面向对象的分析和设计告诉我们使用Use Case捕获需求,并设计类、对象及对象间交互来满足Use Case定义的需求。但是面向对象的分析和设计往往只是局限在单个应用内部,它不会缺乏业务蓝图和企业架构蓝图的指导。从SOA方法学看,在原理层面上,OOAD中的很多设计原则,如抽象、隔离关注等被SOA继承和发扬,并应用于服务的定义和实现中。而在操作层面上,服务模型为OOAD进行类和对象设计提供了业务蓝图和企业架构蓝图,与此同时,Use Case作为对业务流程的补充说明被用于服务的发现和定义中。


相 关 文 章   发布商链接
·如何在IT项目实施中进行成本估算?
·项目生命周期中有三个与时间相关的重...
·成功的项目经理应具备的10大态度
·谈谈先进、成熟的软件工程思想有哪些...
·软件开发项目管理的角色定义和各个阶...
·件的系统架构设计应该达到怎样的深度...
·什么是软件开发的互通性?主要体现在...
·一个称职项目经理应如何调动员工的积...
·谈谈哪些人不适合担任项目经理
·如何写系统需求分析书?实例分析不完...
 §最新评论:(评论内容只代表网友观点,与本站立场无关!)
网名: 验证码:  【所有评论】【↑返回顶部
评 分: 12 345
评论内容:(不能超过500字,请自觉遵守互联网相关政策法规。[按 Ctrl+Enter 可直接提交]
注意:请勿在本站发布政治话题、色情及违反法律的内容。
IT知道网 声明:刊登此文章是为了传递更多信息,文章内容仅供参考,转载请注明出处。
推 荐 文 章
·浅谈程序编码人员和网站美工...
·值得关注的影响IT项目进展速...
·如何写系统需求分析书?实例...
·谈谈哪些人不适合担任项目经...
·一个称职项目经理应如何调动...
·什么是软件开发的互通性?主要
·件的系统架构设计应该达到怎...
·软件开发项目管理的角色定义...
·谈谈先进、成熟的软件工程思...
·成功的项目经理应具备的10大...
·项目生命周期中有三个与时间...
·如何在IT项目实施中进行成本...
·快来听听我来讲如何做好软件...
·如何制定和编写软件项目计划...
·浅析软件项目管理中的十个误...
热 门 文 章
·软件开发项目管理的角色定义...
·如何写系统需求分析书?实例...
·如何制定和编写软件项目计划...
·一个称职项目经理应如何调动...
·件的系统架构设计应该达到怎...
·谈谈哪些人不适合担任项目经...
·软件开发项目管理中的五项基...
·项目生命周期中有三个与时间...
·成功的项目经理应具备的10大...
·谈谈先进、成熟的软件工程思...
·如何在IT项目实施中进行成本...
·项目经理的第一个精神准备
·软件项目管理中的风险与研究
·浅谈程序编码人员和网站美工...
·什么是软件开发的互通性?主要...
网站首页 - 关于本站 - 加入收藏 - 网站地图 - 友情连接 - 在线留言 - 联系我们 - 返回顶部
Copyright © 2007 IT知道网.[冀ICP备07026896号]. All Rights Reserved .