软件的定义及特点
软件(中国大陆及香港用语,台湾称作软体,英文:Software)是一系列按照特定顺序组织的计算机数据和指令的集合。一般来讲软件被划分为系统软件、应用软件和介于这两者之间的中间件。软件并不只是包括可以在计算机(这里的计算机是指广义的计算机)上运行的电脑程序,与这些电脑程序相关的文档一般也被认为是软件的一部分
特点
- 无形的,没有物理形态,只能通过运行状况来了解功能、特性、和质量
- 软件渗透了大量的脑力劳动,人的逻辑思维、智能活动和技术水平是软件产品的关键
- 软件不会像硬件一样老化磨损,但存在缺陷维护和技术更新
- 软件的开发和运行必须依赖于特定的计算机系统环境,对于硬件有依赖性,为了减少依赖,开发中提出了软件的可移植性
- 软件具有可复用性,软件开发出来很容易被复制,从而形成多个副本
软件的种类
- 系统软件
- 支撑软件
- 应用软件
软件工程的起源
早期计算机程序
在1946年计算机刚诞生时,人们采用机器码编制程序,根本没有独立的软件的概念。 机器码指令只是为了驱动计算机硬件工作,就像人们调节电视机、录像机、洗衣机等家用电器的按钮一样。 1947年,冯诺依曼首先提出用流程图描述计算机的运行过程,才使人们认识到程序设计是完全不同于硬件研制的另一项工作。从此以后,软件的开发和研究才开始独立地进行。
现在人们认为
在信息产业中,微电子是基础,计算机和网络是载体,软件是核心
软件开发的三个阶段
个人程序时期
软件作坊时期
软件工程时期
软件危机
软件工程的定义
软件工程是研究和应用如何以系统性的、规范化的、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来
软件开发的本质和基本手段
- 软件开发的含义
- 实现映射的基本手段:建模 模型
软件工程框架
目标
活动
需求、设计、实现、确认、支持
原则
- 选择适宜的开发模型
- 提供高质量工程支持
- 重视开发过程的管理
软件工程框架的作用
- <目标,原则,活动>