软件开发过程变迁史

20世纪50年代:

软件开发与计算机硬件生产和调试集成在一起。仅仅在硬件工程中加入了编码、测试等相关的软件开发活动。

20世纪60年代:

开发人员逐渐意识到软件易于修改、容易复制产生新副本等不同于硬件的特点,开始采用特定的方法开发软件,形成软件工艺的概念。典型的开发方法是编程加修复。

20世纪80-90年代:

研究人员提出“软件过程等重要的概念也是软件”,揭示了开发优秀软件过程重要性,引入了过程需求、过程架构、过程变更等概念。1991年CMU SEI研发了一系列评估软件开发能力成熟度的方法框架CMM,用于评估和改进软件过程。2000年,CMM发展为CMMI(能力成熟度模型集成)。

20世纪90年代后期:

为了应变多变的需求,出现了多种具有快速迭代反馈、适应需求变化等相对轻量级特点的敏捷方法,与传统的注重计划、控制变更的方法形成对比。敏捷方法强调更快地交付高价值的产品,形成了极限编程、scrum等方法为代表的多种敏捷开发实践。

进入21世纪以后:

传统的重量级软件过程和新兴的敏捷软件过程都在不同领域得到了发展。大量软件开发需求随着互联网的普及朝着快速、易变的方向发展,因此敏捷方法被广泛应用。同时敏捷方法也被应用到了软件运行维护方面。2009年DevOpsDays会议提出了DevOps。

近年来:

对软件过程探讨更加聚焦于软件开发效能和质量的提升方法。各大企业不断推进持续集成、持续交付在软件开发中的使用,形成了多种颇具成效的软件过程实践。

你可能感兴趣的:(软件工程平时作业,课程设计)