InfoQ

InfoQ

新闻

我的书签

登录注册 以永久保存书签。

该内容已经被标记书签!

标记书签错误,请重试!

适应性——新软件危机的主因

作者 王翔 (Vision Wang) 发布于 2008年6月17日

领域
架构 & 设计,
企业架构,
过程 & 实践
主题
交付价值 ,
SOA ,
架构 ,
方法论 ,
客户及需求
标签
历史 ,
趋势

按照软件工程学的介绍,软件危机(Software Crisis)是软件发展第二阶段末期,由于硬件快速发展,引发作为“人件”的软件不能满足需求所导致的,作为副产品它催生了软件工程学的快速发展。但在很多企业已经把软件作为其业务神经的今天,通用的商业软件和开源软件已经相对过剩,但软件行业的危机不仅没有缓解,而是更加严峻。“适应性”成了新软件危机的主因。

软件危机的主要表现如下:

  • 费用支出大大超出预算
  • 用户不认可其功能
  • 可靠性和维护性差
  • 时间进度失控

40多年前我们总结其主因如下:

  • 软件规模膨胀,逻辑趋于复杂
  • 开发技术落后
  • 开发方式落后
  • 工具落后

但40年之后,除了第一条主因之外,其他方面都已经大大改善,尤其是伴随着C++、.NET、Java等一大批开源框架、开源工具、开源产品出现后,实际项目中我们需要自己编码的比例越来越小,常常是“技术等人”,而非“人等技术”。

但现实如何呢?我们不难发现危机的表现不仅没有减轻,反而愈盛。这说明主因发生了变化,在“唯一不变是变化本身”概念下“适应性”越来越突出。为什么工具、手段、方法学已经大大改善的今天还要一遍遍出现这个问题呢?技术和业务,尤其是后者。

  • 十年前,传真还算很迅捷的通信手段,20年前电报和长途电话的地位更加突出,但现在信息往往是基于预定的邮件、短信和“WIFI Touch”
  • 地球被互联网拉平,对外贸、制造业、投资、能源等类型的企业,很多时候商机的出现不再是年、月,而是几天甚至几个小时,IT如何快速解决这些问题,甚至是让用户凭借既有的IT系统自己解决,一直是软件行业奋斗但似乎还很遥远的目标
  • 企业内部的竖井、企业间的信息壁垒因为资金和人员协作被逐个打破,防火墙(更确切地说应该叫“防火筛子”)只是在维持着技术上的安全区域,业务伙伴间信息协同的需要更加迫切,但在此之前还要跨越频频出现的软件平台之争、技术标准之争
  • 语义网络(Semantic Web)、BPEL、面向对象语言/脚本语言、战术性BI、XML数据库系统集成虽然都可以从某个方面“更快”地解决业务逻辑、技术环境、数据实体方面的变化,不过相对于市场而言,尤其是那些不期而至同时很可能转瞬即逝的市场商机而言,还是适应得不够快

但如果要满足这些要求,对于软件产品的提供者似乎也太过苛刻,毕竟“众口难调”,既然不好调和就不妨交给用户自选,更加人性化、易用的Mashup也许会成为解决新软件危机的一个突破口。

