写点什么

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

2008 年 6 月 17 日

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

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

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

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

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

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

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

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

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

2008 年 6 月 17 日 09:06459
用户头像

发布了 61 篇内容, 共 48531 次阅读, 收获喜欢 0 次。

关注

评论

发布
暂无评论
发现更多内容

架构师训练营第四周作业

李日盛

架构

架构师训练营 -week08-作业

大刘

极客大学架构师训练营

《迅雷链精品课》第四课:区块链技术发展趋势

迅雷链

区块链

从 Android 到 Java:如何从不同视角解决问题?

Java架构师迁哥

架构师训练营第四周学习笔记

李日盛

笔记

Maven 进阶

少平

Nacos配置中心和服务的注册发现

牛初九

微服务 Spring Cloud nacos spring cloud alibaba

程序员在编程过程中,经常会在代码中使用到“where 1=1”,这是为什么呢?

小Q

Java 数据库 学习 架构 面试

区块链技术发展需加强核心技术自主创新

CECBC区块链专委会

区块链技术

30秒系列 | 巧用百度翻译提取图片中的文字

山下青城

图片识别 30秒 小技能

28天刷完这份内容多大349页的阿里Java面试通关手册,我成功闯进了字节跳动!

Java架构之路

Java 程序员 架构 面试 编程语言

数字货币是数字经济发展基石

CECBC区块链专委会

数字货币

解密猫晚直播技术:如何保障全球200多个国家和地区同时在线狂欢?

阿里云视频云

你应该知道的数仓安全——默认权限实现共享schema

华为云开发者社区

数据库 数据 schema

“双11”正成为区块链场景应用“练兵场”

CECBC区块链专委会

大数据

linux下定位多线程内存越界问题实践总结

小Q

Java Linux 学习 面试 多线程

一周信创舆情观察(11.2~11.8)

统小信uos

Maven 入门

少平

Java

iOS底层系统小结

shirley

ios

架构师训练营 1 期 -- 第八周笔记

曾彪彪

极客大学架构师训练营

“先加密后签名”是不是安全?看完这篇就秒懂!

华为云开发者社区

安全 加密 签名

如何提升存储性能之IO模型和AIO大揭秘

焱融科技

数据 io 存储 焱融科技 分布式文件存储

如果说数据是推动自动驾驶的原动力,那么存储扮演什么角色?

焱融科技

自动驾驶 数据 存储 文件存储 自动驾驶训练

【得物技术】机器学习在图形验证码识别上的应用

得物技术

学习 算法 测试 图像识别 验证码

python+flask编写一个简单的登录接口例子

测试人生路

Python 接口测试

58个基础案例+2个综合案例带你探索微服务的神秘世界

小Q

Java 学习 编程 面试 开发

隧道视野效应 - 认知局限

石云升

教育 认知 隧道视野效应

【涂鸦物联网足迹】涂鸦云平台接口列表—智能门锁

IoT云工坊

人工智能 云计算 物联网 API 智能门锁

手把手教你使用ModelArts的自动学习识别毒蘑菇分类

华为云开发者社区

学习 AI 图像识别

太牛了,腾讯T4Java技术专家手撸的Redis技术笔记,一周内下载量已突破30W。

Java架构之路

Java 程序员 架构 面试 编程语言

2020年区块链发展及产业升级交流会成功举办

WX13823153201

InfoQ 极客传媒开发者生态共创计划线上发布会

InfoQ 极客传媒开发者生态共创计划线上发布会

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