软件开发的基本过程,可以简单地分为需求分析、设计(概要设计、详细设计)、编程、软件测试和软件维护等阶段,即通常所说的软件生命周期。

 
   目前主要软件开发模型有:

   · 瀑布模型
   · 原型模型
   · 快速应用开发模型(RAD模型)
   · 螺旋模型(增量与迭代的特例)
   · 增量模型和迭代模型
   · 构建组装模型
   · 并发模型
   · 测试驱动型(TDD)的软件开发
   · Rational 统一过程模型和UML
   · 协议开发——形式描述技术FDT
   · 敏捷开发——极限编程模型
   · 基于组件的开发模型
   · 形式化方法模型