能否提供reference? 发表人 Li Mo 发表于
hehe 发表人 Zhang Richard 发表于
ref 发表人 麦 书 发表于
ref 发表人 麦 书 发表于
Re: ref 发表人 麦 书 发表于
太专业,看不懂 发表人 baoming sun 发表于
这本是常态 发表人 guan jayden 发表于
  1. 返回顶部

    能否提供reference?

    发表人 Li Mo

    按照软件工程学的介绍,软件危机(Software Crisis)是软件发展第二阶段末期
    今天,通用的商业软件和开源软件已经相对过剩,但软件行业的危机不仅没有缓解,而是更加严峻

    请问引用数据的出处是哪里?

  2. 返回顶部

    hehe

    发表人 Zhang Richard

    难道是楼主看了我的文章有了感想?
    www.cnblogs.com/pootow/archive/2007/10/29/94175...

  3. 返回顶部

    ref

    发表人 麦 书

    IBM Redbooks
    1、Managing Information Access to an Enterprise Information System Using J2EE and Services Oriented Architecture
    2、Patterns: Service-Oriented Architecture and Web Services

    Microsoft Architect Journal:
    A Study of Architect Roles by IASA Sweden

  4. 返回顶部

    ref

    发表人 麦 书

    SOA:原理•方法•实践,第 1 部分: SOA 的基本概念
    1.4 软件工程的演变和面向服务体系结构
    www.ibm.com/developerworks/cn/webservices/0708_...


    IBM Redbooks
    《Managing Information Access to an Enterprise Information System Using
    J2EE and Services Oriented Architecture》
    2.2.3 Components and SOA
    www.redbooks.ibm.com/abstracts/sg246371.html?Open


    Separation of Concerns in Middleware
    www.research.ibm.com/AEM/mdsoc.html


    IBM Redbooks
    《Patterns: Service-Oriented Architecture and Web Services》
    2.1.2 Service-oriented architecture as a solution
    www.redbooks.ibm.com/abstracts/SG246303.html?Open

  5. 返回顶部

    Re: ref

    发表人 麦 书

    SOA:原理•方法•实践,第 1 部分:

    SOA 的基本概念 1.4 软件工程的演变和面向服务体系结构

    www.ibm.com/developerworks/cn/webservices/0708_...



    IBM Redbooks

    Managing Information Access to an Enterprise Information System Using J2EE and Services Oriented Architecture》

    2.2.3 Components and SOA

    www.redbooks.ibm.com/abstracts/sg246371.html?Open



    IBM Redbooks

    Separation of Concerns in Middleware

    www.research.ibm.com/AEM/mdsoc.html



    IBM Redbooks

    Patterns: Service-Oriented Architecture and Web Services》

    2.1.2 Service-oriented architecture as a solution

    www.redbooks.ibm.com/abstracts/SG246303.html?Open



    Microsoft Architect Journal:

    A Study of Architect Roles by IASA Sweden

  6. 返回顶部

    太专业,看不懂

    发表人 baoming sun

    看后后面突然感觉思路断了,不知所云。

  7. 返回顶部

    这本是常态

    发表人 guan jayden

    软件开发在解决问题方面做得越是成功,就会出现更大、更复杂的问题等着去解决。
    如此循环,形成一个正反馈,直到被认为陷入所谓的软件危机。

    还是去读读 老文《没有银弹》吧。

深度内容

大规模视频网站的计费与流量管理

本次分享将会就大规模视频网站的计费与流量管理这个话题,从操作层面细细进行讲解和分析,为系统工程师们揭示平日里我们没有关心的另一些内容。同时也希望本次分享能揭示行业中的一些“潜规则”,让互联网行业的流量与带宽管理更为开放与简洁。
本次演讲视频录制于QCon杭州2011

专访Jeffrey Richter:Windows 8是微软的重中之重

Jeffrey Richter以其多本Windows核心技术的经典著作而闻名,同时,他深入掌握微软的.NET等一系列核心技术,2012年1月,Jeffrey Richter在北京接受了InfoQ中文站的专访,谈到Windows 8和WinRT编程,并就异步编程、Windows编程中的可扩展性、性能和安全性方面给出自己的建议。

应用云平台的可用性——从新浪SAE看云平台设计

云计算平台的可用性,相比传统互联网服务而言,更加复杂和困难,也更具有挑战性。本文借助新浪SAE云平台为读者讲述了云平台可用性的定义、如何打造高可用的平台,以及对云计算的用户提出了建议。

JVM定制改进 @ 淘宝

淘宝高度重视Java平台的健康发展,组建了一个团队专注于Java平台的底层部分的性能、功能与稳定性改进;工作主要基于OpenJDK中的HotSpot VM开展,其中一些通用的功能随后也会逐渐反馈给OpenJDK社区。希望能与使用Java平台开发应用的大家交流经验。
本次演讲视频录制于QCon杭州2011

"伤得起"的云计算应用——对云端应用之架构的思考

2011年4月21日至22日是值得云计算从业者纪念的日子。Amazon的IaaS服务出现故障,导致许多商业网站的服务中断,影响非常严重。作为云计算用户,我们需要思考的是,如何保证即便在云服务不可用的情况,我们的应用架构仍然能够屹立不倒?本文正是站在云计算用户的角度试图探讨这一问题。

让交付的速度跟上思考的速度

12人的技术团队,4组刀片服务器,每月20亿的访问量,每日1次准时部署,99.9%的可用性。这可能吗?当然。想知道如何做的吗?百姓网将与您分享他们在DevOps实践过程中的经验和技巧。
本次演讲视频录制于QCon杭州2011

架构之路——穿行在产品和业务之间

篱笆作为一家起源于社区的电子商务公司,反映到技术层面就是同时要面对产品和业务,以及经营战略的变化调整。如何在产品和业务的夹缝之间完成技术架构的抽象与平衡,寻找更有效的价值定位,这当中有些经验教训和个人感悟愿与众人分享。
本次演讲视频录制于QCon杭州2011

特性注入:成功三部曲

本文将对特性注入以及相关方法做一个扫盲性的介绍。我们会解释这个框架的关键要素,并附上实例来证实它们。为了让文章保持相对较短,我们不会深入到某个工具或方法中,而是会给出一些参考资料,以便大家做进一步的研究。