1、软件工程关注于大型程序的构造
2、软件工程的中心课题是控制复杂性
软件所解决的问题十分复杂,通常不得不把问题分解,使得分解出的每个部分是可以理解的,而各个部分之间保持简单的通信关系。这并不能降低问题的整体复杂性,但是却可使它变得可以管理。
3、软件经常变化
软件系统交付使用后仍然需要耗费成本,而且在开发过程中必须考虑吧软件将来可能的变化。
4、开发软件的效率非常重要
软件工程的一个重要课题就是,寻求开发与维护软件的更好更有效的方法和工具,
5、和谐的合作是开发的关键
为了有效地合作,必须明确地规定每个人的责任和相互通信的方法。纪律是成功地完成软件开发项目的一个关键。
6、软件必须有效地支持它的用户
这意味着必须仔细地调研用户,以确定适当的功能需求、可用性要求及其他质量要求(可靠性、响应时间等)。这还意味着,软件开发不仅应该提交软件产品,而且应该写出用户手册和培训材料。
7、在软件工程领域中是由具有一种文化背景的人替具有另一种文化背景的人
通常软件开发者通过访谈、阅读书面文件等方法了解用户需要的工作流程,然后用软件实现了这个工作流程。但是,决定软件系统成功与否的关键:用户是否真正遵守这个工作流程。
作为开发者我们需要学习用户所需求领域的一些专业知识,理解开发用户真正的需求。