• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

何以解软件业之困局

发布: 2008-10-29 09:19 | 作者: 不详 | 来源: 测试时代采编 | 查看: 22次 | 进入软件测试论坛讨论

领测软件测试网
关键字:

计算机硬件发展远远超过软件,这是目前 IT 界的共识。硬件不仅性能远在软件之上,而且其设计、生产和流通方式也比软件先进得多。软件最不令人满意的就是操作系统,特别是PC 操作系统,庞大复杂、启动笨拙、运行不稳、易受攻击、更新奇慢、价格昂贵,几乎集所有缺陷于一身。应用系统也不能令人满意。大大小小的软件公司数不胜数,搞出来的东西千篇一律,而且很多应用不是越搞越精致,而是越来越庞大,越来越难用。随着软件和硬件逐渐融合,这种混乱局面也被带进硬件行业,例如手机的频繁死机。用户只知道这样的手机很差,并不知道是劣质软件在里面作怪。

  软件和硬件的一个重要区别是其生产过程相对简单,成本效率主要在设计过程。很多人都在推崇构件化软件设计。可以看到很多会议、研讨和论文都在关注构件化设计,让人感到前景应该不错。想来也是,如果软件能像硬件那样用构件来组装,软件业肯定不是现在这种局面。但为什么现实不是那样呢?是技术问题还是别的什么障碍?构件技术的确还不成熟,但面向对象构件技术已经发展多年,已经有很多成熟构件被广泛使用,并且显著提高了编程效率,只是软件还远没有形成硬件那样的产业链:从零部件制造到产品组装,应有尽有。只有少数公司推出商品化程序构件,罕见有公司依靠构件设计为生。我想,其中的最大障碍应该不是技术,而是软件产品的流通方式。

  试想,假如你设计了一套流媒体编码解码构件,并且以此为基础推出流媒体软件产品,你将有成千上万潜在客户。但要是把这套构件卖给别的企业搞二次开发,你的客户很可能不会超过十个。这样,你只能期望卖出很高的单价,或是从你客户的收入中提成。前者根本别指望,后者实际操作起来也很困难。要是微软那样的大牌公司有兴趣,他们会直接买下你的公司,好把一切掌握在手中。小一点的公司或许会和你谈条件,但谈成的希望很小。层次更低的公司干脆买一套构件,然后复制 N 份嵌入自己的产品中。你很难象硬件那样掌握零部件数量,也很难象软件最终产品那样靠加密和法律来控制拷贝。也就是说,软件的流通方式在制约着构件的商品化交易,所以,大家一窝蜂都去搞最终产品,低层次重复开发,严重的资源浪费,软件和硬件的差距越拉越大。看来,要解软件业困局,必须想法建立适合构件的流通方式。

  最容易想到的办法是远程调用,也就是把程序构件放在网络服务器上,通过互联网来调用。这样,构件提供者销售的不是程序代码,而是计算服务。买方在自己的应用系统中通过远程调用获取计算服务。卖方则以某种方式来统计服务量(例如,可以按用户数量或调用次数来统计),并获得相应收益。这种远程调用需要互联网状态良好才能顺畅运行,而且不适于过频和过密的访问,因此其应用范围很有限。

  另一种办法是把软件固件化,也就是把构件代码保存在闪存这类非易失器件上,作为插件嵌入构件需求方的应用系统。这是真正意义上的插件,而不是软件概念中的虚拟插件。当然,作为一种程序构件,应该有一种方法可以随时插拔和灵活组合。例如,用类似 U 盘的器件作为接插底座,可以插入多个微型 ID 器件,每个 ID 器件保存一个独立开发商的的程序构件代码。其实,整个应用系统甚至操作系统都可以按这种方式来组合,外购插件只是其中一部分。也就是说,把计算机软件全部预装成固件,以插拔方式接入系统总线,在逻辑上形成有机的程序组合。对嵌入式系统来说,这应该是一种不错的设计方案。甚至便携式 PC 机也可以采用这种设计。

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/

TAG: 软件业 困局

21/212>

关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网