软件工程 (Software Engineering,简称为SE)是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。它涉及到程序设计语言,数据库,软件开发工具,系统平台,标准,设计模式等方面。

作为一名软件开发人员,必须要掌握以下十个非常重要的理念:

1.软件开发终是由人来执行和完成而不是机器。

2.增量开发是必须的。

3.迭代开发是必须的。

4.增加一个缺陷的成本是延长了开发周期。

5.软件开发过程的瀑布模型是重要的内核(每一个增量或迭代都是一个小瀑布)。

6.精确的软件估算需要增加整个软件系统的开发周期。

7.强大的重用是重用任何可复用的事物而不仅仅是代码复用。

8.风险管理给软件开发过程提供重要的洞察力。

9.不同类型和规模的软件需要不同类型的开发方法论。

10.软件工程体系和指南是软件开发人员的重要资产。