百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 文章教程 > 正文

10 个软件开发失败的示例_10 个软件开发失败的示例有哪些

yund56 2025-02-25 01:12 5 浏览

本文最初发表在 readwrite 网站,InfoQ 中文站翻译并分享。

软件在我们 21 世纪的生活中已经变得如此无处不在了,以至于我们常常认为它是理所当然的。我们总是假设它只在我们需要的时候起作用。或者,甚至更危险的是,我们无法完全理解错误、问题或失败的负面影响。

但并不是每个人都能对软件开发失败的恐惧无动于衷。

作为与这个行业紧密相关且对其未来发展有很好把握的人,我亲眼目睹了很多公司和开发人员遭受了软件开发缺陷和问题的困扰(有些本应是可以避免的,另一些则是突然冒出来的)。

因此,作为前段时间我发表的一篇关于人工智能失败示例文章的串联,在这篇文章中我将关注一些软件开发的失败,其中一些很严重,而另一些则相当幽默。希望它能让我们所有人都能看到,在软件开发时,有多少东西是危险的。

10 个真实的软件开发失败示例

我们倾向于认为大型组织、财富 100 强的企业和热门品牌永远不会像我们的小企业那样陷入困境。但事实上,他们有时也会搞砸。而且当搞砸时,风险往往更高,也更明显。

下面我们来看看现实生活中软件开发失败所造成的巨大影响和持久的涟漪:

希思罗机场中断

今年 2 月,进出伦敦希思罗机场(Heathrow airport)的 100 多个航班被取消、延误或以其他方式中断。原因是技术问题影响了登机显示屏和值机系统,因此,乘客们得不到所需的有关航班的重要信息。最重要的是,电子票(这在最近几年已变得相当普遍的)的功能也很有限。

虽然希思罗机场的发言人发表了一份声明,并表示他们无法透露更多关于导致系统受到影响的原因和 / 或哪些系统受到影响的细节,但他们承诺将继续密切监控其系统。(但我可以向你保证,尽管他们向公众发布陈词滥调时非常冷静,但在幕后却出现了混乱和喊叫。)

医用输液泵的致命缺陷

CareFusion 公司为全球一些顶级医院设计和制造了先进的医疗设备。不幸的是,他们也有相当数量的召回事件。其中有些比其他的更可怕。

2015 年,旨在自动向医院患者输送液体和药品的 CareFusion Alaris 输液泵出现了软件错误,导致该泵延迟输液。幸好这个问题很早就被发现了,否则后果可能会很可怕——可能导致意外过量用药。

但还不止这些。CareFusion 的这一周变得更糟了,仅仅四天之后,他们不得不发布一个一级召回通告,召回整个生产线的单独呼吸机。问题是什么呢?可能是一个能导致病人窒息的软件缺陷。

F-35 战斗机出现故障

几年前,一架 F-35 联合攻击战斗机的一个软件故障被确认存在漏洞。该漏洞实际上会导致飞机在编队飞行时不能正确地探测并锁定了错误的目标。

正如该公司解释的那样,每架编队飞行的飞机必须从不同角度探测到目标。但该软件无法区分一个目标和多个目标。从本质上讲,F-35 战斗机看到的是双目标。(在高速高海拔编队飞行时,这不是我们想要的。)

优步软件漏洞抓“骗子”

好吧,让我们暂时休息一下。这是一个非常有趣的故事(除非你是故事的主人公)。

在法国,优步(Uber)应用程序中的一个漏洞竟然将一名男子与另一名女子的婚外情泄露给了他的妻子。这最终导致了一场离婚,并让优步面临 4500 万美元的诉讼。

该漏洞会导致优步通知被推送到某个设备上,即使你在某个特定设备上注销了账户。这个漏洞实际上向法国人的妻子发送几条通知,清楚地列出了他与情妇约会公寓的地点。据称,妻子之所以收到这些通知,是因为她的丈夫曾经用她的手机打过优步。

软件漏洞辅助银行抢劫

2016 年,一群高级黑客 / 窃贼劫持了孟加拉国银行系统,并通过四笔不同的交易成功转移了超过 8,100 万美元。他们还有 8.7 亿美元的资金在排队转移,但一个拼写错误通知了银行,导致这些额外的转帐被取消。

