软件工程的目标是在规定的时间和预算内开发出高质量的软件,然而实现这个目标却是一件非常困难的事,只有建立规范的软件开发过程,并持续不断地加以改进,才能管理和控制软件产品的质量。软件过程有“粘合”性质:软件过程是软件工程人员为了获得软件产品而在软件工具的支持下实施的一系列软件工程活动。一般的软件过程包括问题提出、软件需求规格说明、软件设计、软件实现、软件确认和软件演化等基本活动。在软件过程的不同阶段,有可能会产生各种不同的软件制品,诸如需求规格说明、设计说明、源程序与构件、测试用例、用户手册以及各种开发管理文档等。软件过程模型描述的是软件过程的整体框架,它是软件过程的一种抽象表示。如瀑布模型、快速原型模型、增量模型、螺旋模型、形式化方法模型以及基于组件的开发模型。