另一种层面的敏捷开发

 
   | |

导读:本文介绍了另一层面上的敏捷开发,并从构件/组件化,SOA松耦合技术架构,技术平台从产品平台中分离出来,配置化设计理念四方面进行了讲解。

关键词:敏捷开发 持续集成 重构 组件化 松耦合 SOA

 
正在加载数据...

  我们经常提到敏捷开发,更多谈到的是重构,自动化测试、沟通等,让我们看一下另一个层面的敏捷开发:

  构件/组件化——最大限度地软件复用

  世界各国所有的IT项目都已证明,最大程度的复用已有成果,无疑是提高软件开发效率,缩短开发周期,降低开发成本,并改善软件质量的有效方式。

  “如果要在企业级软件开发中取胜,就需要一种新的方法——基于构件/组件的方法。而事实上,在互联网时代的企业级软件解决方案是必须基于构件/组件的。”软件界领袖、信息战略家Alan W.Brown针对如何才能有效突破代码层的限制,真正实现软件开发的按需生产提出了以上说法。

  显然,构件/组件技术让软件回归了简洁表达,能够轻而易举的实现像制造行业一样的标准化。大量采取构件/组件和组件技术,正如统一规格、统一标准的机器零部件,只需按要求简单的拼装即能成为完整的机械设备一样。同时,基于构件/组件/组件的复用则使人们在软件开发中不必再“重新发明轮子”或“一切从零开始”,而且构件/组件/组件通过多次复用后质量和可靠性越来越高。

  据统计,如果软件系统开发中的复用程度达到50%,则其生产率提高40%,开发成本降低约40%,软件出错率降低近50%。在国务院信息化工作办公室在《振兴软件产业行动纲要》中,也多次提到要推广应用软件构件/组件和复用技术,加快构件/组件技术发展的目标。

  事实上,世界各国所有的IT项目也已充分证明,最大程度的复用已有成果,能更加有效地降低开发成本,改善软件质量,实现敏捷开发。

  随需应变的SOA松耦合技术架构

  12年前,SOA(面向服务的企业架构)的概念被首度提出。在SOA架构中,软件被视为由“配置化服务”组成的新系统,着重强调软件的松散耦合、并使用独立的标准接口,藉此让企业应用系统变得灵活。

  应该说,SOA架构的出现为软件生产中的敏捷开发做出相对完美的诠释。由于强调“随需应变”,SOA的开放性和灵活性让软件架构变得更加松耦合,更能有效满足企业应用中不断增长、变化的需求,标准化生产同时也意味着减低了成本、提高了软件实施效率和降低了服务的难度,在满足应用的同时也大幅提高了标准化程度。

  技术平台从产品平台中分离出来成敏捷开发工具

  “当面对企业客户对于应用系统不断变化的需求时,原有的单一业务应用开发平台,套件化、定制化、逐个对象实现的方式,无疑已成为了应用开发的瓶颈。”

  随着客户需求与实施周期矛盾越来越突出,以及无论是开发商还是用户对“随需应变,敏捷开发”呼声的愈来愈高,技术平台已经明显地从产品平台中分离出来。
  
  由此出现了一批以业务驱动为导向、可快速构建应用软件的应用开发平台,比如国内的创恒信软件的eFlow应用开发平台,以及上海普元软件等厂商推出的各类开发平台类软件等,为大批中小软件开发商提供了从底层基础开发平台到中间件构件/组件的完整包,在此类平台基础上可以使用开源的各种产品、第三方的中间件以及平台内置的各种构件/组件,使敏捷开发成为了可能,也在很大程度上满足了软件业批量生产的需求。

  配置化设计理念——让软件开发更敏捷

  近年来,配置化的设计理念,已成了敏捷开发的首选。由于平台高度封装了大量成熟而实用的应用构件/组件、模块,并内置功能强大、成熟而实用的各种应用系统和开发工具,因此使得开发人员在进行软件开发过程中,绝大多数开发与应用无需特殊的编码,只需按照项目需求选择相应的组件或模块进行“拖拽式”配置,而捏合过程由系统自动完成——正如统一规格、统一标准的机器零部件,只需按要求简单的拼装即能成为完整的机械设备一样,因而大大提高了软件开发的效率,降低了软件开发与应用的难度,并且应用可立即部署,大大缩短了应用开发的调试期。

  有关数据显示,配置化的平台能够实现90%的应用开发无编码,对于需要编码的业务系统,也可以将系统的编码量压缩成传统方式的5%至10%。配置化的设计理念,使系统开发不再过分依赖于开发人员,可视化的开发环境使软件开发商和企业应用中可以适时适量的根据需求进行采集,使系统的复杂度下降了一个数量级,大大提高了软件开发效率,完全实现了软件开发以业务为中心。


