今天,软件已经成为科学和技术各个领域、工业和社会各个部门不可缺少的重要部分。软件技术的发展远远落后于硬件技术,软件开发依然面临着过分依赖人工、软件无法重用、开发大量重复和生产率低下等问题。软件是人类创造出来的逻辑产物,有待于探索新的理论与实践。
  软件工程是一门旨在开发满足用户需求、及时交付、不超过预算和无故障的软件的学科,它以质量保证为基础,包括过程、方法和工具三个要素。软件工程涵盖了软件生存周期的所有阶段,包括计划、分析、设计、实现、测试、集成、交付、维护等。
  软件开发模型是对软件过程的建模,常见的开发模型包括瀑布模型、快速原型模型、增量模型、螺旋模型等,每个软件开发组织应该选择适合于该组织的软件开发模型。