但有趣的是:

根据孟加拉国银行当局发布的消息,其中设置了一台打印机可以自动打印所有交易的读数据。但碰巧系统中出现了一个小故障(我认为这可能是由盗贼引起的)中断了打印过程。因此,直到数个延迟之后,才追查到转账收据。这给了窃贼足够的时间“逃跑”并掩盖他们的踪迹。

TSB 银行宕机,将客户拒之门外

当你把钱存入银行时,你希望能随时随地访问它。但是,可惜的是,技术并不是总能提供这种自由。尽管过去你曾遇到过网上银行的小故障,但我敢打赌,你从来没有遇到过这样的故障。

2018 年 4 月,TSB 银行在对软件进行“简单”升级后,导致了银行大规模的宕机,因此,数百万 TSB 银行客户的账户被锁定。系统升级是有计划的,但显然计划的不够好。

在 TSB 启动新系统后,客户立即开始遇到登录问题。向用户显示了其他人的帐户详细信息。也有关于不准确的信贷和债务的报告。许多客户的账户被锁定了两周才恢复访问。

医院计算机故障

同样在 2018 年,威尔士国家卫生服务系统(Wales National Health Service,NHS)经历了一次大规模的计算机故障,导致了患者文件的访问问题。在许多医院和设施里,医生无法看到患者的档案。这意味着他们无法获得 X 光检查结果或血常规。这也导致了预约的积压,因为医生看不了病人,而且系统又不允许取消预约。

一个价值 4 亿美元的软件故障

为了将公司出售给特斯拉(Tesla),SolarCity 公司聘请了一家投资银行。但直到签署了 26 亿美元的协议之后,拉扎德银行(Lazard Ltd.)才发现,他们实际上低估了客户约 4 亿美元的价值。虽然这个错误对 SolarCity 的股东来说为时已晚,但特斯拉确实提出了要提供一些股票来弥补估值上的差异。

导弹打击误报

你可能还记得这件事,因为这在当时是个大新闻。早在 2018 年,夏威夷市民就接到了全州范围内的警报,要求他们立即采取行动,以应对来袭的弹道导弹袭击。你可以想象,人们惊慌失措,想尽一切办法来“保护”自己。不幸的是(或者我认为应该庆幸的是)这是一个误报。

整个崩溃过程中最大的问题是,半个多小时之后警报才被撤销。虽然后来的调查显示问题是由人为错误造成的,但他们确实在夏威夷应急管理机构的警报发起软件中发现了一些非常令人不安的缺陷。

丰田汽车事故

几年前,丰田汽车的司机们开始报告一个令人困扰的问题:他们的汽车在没有实际踩油门的情况下就在加速。经过几次事故的仔细调查之后,人们发现这些危险的问题是由系统中的软件错误引起的。

据报道,安装在这些丰田汽车上的软件存在各种各样的问题,如内存损坏、安全系统失效、内存处理错误以及单点系统故障。丰田最终召回了数百万辆汽车,最终公司的股价也在几周内下跌了 20%。

是时候要认真对待软件开发了

你害怕了吗?(我开玩笑的……)

本文的目的并不是要阻止你的脚步,让你远离软件。而是想要提醒你,软件是不完美的。同时,找到合适的软件开发公司对项目的成功至关重要。

软件开发人员多如牛毛,单优秀的软件开发人员却很少。有时,把自己的工作外包出去是可以的,但要尽职尽责,并寻找一个既熟练又全面的个人或团队。一旦你找到了他们,就不要让他们离开!

你可以完全隔离你的业务风险,但你也要最大限度地保护下行。一个好的软件开发人员能带你走很长的一段路去实现这个目标。

原文链接:

https://readwrite.com/2020/08/20/software-development-failure/

关注我并转发此篇文章,私信我“领取资料”,即可免费获得InfoQ价值4999元迷你书!

相关推荐

重生之我在头条学html网页编程,这一世我一定学好,成为编程高手