面向服务的敏捷性
 成功的面向服务架构SOA开发的方法(二)
 成功的面向服务架构SOA开发的方法(一)
 敏捷式软件的特征
 敏捷SOA成功秘诀之IT运营和监测
 名师讲堂之Kent Beck——响应式设计,现接受报名
 敏捷开发的关键问题
 距离敏捷中国大会2009还有两周,报名从速!
 另一种层面的敏捷开发
 如何解决敏捷开发中的用人不当问题
 忘记成熟度模型 敏捷模型到来(一)
 忘记成熟度模型 敏捷模型到来(二)
 忘记成熟度模型 敏捷模型到来(三)
 敏捷中国大会2009顺利闭幕 大师云集精彩纷呈
 敏捷开发中的架构设计初探
 企业架构成熟度模型:四大阶段不能跨越
 如何处理敏捷开发中的迭代问题(上)
 如何处理敏捷开发中的迭代问题(下)

原文出处:http://digi.tech.qq.com/a/20090825/000166.htm
 
来源:IT168    
 
 
 
 
 

SOA开发

 
准备开始SOA是一种挑战。我们咨询了著名的Rolta SOA中心,它是跨国咨询公司Rolta和SOA实施支持厂商的一个软件部门。他们给出了在SOA上取得成功的几条技巧……
 
不论你是测试人员、开发人员还是普通人员,可能都熟悉预定航班和航空旅行的麻烦之处。软件测试和开发人员经常成为类似调度和迭代问题的牺牲品……
 
当运行高流量网站的应用程序时,需要按照规模进行时刻通知,开源应用服务器有时可能会比它们的商业同行更好地满足企业的需求。
 
在过去数年的架构模式中,我一直专注于与客户合作,与以网格相结合为基础,更传统的面向服务架构方法来构建应用技术。
 
David Chappell是Oracle副总兼首席SOA技术专家,他集中研究利用SOA环境中的网格的架构模式。他是《企业服务总线》的作者,在软件行业有超过20年……

热门技术手册排行

 

随着开源技术越来越成熟,一个稍有开发经验的人通过学习就可以用开源的产品和技术构建一套可用的系统。对于从事软件开发的人员,尤其是对Java或动态语言相关领域的人来说,“开源”也许是他们最喜爱的单词。但是,很多时候我们需要的不仅仅是一个可用的系统,而是希望这个系统开发更简易、性能更高和扩展性更好等。这确实是一个令人头痛的问题。本指南很多地方都是点到为止,要深入了解相关信息的读者请借助参考资料、网站等自行挖掘。

 

本专题分六部分探讨SOA设计模式,当初设计面向服务架构的一大初衷就是降低服务间耦合度,由此提高服务的灵活性和自由度。

 

业务流程管理(business process management,bpm)不是一个新概念,甚至不是一个新名词。它是从相关的业务流程变革领域,如业务流程改进(bpi)、业务流程重组(bpr)、业务流程革新中发展起来的。流程管理技术也是从早期的工作流管理、eai、流程自动化、流程集成、流程建模、流程优化等技术中发展起来的。

 

TOAGF是一个架构框架,简而言之,TOGAF是一种协助发展,验收,运行,使用,和维护架构的工具。它是基于一个迭代(Iterative)的过程模型,支持最佳实践和一套可重用的现有架构资产。

 

云计算的概念越来越流行,Amazon、Google和IBM是第一批将云计算引入公众视线的公司。云计算就是新的Web2.0,一种既有技术上的市场绽放。

 

Mashup是一个非常cool的新的应用程序种类。如果你想真正的了解它们,我们需要回过头来看看你现在的计算机,其实它就是一个非常好的帮助你理解mashup的模型。现在开源的操作系统无疑是非常好的apis的集合或应用程序编程接口,帮助开发者去构建其应用程序。计算机本身也是一个很好的为用户提供接口的例子,键盘和鼠标可以被理解为你通过计算机的接口而使用的不同的应用程序。本技术手册为读者提供了一些相关信息,如果需要深入了解mashup,读者可以借助其他参考资源。

查看更多
 
 

登录TechTarget中国

关闭
本服务仅向TechTarget中国的会员开放,请登录或立即免费注册
电子邮件地址:
请输入您的电子邮件地址
密码:
下次自动登录