直白软件生命周期模型
软件生命周期模型的定义
同任何事物一样,一个软件产品或软件系统也要经历孕育、诞生、成长、成熟、衰亡等阶段,称为软件生命周期。软件生命周期是软件的产生直到报废的生命周期。为了使规模大、结构复杂和管理复杂的软件开发变的容易控制和管理,人们把整个软件生命周期划分为若干阶段,使得每个阶段有明确的任务,整理出软件生命周期模型。
瀑布模型
瀑布模型是一种线性顺序模型,正如它的名字一样,该模型将软件过程中的各种工作沿着一条线依顺序串连起来,形如瀑布一样。直白来说,就是在软件过程中,什么需求,什么功能,什么bug之类的都不变或者没有,顺顺利利的,按照着计划把软件开发了出来。当然,这很少见。
增量模型
增量模型就是有计划的改进软件,从一开始的给定需求,通过构造一系列的可执行版本来开发软件,一个版本一个版本的增加给定需求。直白地说,就是,在需求不变的情况下,把给定的需求分成几份,第一个版本实现第一份需求,第二个版本增加实现第二份需求,直至软件完成。当然每个版本都需要重复一部分过程(软件设计,软件编码,测试等等)
演化模型
演化模型,是适应性地改进软件,在软件开发过程中,开发出一系列的可执行版本来开发软件,不过和增量模型需求不改变不同,演化模型是突发性,随机性地按需求的改变而迭代版本。又直白的讲,演化模型就是,根据核心需求构造第一个版本,之后如果需求有变,就在之前的基础上进行迭代,构造出第二个版本出来。随着时间及需求的改变而迭代软件。
PS:每一次的迭代都可以看做是一个小的瀑布模型。
原型模型:即迭代次数为2的演化模型
螺旋模型
螺旋模型,将原型的迭代特征和线性顺序模型的控制的系统化的方面结合起来,并增加风险分析,使得软件得快速迭代开发成了可能。最后直白地讲,就是结合瀑布模型,演化模型和风险分析的模型咯。
最后配张图--