第一篇:冶金工业管道失效案例研究论文
1冶金工业管道失效案例分析及其预防方法探究的意义
管道是一种新型运输的一种手段,它的性质和公路、铁路、航空、水运的性质是一样的,都是运输的方式之一。相对于对液体、气体以及流体的运输,管道运输主要有三大优势,即:安全性高、效率快、消耗低。随着我国的石油工业等业务的不断发展,管道的使用越来越多,使用的范围也越来越广,在近几年来,我国管道的发展掀起了高潮,尤其是在西气东输策略的提出后表现的更为明显。在2005年的时候,我国的油气管道的长度高达4700公里左右,管道的覆盖基本上形成了横贯东西、纵贯南北的格局。就目前来看,我国的油气管道达到了11300多公里。管道所受到的影响因素主要有人文影响、气候影响、自然灾害以及交通影响,在管道管理的过程中,所需要的人力物力的投入比较的大,管理难度增加了不少,技术水平、管理水平还需要提高和改善。管道运输是一种特殊的运输手段,通过管道可以把资源生产地和炼化的企业以及需求客户连接在一起,在管道工作的时候,会存在很大的风险,尤其是在地里、人文环境以及气候比较复杂的地方,管道所存在的危险系数更加的大。管道的安全系数不仅影响企业是否正常的运行,还影响社会的经济发展和社会稳定的状况,对周边的人群的安全造成很大的威胁,对环境也有一定的威胁。所以,对于管道失效所产生的原因进行分析,对改进管道,提高管道的安全性的研究有这重大的意义。
2国内外研究现状
自从管道运输的使用以来,各个国家及其相关的政府对于管道安全的问题越来越重视,国外对于管道失效的评价和预防的问题已经有了40多年的研究史,对于管道的失效原因进行了调查,对于管道的失效模式进行了分析,对于管道事故的预防措施进行了研究。就目前而言,许多的发达国家对于管道的建设和运行的过程有了相对有效的管理和监督,我国也在不对的对管道安全体系进行研究,在一定的程度上,也有了相对的措施[2]。我国对于管道安全的研究比较的晚,在1995年的时候,我国一些相关的专家在西方专家研究的经验上才开始进行研究与探讨,主要是对管道运行中所存在的危险的管理、管道失效事故所发生的原因以及相应的改进措施进行研究。
3管道失效模式常用的诊断方法
对于管道失效模式常用的诊断方法主要有六种方法,这六种方法主要是故障树分析法、模糊评价法、模式识别法、指数法、风险概率分析法、专家系统评价法。下面,将对这六种方法分别进行阐明。
3.1故障树分析法
这种方法主要是从事故的故障开始的,一层一层的分析事故所发生的原因,一直分析到不可以再分解才结束,而在分析的过程中,就形成了树状的逻辑结构图。这种分析法主要是计算失效的事件所发生的概率。
3.2模糊评价法
这种分析法是在综合评判的基础上所进行的,在管道失效事故发生后,工作人员首先要对管道失效所受到的所有因素的影响做出一个总的评价。一般情况下,事故的评价主要是从两个方面进行的,即:定量和定性,所以评价就具有不确定性和模糊性。
3.3模式识别法
对于事物或者现象的信息进行处理、分析,从而对事故进行描述、辨认和解释,这个过程就是所谓的模式识别法。在是识别的时候,主要是对系统的状态进行分析。
3.4指数法
它是基于概率的一种风险评价方法。对于影响事故所发生的因素进行假设,设想状况是最坏的,这个分析存在主观性和相对性。就目前而言,我们可以把事故的原因归为第三方破坏、设计缺陷和腐蚀以及操作过程中存在失误。
3.5风险概率分析法
使用这种分析法,可以考虑管道在设计时的各种因素,并且对其进行防御措施,从而避免失效事故发生。
3.6专家系统分析法
这种分析方法是相关的专家有一定的知识储备和经验,从而对这个领域作出决策。
4国内外管道失效案例分析
4.1埋地钢质管道失效原因的分类
美国将管道运输所发生的事故的原因主要分为七种,这七种原因主要是第三方破坏、人为误操作、腐蚀、自然灾害以及材料失效、其他外力损伤和不明原因。下面就对这七种原因进行说明。
(1)第三方破坏。这个原因主要是工作人员在挖管道时不小心挖坏或者损坏了,还有别的外力损伤。而这种破坏主要是打孔盗窃、管道占压、在管道上方或者旁边施工、雨水及流水长期的对管道冲刷。
(2)人为误操作。这个原因主要是工作人员在操作的过程中操作不当或者出现失误而造成事故发生,它主要是工作人员在工作时出现疏忽,或者工作人员的操作方法不当以及技术存在缺陷。
(3)腐蚀。对于管道的腐蚀,一般情况下可大致分为两种,即内腐蚀和外腐蚀。外腐蚀主要表现为人为的保护不当、土壤腐蚀、防腐的绝缘层失去效果等;内腐蚀主要是管道在运输时运送的液体(气体或者流体)的温度、流速以及物体本身就具有腐蚀性,从而造成管道腐蚀。
(4)自然灾害。对于自言灾害对于管道所造成的威胁是不可避免的,自然灾害一旦发生,就会导致管道破裂。从而引起火灾等重大事故,这种自然灾害主要有山体滑坡、洪水和地震等。
(5)材料失效。有的管道材料在生产时不合格,材料不合格,在加工的过程中加工不当,或者是在运输材料、安装时出现纰漏或误差。
(6)其他外力损伤及不明原因。
4.2国外埋地钢质管道失效的原因及其分析
在美国,有一种长达47.5*104千米的配气管道,这种配气管道主要是用来输送天然气的,这种管道对于我国来说,相当于我国质量监督总局所规定的GB1级燃气管道。对于重大事故的定义,美国理解为:造成的经济损失达到50000美元以上(包括50000美元);有人员受伤或者导致人员伤亡;浓度高的液体的泄露达到了5桶以上(包含5桶);引起火灾、爆炸或者环境污染。PHMSA对于美国从1998-2008年,这二十年间的重大的管道运输过程中所发生的重大事故进行了统计,并且对于管道失效的原因进行了具体的分析。我们可以看出,不同管道所发生事故的原因是有所不同的。不同的国家,不同的地区,管道所发生的事故的原因是不尽相同的,加拿大管道事故发横的主要原因是由于腐蚀所造成的,而欧洲管道事故所发生的原因主要是由于外部原因所造成的。
4.3我国管道失效案例及其分析
4.3.1管道失效案例一2009年的时候,我国某钢厂的蒸汽管道发生了一场重大事故,蒸汽管道在运行的时候,管道的一个焊接处发生了断裂,导致管道完全的断开了,并且管道还给发生了变形,管道附近的支架也受到了影响。工作人员在事故发生后对管道进行了检查,发现焊接处在拉断后,发生断裂处的距离比较的大,还可以发现管道的焊接处工作做得不到位,有的地方没有焊接,从而说明焊接工作不合格。通过对管道失效的原因进行了分析,工作人员得出:造成这次管道失效事故的主要原因是管道在焊接时焊接工作不合格,从而导致管道焊接处发生破裂。
4.3.2管道失效事故案例二在2007年10月的时候,某钢厂的氧化管道经过设计、安装后就开始使用了。这个管道的弯管段的材质是25钢,直管段的材质是20钢,管道在使用的时候是在常温下进行操作的,而这个管道所能承受的压力是1.9MPa。在2008年5月的时候,工作人员发现这个管道的一个焊接处有破裂的现象,从而导致了氧气的泄露。幸亏工作人员发现的比较早,并且及时的做了补救措施,从而才避免了一场重大事故的发生。之后,工作人员便进行了一系列的分析,发现管道焊接处的内壁焊缝的余高比较的高。
第二篇:冶金工业压力管道管理若干规定
冶金工业压力管道管理若干规定
第一章总则
第一条为了加强压力管道的安全技术管理,确保压力管道的安全运行,防止人身伤亡和国家财产损失,根据国家工业管道管理规程规范,结合冶金行业特点,制定本办法。
第二条本办法适用于冶金工业中的压力管道,其范围为:
1.压力等于或大于0.1MPa的氧气、氮气、氩气及其它惰性气体管道;(惰性气体就是随着浓度的变化“增压或减压”而对人体的伤害)。
2.压力大于或等于0.1MPa的煤气、天然气管道;
3.压力小于0.1MPa,直径等于、大于100毫米的煤气、天然气管道;
4.压力等于、大于0.1MPa的蒸汽管道;
5.压力等于、大于0.1MPa,直径大于、等于80毫米的空气管道;
第二章企业管理职责
第三条各企业对压力管道的安全技术管理负有全面责任,应加强组织领导,分工明确,认真落实以下职责:
1.认真贯彻执公司的管理和规章制度,学习本部门制定的介质压力管道安全知识,正确有序操作管道的阀门及维护工作,确保安全生产,定期检查执行情况;
2.负责组织制定本企业压力管道的规程和规章制度,并监督 1
所属单位执行情况;
3.了解管道介质名称、压力、对人身的安全等级,在安装、检修、检修、改造中的应急措施。
4.掌握压力管道的安全技术状况,及时组织安排重大隐患的处理,主要压力管道检修计划的编制和审核、监督或组织实施,有权制止违章作业和违章指挥行为;
5.负责或参与对本企业操作、维修人员进行岗位技术培训,积极推行标准化操作和标准化管理。
6.负责组织对压力管道重大事故的抢修、事故原因分析、整改和提出预防措施,按有关事故管理办法及时向上级主管部门报告事故情况。
第三章压力音道设计和施工管理
氧气管道的施工、焊接、维修必须有专业的特种资质的施工单位进行,任何维修班组或个人不得擅自改造和施工。
氧气、氮气管道设计应满足冶金工业部或本公司的使用条件。
第四章压力管道的施工,尤其是中高压、易燃、易爆和有毒介质的管道,在施工前,必须告知本部门负责人,有专业技术负责人进行安全分析确定签字后、方可施工,并做好相应的安全措施及专业人员的监护。
第四章压力管道的运行与维修
第十一条压力管道的运行管理,应严格执行“三大规程”、1、按时对压力管进行泄漏、防腐、保温、支架基础、安全附件
及色标方面的检查,较大的隐患缺陷,应及时安排检修计划限期解决。
2、各班组检查或巡查人员应根据本企业的情况配备必要的检测仪器和设备。
3、压力管道必须定期进行吹扫或清洗,不同介质的周期如下:
氧气管3一5年清扫;
煤气管道结合大中修时清扫;
空气管道6一8年清扫;
污水管8一10年清扫;
其他介质配合主体设备检修时清扫。
第十五条压力管道停、送时,必须按有关技术规定制定切实可行的作业方案,经单位主要负责人签字后方可执行。作业过程要统一指挥,严格执行监护确认制,同时应采取有效的安全防护措施。
第十六条任何单位未经设备主管部门批准不得随意改变压力管道结构或搭接支管。管道上的安全阀、压力表、减压装置、自动保护联锁装置等安全附件,应按规定定期校验,确保功能完好有效。
第五章压力管道的金属监察
第十七条压力管道必须定期进行无损检测方面的金属监察,特别是中温中压、易燃易爆和有毒介质的管道,压力大于、等于
0.3MPa以上的管道应与主体设备或管道的大中修进行无损检测的金属监察。
第三篇:冶金工业压力管道管理若干规定(最终版)
冶金工业压力管道管理若干规定
第一章 总则
第一条 为了加强压力管道的安全技术管理,确保压力管道的安全运行,防止人身伤亡和国家财产损失,根据国家工业管道管理规程规范,结合冶金行业特点,制定本办法。
第二条 本办法适用于冶金工业中的压力管道,其范围为:
1.压力等于或大于0.1MPa的氧气、氮气、氢气及其它惰性气体管道;
2.压力大于或等于0.1MPa的煤气、天然气管道;
3.压力小于0.1MPa,直径等于、大于100毫米的煤气、天然气管道;
4.压力等于、大于0.1MPa的蒸汽管道;
5.压力等于、大于0.1MPa,直径大于、等于80毫米的空气管道;
6.化工产品气体管道按国家劳动部的标准(指有毒气体)输送最高压力大于、等于0.1MPa的下述介质:
(1)毒性极度、高度危害气体。
(2)火灾危险程度甲类、乙类。
(3)一级酸、碱性腐蚀品。
7.压力等于、大于0.1MPa,直径等于、大于200毫米的水管道(非金属管道除外);
8.压力等于、大于0.8MPa,直径等于、大于80毫米的重油管道。
第二章 企业管理职责
第三条 各企业对压力管道的安全技术管理负有全面责任,应加强组织领导,分工明确,认真落实以下职责:
1.认真贯彻执行国家和行业主管部门有关压力管道的法规、标准、规定等,及时准确地批转国家各部门颁发的有关文件。规程、规定、标准等,组织有关职能部门定期检查执行
情况;
2.负责组织制定本企业压力管道的规程和规章制度,并监督所属单位执行情况;
3.组织或参与压力管道的设计、安装、检修、更新改造及报废等有关方案的审查、重要工程的竣工验收;
4.掌握压力管道的安全技术状况,及时组织安排重大隐患的处理,主要压力管道检修计划的编制和审核、监督或组织实施,有权制止违章作业和违章指挥行为;
5.负责或参与对本企业操作、维修人员进行岗位技术培训,积极推行标准化操作和标准化管理,以及现代化管理的方法和手段;
6.负责监督建立压力管道的技术资料、图纸和档案;
7.负责组织对压力管道重大事故的抢修、事故原因分析、整改和提出预防措施,按有关事故管理办法及时向上级主管部门报告事故情况。
第三章 压力音道设计和施工管理
第四条 压力管道的设计必须具有国家有关部门认定设计资格的单位承担。设什时应严格遵守下列规定:
1.压力管道设计遵循《机械设计手册》第32篇第三章、第六章的标准,同时应符合GB235一82《工业管道施工及验收规范》、GB236一82《现场设备工业管道焊接工程施工及验收规范》的有关规定;
2.不同介质的管道除执行第六条第:款的规定外,还应满足有关专业规程、标准的具体要求:
氧气、氖气、氮气管道设计应满足冶金工业部(88)冶安环字第856号《氧气安全规程》和TJ30一78《氧气站设计规范》的要求;
煤气管道设什应满足GB6228一86《工业企业煤气安全规程》、《冶金工业动力机械技术规程》第十四章煤气管道的要求;
蒸汽管道和高温热水管道的设计,应满足GB242一82《采暖卫生工程施工及验收规范》、《冶金工业动力机械技术规程》第十三章热力管道和《电力建设施工验收技术规范》;空气管道的设计应满足TJ29一78《压缩空气站设计规范》的要求。
第五条 压力管道的设计,尤其是中高压、易燃、易爆和有毒介质管道的设计,在设计图上必须有设计、校对和审核人的签字。总图上必须有单位技术负责人的批准签字,加盖动
力管道设什资格印章。若变更设计应出具技术负责人签字的修改文件。
第六条 压力管道的设计单位,应向用户提供设计说明书、设计总图、受压元件和强度计算书等,用户要求提供其它设计文件,应在合同中说明。
第七条 国外引进设备的压力管道设计图纸,必须由国内具有设计资格的单位审核认可后,方能使用。
第八条 压力管道的施工,必须由持有本专业施工资质资格的单位施工。施工作业应严格执行有关规范、标准、设计图纸及技术条件。
第九条 对压力管道的施焊作业,应制定焊接工艺评定标准及焊接工艺规程,并严肃工艺纪律,必须由持有焊工合格证的人员操作。焊后的无损探伤检验也必须由相应的具有无损检验资格的人员进行。
第十条 施工单位必须全面加强施工质量管理,坚持自检与专检相结合的原则,确保施工质量。凡列入公司(或厂)计划内的管道工程竣工时,甲乙双方按时办理有关工程资料的交接手续,经使用单位、设计主管部门和施工质量监督部门共同验收签字后,方可投入使用。
第四章 压力管道的运行与维修
第十一条 压力管道的运行管理,应严格执行“三大规程”、交接班制度和岗位责任制,按规定、标准认真做好运行记录。
第十二条 按时对压力管进行泄漏、防腐、保温、支架基础、安全附件及色标方面的检查,较大的隐患缺陷,应及时安排检修计划限期解决。
第十三条 各企业应根据本企业的情况配备必要的检测仪器和设备。
第十四条 压力管道必须定期进行吹扫或清洗,不同介质的周期如下:
氧气管3一5年清扫;
煤气管道结合大中修时清扫;
空气管道6一8年清扫;
污水管8一10年清扫;
其他介质配合主体设备检修时清扫。
第十五条 压力管道停、送时,必须按有关技术规定制定切实可行的作业方案,经单位主要负责人签字后方可执行。作业过程要统一指挥,严格执行监护确认制,同时应采取有效的安全防护措施。
第十六条 任何单位未经设备主管部门批准不得随意改变压力管道结构或搭接支管。管道上的安全阀、压力表、减压装置、自动保护联锁装置等安全附件,应按规定定期校验,确保功能完好有效。
第五章 压力管道的金属监察
第十七条 压力管道必须定期进行无损检测方面的金属监察,特别是中温中压、易燃易爆和有毒介质的管道,压力大于、等于0.3MPa以上的管道应与主体设备或管道的大中修进行无损检测的金属监察。
第十八条 压力管道的金属监察应执行和参照国家或行业部门的有关规范标准。
第十九条 金属监察的主要内容:管道焊缝、腐蚀状况、变形情况、耐压强度、壁厚、弯头、弯管椭圆度、石墨化脆裂等。
有防护或保温层的管道,应在大中修时采取局部或重要部位抽查的方式进行无损检验。第二十条 凡承担压力管道无损检验的单位和人员,必须具有法定资格,检验中严格执行相关的技术法规和标准,并在规定限期内向用户提供完整的检验报告和有关资料。
第二十一条 冶金系统具有无损检验能力或资格站(所),应加强对压力管道方面法规和检验技术的培训,逐步建立健全无损检验的质量保证体系和管理制度,培训符合压力管道检验特点的队伍。
第六章 压力管道的档案管理和事故管理
第二十二条 各企业应根据需要配备必要的专职或兼职档案管理人员。档案应具备下列资料:
1.压力管道名称、编号、规格、输送介质、压力、温度、流量、起点、终点和大中修周期;
2.原始设计图纸;
3.材质报告单及合格证;
4.安装的有关资料;
5.有关试验数据;
6.竣工验收资料;
7.有关技术鉴定或评估报告;
8.金属监察记录和检验报告。
第二十三条 压力管道事故按冶金部(90)冶机字第656号文管理,造成人身伤亡的事故应按国家和冶金部的有关规定上报安全主管部门。
第二十四条 本办法自1995年7月1日起执行,解释权属冶金工业部生产协调司。
第四篇:材料失效分析论文
材料的疲劳断裂失效与预防
摘要:本文从材料疲劳断裂的研究发展,破坏特点及断口分析材料疲劳断裂的原因,并介绍材料疲劳断裂的预防。
关键词: 疲劳断裂 断口 预防
前言
作为科技支柱之一的材料技术的发展直接关系到国家经济、科技的发展水平,材料失效问题普遍存在于各类材料中,它直接影响着产品的质量,关系到企业的信誉和生存。材料失效分析的建立是发达国家工业革命的一个重要起点,材料的失效分析和预测预防工作在经济发展中占有十分重要的地位,对于材料失效问题的判断和解决能力,代表了一个国家的科学技术发展水平和管理水平。磨损、腐蚀和断裂是材料失效的3种主要形式。材料的疲劳断裂失效的研究和发展
材料的疲劳与断裂研究试图寻找材料宏观疲劳断裂行为与微观组织形貌的关系。试图探求材料疲劳与断裂的微观机制。
金属(非金属)材料在应力或应变的反复作用下所发生的性能变化叫疲劳;虽然在一般情况下,这个术语特指那些导致开裂或破坏的性能变化。
机械构件由于材料疲劳损伤导致的断裂往往没有明显的征兆,因此经常引起巨大的灾难性事故,造成人民生命财产损失。因此各个先进的工业化国家都非常重视疲劳与断裂的研究。
材料疲劳与断裂的研究经历了几个阶段。目前,人们已经认识到在循环载荷作用下,金属多晶材料的许多晶粒内部会出现滑移带。这些滑移带会在疲劳形变中继续变化,并导致形成裂纹,而试样的突然破坏是由某条起主导作用的裂纹向前扩展造成的。现在,人们可以较好的定量描述裂纹扩展的速率,但是,用材料显微组织的特性可靠的预测其宏观的疲劳断裂性能,还有大量的极具挑战性的工作需要开展,特别是在新材料迅猛发展的时代。
虽然恒定循环应力幅作用下的疲劳破坏是疲劳基本研究的主要内容,但由于工程应用中的服役条件不可避免的含有变幅载荷谱,苛刻环境,低温或高温及多轴应力状态,因此建立能够处理这些复杂服役条件下的可靠寿命预测模型是疲劳研究中最棘手的挑战之一。材料疲劳与断裂的研究是材料科学与工程研究领域中的一个重要分支。
疲劳破坏的特点
尽管疲劳载荷有各种类型,但它们都有一些共同的特点。第一,断裂时并无明显的宏观塑性变形,断裂前没有明显的 预兆,而是突然地破坏。
第二,引起疲劳断裂的应力很低,常常低于静载时的屈服强 度。
第三,疲劳破坏能清楚地显示出裂纹的发生、扩展和最后断裂三个组成部份。
疲劳断裂断口组成
(1)疲劳源:由于材料质量缺陷、加工缺陷等原因,使得零件局部地区应力集中,这些区域即为疲劳裂纹产生之处,成为疲劳源。零件表面的裂纹源多是表面上有油孔、过渡圆角、台阶、粗大刀痕等应力集中处在交变应力作用下形成的微裂纹;零件近表面材料内部由于冶炼和冷、热加工的缺陷、晶体滑移和晶界缺陷等在交变应力作用下产生的微型纹。
(2)裂纹扩展区:裂纹产生之后,随着应力循环周期增加,裂纹逐渐扩展成贝壳状或光滑状条纹,即为疲劳辉纹。由于载荷的间断和改变,裂纹时而扩展,时而停滞。零件裂开处的两个面时而闭合,时而分开,以致在两个断面上形成“贝纹状”弧线。这种弧线就叫疲劳裂纹前沿线,其大小与工作应力有关,工作应力小,裂纹寿命长,断口大。
(3)最后断裂区域:或称脆断区,由于疲劳裂纹的扩展,使得零件的有效断面越来越小,应力逐步增加,当最终超过材料强度极限时,零件瞬间突然断裂,断口晶粒较粗大,与发暗的裂纹扩展区明显不同。脆性材料呈结晶状断口;塑性材料呈纤维状,断口呈灰色。
疲劳断裂断口分析
疲劳断口上的三个区域的状况与零件工作时的载荷、应力状态、零件材料性能及加工情况等有关。根据断口形貌可以定性分析零件所受载荷、材料性能和寿命等,有助于分析零件疲劳断裂产生的原因:
(1)疲劳源大多分布于零件表面,一般有1-2个。
(2)疲劳裂纹扩展呈贝纹状时,贝纹细密、间距小,表示材料抗疲劳性能好,疲劳强度高。贝纹稀疏、间距大。表示材料疲劳强度低。(3)最后断裂区所占面积很大,甚至超过断面的一半以上,说明零件严重过载;若所占面积较小或小于断面一半时,说明零件无过载或过载很小。
在相同条件下,高应力状态零件的最后断裂区的面积大于低应力状态零件的最后断裂区的面积;承受单向弯曲的零件仅有l个疲劳源,承受双向弯曲的零件有2个疲劳源;承受单向弯曲的零件与承受扭转弯曲的零件的最后断裂区的形状不同,后者的疲劳源与最后断裂区的相对位置发生偏转,并由于零件上缺口应力集中的影响较大,使最后断裂面积很小且与零件断面呈同心状。
疲劳断裂的预防
延缓疲劳断裂的时间,延缓金属零件疲劳断裂的萌生时间的措施及方法主要有喷完强化、细化材料的晶粒尺寸及通过形变热处理使晶界成锯齿状或使晶粒定向排列并与受力方向垂直等。
降低疲劳裂纹的扩展率,对于一定的材料及一定形状的金属零件,当其已经产生疲劳裂纹后为了防止和降低疲劳裂纹的扩展,可采用以下措施:对板材零件上的表面局部裂纹可采取止裂孔法,即在裂纹扩展前沿钻孔已组织裂纹进一步扩展;对于零件内表面裂纹可采取扎孔法进行消除;对于表面局部裂纹可采取刮磨修理法等是行之有效的。除此之外,对于零件局部表面裂纹,也可以采用局部增加有效截面或补金属条等措施以降低应力水平,从而达到组织裂纹继续扩展之目的。
正确的选择材料和制定热处理工艺十分重要,合理选择材料的先决条件是设计者充分了解各种材料的各种热学性能和所适用的工作条件。
第五篇:软件测试失效案例简介
http://book.51cto.com/art/200909/151890.htm
失效案例简介
软件出现的问题有多种形式,会产生各种各样的后果。下面是一些例子。
受医用线性加速器的过度辐射,造成6人严重烧伤或死亡。经查,管理加速器的软件包含了一系列程序错误,由于软件结构极差,错误再现困难,也使得机器生产者不愿意收回机器。
火星气候轨道航天器撞到了火星的表面。调查表明,由于测试不充分,没有发现程序中的一个简单的量纲转换错误。
几架“黑鹰”直升机撞毁,多人罹难。调查表明,灾难原因是无线电信号与机载计算机系统相互干扰。
称做CONFIRM的旅游预订系统在经过1.25亿美元的投资后流产。
F22战机的一个软件故障(边界值测试的漏洞)。2007年2月,美军F22战斗机从夏威夷飞往日本,途径日期变更线(东经180度,西经0度)时,软件缺陷爆发,飞机上的全球定位系统失灵,电脑系统崩溃。飞行员无法确定战机的位置,返回夏威夷的希卡姆空军基地。洛·马丁公司对软件进行了维护,48小时后提供了新的软件版本。
2007年北京机场信息系统瘫痪。2007年10月10日13时28分,设在北京首都国际机场的中国民航信息网络股份公司离港系统突然发生故障,短短50分钟内,北京、广州、深圳、长沙机场至少84个离港航班发生延误,受其影响的城市包括上海、长春、南京、南宁、温州、成都、郑州、太原、呼和浩特、重庆、兰州、香港、东京等。该系统是由美国某家公司研发,此事件引发信息系统安全的担忧。
2008北京奥运会售票系统于2007年10月30日上午11时瘫痪:北京奥运会的指定独家票务供应商-北京歌华特玛捷票务有限公司成立于2006年9月,由美国特玛捷公司、中体产业股份有限公司及北京歌华文化发展集团三家出资构建而成。售票系统瘫痪事件发生后,公众普遍质疑歌华特玛捷公司是否具备承担2008北京奥运会的票务销售能力。
用户常常在软件开发初期就发现软件不是他们所期待的。在开发软件之前,需要进行必要的需求分析。充分的需求分析要求软件开发人员与用户进行良好的沟通,充分理解用户需求才能开发出更有用的产品。虽然这些软件故障的后果程度不一,但可以肯定的是,通过严格的软件工程可以极大地降低故障及因此而引发的种种恶果。
1.6.2失效原因
软件失效主要是由于开发组织没有采用好的软件工程方法。尽管软件开发人员知道不好的软件开发可能造成可怕的后果,但为什么大家还不能广泛采用软件工程的方法呢?原因是管理和开发队伍对软件工程早期的重要性的认识严重不足,认为代码的行数是项目进展的唯一尺度,任何与生成代码无关的事情都不是进展,因而也不值得花费时间和资源。
引起软件失效的原因包括:
1)软件复杂度;
2)非线性(多线程)软件;
3)对意外的输入或条件估计不足;
4)与外设接口动作异常;
5)硬件或操作系统与软件不兼容;
6)管理不善;
7)测试不充分;
8)粗心大意;
9)想走捷径;
10)不向管理部门通报问题;
11)风险分析不充分;
12)数据输入错误;
13)错误的输出解释;
14)对软件过于自信;
15)缺乏生产高质量软件的市场或法律压力。
以上是引起软件失效的原因列表,对我们很有帮助,我们应该谨记。考虑的潜在软件失效原因越多,系统就越不易出现失效。例如,如果完全按照一种软件工程方法学来开发软件,假设用户是未经过充分训练的,那么就应考虑可能会出现数据完整性错误,否则,系统可能是没什么用的。
下面来看几个实际的软件开发中的灾难故事,目的是让你充分理解软件开发中和谐工作方式的重要性,不论你是初学者还是计算机专家,均能获益。这些故事也可以让你为争取在你的工作环境下采用好的软件工程方法提供有力证据。
1.6.3 CONFIRM
CONFIRM是一个雄心勃勃的软件开发计划,它的目标是集成飞机订票、汽车出租和旅馆预订以及相关的决策支持机制为一体。它是由美国航空公司的子公司AMRIS提出的,项目开发了3年半,耗资1.25亿美元,结果生产了一个无用的系统。
CONFIRM的惨败虽然没有危及任何人的生命,但是如此巨大的经济损失最后都转嫁到了消费者身上。通过这种高的消费代价,大众觉察到如此灾难性软件开发的后果。为了更好地评估避免如此巨大经济损失而应采取的各种策略,将有关的大事列表如下:
1)1987年10月,Marriott,Hilton,Budget Rent-a-Car和AMRIS成立联盟,决定开发和运营CONFIRM,并让AMRIS管理开发。项目计划分两个阶段,计划于1992年6月完工。
2)1988年5月24日,AMRIS发布新闻,宣布CONFIRM设计阶段开始。
3)1988年12月30日,AMRIS向联盟呈报了系统基础设计,Marriott认为系统的功能规约还不够充分,用户需求还不够细,开发人员还不能据此进行开发。
4)1989年3月,AMRIS呈报一份开发计划,结果也未被联盟成员们接受。
5)1989年8月,AMRIS向联盟成员提交了项目经费预算。基于这一预算,其他成员决定继续维持该项目。后来的事实表明,这一预算对人员和操作成本的估计存在严重不足。
6)1989年9月,AMRIS终于完成了一个令联盟满意的设计,同时预算也增长至7260万美元。
7)1990年1月,AMRIS未能按第一合同期限完成终端屏幕的设计。
8)1990年2月,第二个项目里程碑即系统商务领域分析也未能如期完成。AMRIS承认有13周的滞后,但仍声明系统可以在原定的期限完成。
9)1991年2月,AMRIS向联盟成员提交了一份修改过的开发计划,要到1993年3月为Marriott提供完整功能的系统。后来Marriott声称其实AMRIS知道它不可能在新的期限内完成系统,但还是强迫雇员人为地延长工作时间表,否则会遭到解雇或重新调遣。AMRIS也在修改的开发计划中提高了开发的价钱,升至9200万美元。
10)1991年10月,AMRIS总裁以及20余名雇员辞职。
11)1992年5月1日,AMRIS的新总裁认可“系统接口和数据库不足以提供必要的性能和可靠性”,他还将这种状况归究于AMRIS对项目状态的错误认识。
12)最后,于1992年7月,联盟在花费了1.25亿美元后,不堪重负,终于解散。
大量的报刊对CONFIRM项目的无能的管理和技术上的幼稚等进行了无情的嘲讽。不过我们关心的是,如何利用适当的软件工程方法来避免这种灾难。虽然这个例子涉及一个重要的职业道德问题,但首先还是让我们来分析软件失效的根源。
很明显,AMRIS关于项目状态的管理是有问题的。项目是如何发展到管理部门被迫掩盖真相的呢其实在项目的早期就有一些不好的征兆,AMRIS是不能开发一个可行的产品的;第二个征兆是,经过7个月的努力后,AMRIS提交的设计文档技术上是不能令人满意的。这样的一个设计意味着AMRIS没有能力正确估计自己设计的质量。另外,AMRIS的行动表明它并不重视交付设计的质量,只重视初始设计的按期完成。第二次提交的设计再次遭到拒绝,这也再一次表明AMRIS确实太无能,不可能提出一个充分的开发计划。
以上大事记似乎反复强调了AMRIS不能提供高质量的软件工程报告,这意味着基础的软件开发阶段的有效性值得质疑。另外,某种基础的风险分析应能帮助联盟成员识别至少两种高风险目标。这些风险目标应能提醒联盟成员进行某些测验项目,以确定这些目标的可行性。CONFIRM系统的一个高风险目标是需要与联盟伙伴的现有系统连接,这样的连接要求CONFIRM同异构的软硬件能互操作;第二个高风险目标是需要将预订系统同每种商务领域的决策支持系统集成。初始时对这些目标的复杂性作一下分析,就会得到一个更合理的开发进度计划。
1.6.4 电话和通信
今天,人们很难找到比远程电话网应用技术更好的例子。它通过光纤将遍及世界各地的人们可靠地、即时地连在一起,这不能不说是技术上的奇迹。AT&T拥有多达115个交换站,将遍及世界的当地电话公司连接起来,每天可处理1.15亿次美国境内的呼叫和150万次的海外呼叫,每个交换站每小时能处理将近75万次呼叫。
一个交换站,又名4ESS,其实是一个庞大的专用计算机,它运行一个包含4百万行代码的软件。该软件需要仔细处理电话两端的连接、通话费以及其他许多与电话相关的服务,为维护该软件需要雇佣150人以上。有几次事故曾中断了电话服务,原因就是该软件过于复杂。
1990年1月15日的下午,AT&T的全球电话网络的管理人员发现显示网络状态的视频监视器上不断出现红色报警信号。报警信号说明网络不能完成呼叫,接下来的9个小时内,有近6500万个电话没有接通,造成大约6000万美元的损失。尽管系统的管理人员设法在9小时内解决了问题,但是要查明原因恐怕需要好几天。
大约在系统瘫痪前一个月,软件进行了升级,以允许某种类型的消息更快地通过系统。在升级软件的一小段代码中发现了一个错误,该错误在严格的测试和一个月的试用中没有被发现,因为那几行代码只在网络特别忙而发生了特定的事件序列时才会调用。各单个交换站工作都正常,但交换站之间的消息传递的快速步调引起系统反复重启动。当运行升级软件的交换站数减少到80台左右时,网络似乎又恢复正常。这时,其余的交换站仍然运行旧版软件,可以处理尽可能多的呼叫。
这种类型的“网络隐错”确实很难发现和想到,要在一个测试用的系统上精确模拟和预料真实世界中的网络通信是十分困难的。事实上,AT&T确实也在它的测试网络上测试了该软件,但没能发现该问题。
与首次瘫痪相隔6个月,又遇到了另一个控制交换站的软件失效。在1991年6月到7月间的三个星期内,8次电话不通事故影响了大约2000万电话客户。不通的原因难以捉摸,而且,本地电话公司之间似乎也不愿意彼此透露如何修复问题的有关信息。最终,由BellCore贝尔通信研究公司经过6个月的调查,认定引起这一问题的原因仍然是这个交换机软件。
这些事故的原因是制造交换机的软硬件公司DSC通信公司对软件的一次修改不当造成的。1991年4月,DSC通信公司发布了交换机的新版本。很快,华盛顿、宾夕法尼亚和北卡罗来纳州的用户碰到了这一问题。每次瘫痪首先由一个交换机的一个小问题引起,该问题与信号传输点(Signal Transfer Point,STP)有关。然后这一问题会触发大量的错误消息,结果导致STP被关闭,进而导致邻近系统的瘫痪。
最后,BellCore发现问题出在新版软件中的一个三位错:一个应是二进制数D(1101)的数误为二进制数60110)。在交换算法中,这三位错导致交换机允许错误消息饱和。通过网络,一个系统出错导致其他系统崩溃。正常情况下,饱和的交换机只简单地通告其他系统出现了拥塞情况。DSC通信公司很快发布了该软件的补丁,专门处理这一问题。对源程序作了广泛的测试之后发现,一个程序员对源程序中的三行代码作了修改,其中一行包含低级的打字错误,软件发布前,该段代码没有经过测试。
你也许会庆幸通信问题似乎已成历史,因为以上两个例子均发生在20世纪90代初。然而,事实上近年来也发生了大量的这类失效。例如,一位美国西部技师为科罗拉多州安装一个新的区域码软件时,不经意地关闭了该区域的911系统,结果一位在Longmont的名叫Thomas Carlock的男士死于心脏病,发病时他的妻子不能拨通911急救服务。当时,她至少试过3次,结果每次都没有回答,没有振铃,也没有线路忙信号。最后,她查了号码本,直接呼叫了一个急救室的电话,然后救护车才发往她的住地。在事故追查的过程中,技师一直不清楚911会有问题,Longmont急救人员也是直到事故发生后一个小时才知道911有问题的。按照美国西部的一份报告的说法,公司“已承诺采取措施确保软件安装不会影响到911服务”。
1.6.5阿丽亚娜5型火箭
1996年6月4日,阿丽亚娜(Ariane)5型火箭在法属圭亚那库鲁航天中心首次发射。当火箭离开发射台升空30秒时,距地面约4000米,天空中传来两声巨大的爆炸声并出现一
团桔黄色的巨大火球,火箭碎块带着火星撒落在直径约两公里的地面上。与阿丽亚娜5型火箭一同化为灰烬的还有4颗太阳风观察卫星。这是世界航天史上又一大悲剧。
阿丽亚娜5型火箭由欧洲航天局研制,火箭高52.7米,重740吨,研制费用为70亿美元,研制时间1985-1996年,参研人员约万人。事故原因报道:阿丽亚娜5型火箭采用阿丽亚娜4型火箭初始定位软件。软件不适应物理环境的变化。阿丽亚娜5型火箭起飞推力15900KN,重量740吨,阿丽亚娜4型火箭起飞推力5400KN,重量474吨。阿5型火箭加速度=21.5g,阿4型火箭加速度=11.4g。阿丽亚娜5型火箭加速度值输入到计算机系统的整型加速度值产生上溢出,以加速度为参数的速度、位置计算错误,导致惯性导航系统对火箭控制失效,程序只得进入异常处理模块,引爆自毁。箭载两套计算机系统由于硬件、软件完全相同,没有达到软件容错的目的。
导航系统负责参照基于惯性参考系统输入的特定轨道来计算航线矫正。一个惯性参考系统让一个移动体(例如火箭)仅根据来自加速仪和回转仪的传感器数据来计算其位置,也就是说,其计算不参考外部世界的数据。该惯性系统首先必须初始化起始坐标,用火箭的初始瞄准来校准其轴。导航系统在发射前,进行校对计算。为了把地球自转产生的影响计算在内,校对计算的结果需要不断更新。校准计算很复杂,大约需要45分钟才能完成。一旦火箭发射后,校准数据将传给飞行导航系统。根据设计,校准计算在数据传给导航系统后,还将继续50秒。这一决定使导弹发射前的倒计数得以在对准数据传出后、在发动机被点火之前终止,而不必重新启动校准计算(即,不必重新启动45分钟的计算周期)。当发射成功时,校准轮在起飞后为下一个40秒产生待处理的数据。
Ariane5的计算机系统与Ariane4不同,电子仪器多了一倍。有两个惯性参考系统来计算火箭的位置,两台计算机将计划中的轨道和实际轨道进行比较,并用两套控制仪器来控制火箭。如果某个构件出了问题,后备系统将随时接替现行系统。
专为地面设计的校准系统,使用16位字来存储水平速度(对由于风和地球运行产生的位移计算而言,16位是绰绰有余的)。飞行30秒后,Ariane5的水平速度计算产生了溢出,由此引出了一种意外,通过关掉机载计算机来处理这一问题,并把控制权交给后备系统。
讨论:由于校准系统没有得到充分测试,尽管它经过成千上万次测试,但没有一次测试包括了实际轨道上的测试。导航系统被单独地进行了测试。系统项目组制定测试计划,导航系统的构造者执行测试。系统项目组没有意识到在飞行中的校准会引起主处理机的关闭。这一实例充分说明了构件组与系统组缺乏沟通。
教训:军用软件的运行依赖于支撑环境,武器平台的变化可能影响军用软件采集数据的精度、范围和对系统的控制。军用软件重用必须重新进行系统论证和系统测试/试验,决不能想当然。