软件工程是研究大规模程序设计方法、工具和管理的一门工程科学,其特点是按工程化的原则和方法来组织和规范软件开发过程,并对其中的各种方法进行研究,以提高软件产品的质量,降低软件开发的成本。软件工程要求用计算机和数学的方法来构造模型与算法,用工程科学来制定规范、设计模型和评估成本,用管理科学来控制工程的计划实施、资源分配和质量保证。