软件工程01:概念与本质(未完待续)

软件工程

软件工程01:概念与历史

 

目录

一、概念的提出与背景

二、发展的关键节点

三、软件开发的本质


 

一、概念的提出与背景

为什么要提出软件工程的概念?这事需要回顾到上个世纪60年,随着计算机的广泛应用,软件的生产率和软件质量满足不了社会发展的需要。软件产生的过程充满了太多的不可控,经常出现以下情况:

(1)软件成本不可控

大部分项目刚开始规划的时候预算比如说是10万就可以完成,但实际项目的投入成本往往是预算的好几倍,及时这样的情况下,能够真正的交付产品的还只是少数,更多的是没有任何有实质价值的可交付物。(现在的企业同样有这样的问题)

(2)软件质量不可控

沿着上面的内容接着说,很多项目可能投入了大量的财力人力之后,终于产出了一个可以交付的物品(可交付物)。但是产品交付之后,在使用过程中出现大量的问题,比如千年虫事件等等不计其数。(现在的企业同样有这样的问题)

(3)软件开发效率低

接着上面讲,大部分项目在规划的时候评估可能是5个月,但实际项目可能需要两年甚至不可能交付。(现在的企业同样有这样的问题)

人们通常把以上的现象统称为“软件危机”,正因为软件危机的存在,所以人们迫切的需要一种方式来避免软件危机的出现。软件危机产生的根本原因是人的问题,软件开发虽然有一些工具支持,但基本上还是依赖于开发人员的个人技能,缺乏可遵循的原理、原则、方法体系和有效的管理,使软件开发往往超出预期。

为了解决出现的“软件危机”,人们提出来软件工程的概念,希望以工程的原理、原则和方法进行软件开发(同比建筑工程,水利工程等)。

 

二、发展的关键节点

软件工程发展这么多年,整体可以划分为两个时期:

(1)20世界60年代末到80年代初

这一时期软件系统的规模扩大、复杂性增加并在关键领域得到广泛应用,这促进了软件的工程化发展。在该阶段主要围绕软件项目,开展了开发模型、开发方法和支持工具的研究。主要成果有:提出来瀑布模型,试图为开发人员提供有关活动组织方面的指导;开发了更多的过程语言和开发方法(Jackson方法、结构化方法等),试图为开发人员提供好的需求分析和设计手段,并开发了一些支持工具,如调试工具、测试工具等;出现各种管理方法(费用估算、文档复审)。

总结:前期主要研究系统实现技术,后期则开始关注软件质量和软件工程管理。

(2)20世纪80年代以来

 

三、软件开发的本质

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值