构件化的软件生产方式,为什么不战而胜?

翻译|其它|编辑:郝浩|2004-02-20 09:58:00.000|阅读 1501 次

概述:

# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>

“占据世界软件销售额85%的是大型的专用软件,而其开发的失败率却高达70%!”

——美国国家标准和技术研究院的研究报告

“到2005年至少70%的新应用将主要建立在如软件构件和应用框架这类“构件的基础上!”

——Gartner Group的研究报告

企业级应用软件的开发,目前可以说困难重重,危机是因为软件生产方式的滞后。目前的软件生产要么就是每个软件“从头做起+懒汉式的重用”的方式。要么就是“通用软件+二次开发(即实施)”的方式。每一次开发量大,周期长,变化多,问题突出。

企业级应用软件开发的景观之一:目前的许多做信息化的公司,基本上是代码级重用。给一个客户开发了一个软件,第二次拿到做另外一个公司的项目时,就把这个软件拿去“实施”,在原来系统的代码的基础上修修补补,就算是第二个系统。但这种方式,到了第三个项目的时候,基本上就没法重用,只好重新做起。并且对于客户而言,隐患极多!

企业级应用软件开发的景观之二:目前也有一些企业,拿着通用的管理软件,实施或者定制给客户。这类信息系统的巨大问题是,通用软件失去个性化。可是,真正的管理和企业需求以及企业的自身核心竞争力都是个性化的。导致许多客户的问题和需求无法实现,要实现,则需要打上不少的补丁;甚至另外做一个辅助系统。

类的概念和类的继承的概念给重用和软件企业的经验积累带来的一丝曙光;但是软件开发依然没有看到光明,因为类的重用还比较基础,基本上还是代码级的重用,能提高效率,但是遭遇到进一步提高效率的瓶颈。

这个瓶颈呼唤软件开发的方式的巨大变革,这个变革思想由来已久:就是构件化的生产方式,实际上中间件上面的服务或者应用的开发就是构件化的;但是,构件化的软件开发思想没有渗透到应用软件开发层面,也许是当前的主要关注在于从c/s到基于互联网应用的网络基础的转变。

构件化的软件生产方式,用到企业级应用系统的开发,是一次巨大革命,本文开始提出的三个问题将会因为构件化的生产方式而迎刃而解。

第一、构件化的生产方式,从重用的角度而言:它是业务层面的抽象和重用,比类的重用高一个层次。因而更能够进一步提高效率。类的重用是泥沙层面的重用;但是构件的重用是砖头层面的重用;用砖头建筑效率要高于只是使用泥沙来建筑。

第二,构件化比“从头做起+懒汉式的重用”的方式而言:这种生产方式的价值在于,构件能够反复重用,多次重用;不断积累。而且没有维护的许多隐患。

第三,构件化比生产一个通用的软件,然后实施到不同的企业而言:它更加个性化,更加灵活,更加能够满足客户特殊的需求。能够适应企业的管理和业务优势。

构件化的优势的关键在于:构件化是“分解再重装”。如果不分解,就没有灵活性和适应性,这是通用软件的弊端;如果分解的粒度太细(代码级或者类级),效率会下降。

构件化的软件生产方式,已经显示“不战而胜”的威力,今天“攒机”有多方便,多高的效率,构件化的方式“攒软件”就会多方便和多有效率。

构件化企业级应用开发的案例:我国著名的软件公司,上海普元是构件化软件生产的倡导者和领导者之一,他们拥有完整的开发工具、运行平台和自己的构件库。

下面是上海普元给中国电信做基于J2EE的企业级应用:

· 项目一期:网上营业系统

· 项目二期:综合客服、生产调度和资源管理系统

人员配置:

大部分没有Java和J2EE基础

毕业1-3年的工程师占50%

项目的效率提高见下表:

项目名

页面

Table/View

功能点

估算代码行

传统工作量

实际工作量

北方电信一期

829

118/51

364

15

60人月

35人月

北方电信二期

2221

669/107

1089

40

160人月

50人月

(数据来源:普元的项目资料)


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@evget.com


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP