D 软件并不只是包括可以在计算机上运行的程序,与这些程序相关的文档一般也被认为是软件的一部分,即软件是包括程序、数据及其相关文档的完整集合。其中,程序是按事先设计的功能和性能要求执行的指令序列;数据是使程序能正常操纵信息的数据结构;文档是与程序开发、维护和使用有关的图文材料。软件具有如下特点:软件是一种逻辑实体,而不是具体的物理实体;软件的生产与硬件不同,它没有明显的制造过程;在软件的运行和使用期间,没有硬件那样的机械磨损和老化问题;软件的开发和运行常常受到计算机系统的限制,对计算机系统有着不同程度的依赖性;软件的开发至今尚未完全摆脱手工艺的开发方式;软件本身是复杂的;软件成本相当昂贵;相当多的软件工作涉及社会因素。