软件分为系统软件,应用软件和恶意软件。软件=程序 + 软件工程

软件危机的原因:(1) 用户需求不明确。           

                              2 缺乏正确的理论指导。     

                              3) 软件开发规模越来越大。   

                              4)软件开发复杂度越来越高。

软件工程的域:软件需求分析,软件设计,软件构建,软件测试,软件维护

软件的特点:复杂性,不可见性,易变性,服从性,非连续性,可移植,昂贵的,抽象性