一、什么是软件
软件:一组对象或项目所形成的一个“配置”,由程序、文档和数据部分构成。
程序:可被计算机硬件理解并执行的一组指令,提供期望的功能和性能。
数据:程序能正常操纵信息的数据结构。
文档:与程序开发、维护和使用有关的图文材料。
二、软件所处的外部环境
三、软件的四大特征
1. 复杂性:软件要解决的现实问题通常很复杂,数据、状态、逻辑关系的可能组合导致了软件本身的复杂性。软件无法以“制造”的方式被生产,只能采用手工开发方式,这是一种认为抽象化的智能活动,与人的水平密切相关,人类思维的不确定性导致了开发过程的复杂性。
2. 不可见性:尚未完成的软件是看不见的,无法像产品一样充分展现其结构,使得人们在沟通上面临极大的困难,难于精确地刻画和度量。
3. 易变性:软件所应用的环境由人群、法规、硬件设备、应用领域等因素汇集而成,而这些因素皆会频繁快速地变化。
4. 一致性:各子系统的接口必须协同一致,而随着时间和环境的演变,要维持这样的一致性通常十分困难。
四、软件的分类
系统软件:操作系统、编译器、数据库、集成开发环境
应用软件:商业软件、个人软件、工程和科学软件
开发方式上:商业软件、开源软件
存在形式上:嵌入式软件、单机软件、分布式软件;移动终端软件;基于Web的软件;服务形态的软件(SaaS)。
五、什么是