有人要问了html是什么东西?就是用来设计网页的一种语言会不会很难啊?这是很多朋友担心的,我告诉大家这是最简单最基础也最容易学习的一款入门级语言,当初我也是经常因为学不会C语言而苦恼自从学习了html...

如何在网页3D CAD中创建一个三维管道模型

前言在网页CAD中进行三维建模是一项有趣的任务。本文将介绍如何利用mxcad3d来创建三维管道模型。该工具提供了一系列三维建模功能的API,使得建立复杂的管道结构变得简单直观。安装在此之前,需要先安装...

网页模版如何用

网页模版已成为如今网站建设的核心工具。随着互联网需求的增长,越来越多的企业和组织需要建立自己的网站,以展示他们的品牌和服务。在这个过程中,网页模版为他们提供了一种简单而高效的方式来构建网站。所谓网页模...

AI嵌入式Flowcode编程网页开发人员入门指南

WebDeveloper允许使用FlowcodeIDE环境开发具有交互性的网页。可以在2D面板中添加特殊网页组件,以创建网页的视觉表示,并可以使用流程图添加交互功能。它的引入意味着Flowcod...

用Deepseek制作网页版的汉诺塔游戏保姆级教程

在deepseek中输入:“帮我做一个网页版的汉诺塔演示游戏,游戏包含2层、3层、4层、5层的汉诺塔游戏演示,制作自动求解演示按钮,点击按钮就可以生成出步数,同时自动演示最优解动画。”最后把生成的程序...

TaskBuilder前端页面CSS样式规则设置

在前端页面设计器内,点击底部的“CSS样式”选项卡,可以打开CSS样式设计器,在此查看和设计当前页面的CSS样式规则,如下图所示:3.3.6.1引入外部样式文件如果要在页面中引入外部CSS文件,可以点...

使用 Python、FastHTML 和 Uvicorn 构建简单的博客网站

FastHTML是2024年7月推出的PythonWeb框架,是一个简单但功能强大的框架,允许开发人员使用纯Python构建Web应用程序。(不需要复杂的模板引擎)。Fast...

用AI可以生成HTML网页了,很多初级前端都要失业了

即使你完全不懂html,javascript,css,也能做出漂亮的网页,这在以前是不可想象的,而现在确是可行的,因为有这样一个项目:openUI。openUI不仅仅能生成html页面,还能生成自适应...

python原始套接字socket下载http网页文件到txt

python原始套接字socket下载http网页文件到txtimportsocketdefdownload_webpage(url,output_file):try:...

高效排版:实现DeepSeek生成内容Word格式排版并导...

高效排版:实现DeepSeek生成内容Word格式排版并导出的经典方法,步骤简洁高效:DeepSeek生成内容复制出来容易出现乱码,下面介绍一种比较高效简单的方法!一、核心三步法1.调整模型模式在D...

打工人福音!3分钟教你学会word精美排版

昨天大熊介绍了word一键排版的三种办法,今天我们来详细讲讲第二种办法,用html代码实现一键排版,然后再导出pdf实现精美效果。打工人,打工魂,你是不是也有以下烦恼?下面是我经过多次和Deepsee...

使用 HTML 创建可折叠的交互式组件,一行 JS 代...

如果你想创建一个可折叠的交互式组件,使用<details>元素即可,一行JavaScript也不用写。<details>组件定义了一个可折叠的容器,它的第一个元素必须...

新手小白1分钟学会Word——文档的编辑1.1

天空一声巨响,迷人的我闪亮登场,亲爱的家人们,周末好呀!话不多说,咱们继续开干!昨天说到本节还有个小尾巴,那咱们就把这个小尾巴了结了,然后开始新篇章~四、保存文档我们对文档编辑完之后最重要的一步就...

超强!DeepSeek+HTML制作数据看板,老板看了都点赞

DeepSeek以极强的推理能力,支持生成各种代码,比如Python、SQL、Matlab、JS、HTML等,你可以拿这些代码放到编译器里,就能直接跑出结果,比如机器学习算法、exe应用、可视化图表、...

什么是Tailwind CSS

什么是TailwindCSSTailwindCSS是一个实用优先(Utility-First)的CSS框架,其核心思想是通过直接在HTML中组合预定义的类名来快速构建界面样式,无需编写传...