文档介绍:第一讲软件与软件工程
1
提纲
什么是软件
软件的发展
软件的特点
软件的分类
软件语言
2. 软件工程
2
什么是软件? 教材P1
软件指计算机系统中的程序及其文档
程序是计算任务的处理对象和处理规则的描述
计算任务:任何以计算机为处理工具的任务
处理对象:数据(如数据、文字、图形、图像、声音等,它们只是表示,而无含义)或信息(数据及有关的含义)
处理规则一般指处理的动作和步骤。
文档是为了便于了解程序所需的阐明性资料,文档一般是给人看的
提示:以后概念可在书上划下来,以便考前复习
3
软件发展阶段教材P2-3
程序设计阶段——50至60年代
程序系统阶段——60至70年代
软件工程阶段——70年代以后
4
程序设计阶段——50至60年代
从计算机问世到实用的高级程序语言出现前
存储容量比较小,运算速度比较慢
采用个体工作方式,用低级语言编写程序
应用领域主要是以数值数据处理为主的科学计算,其特点是输入、输出量较小
衡量程序质量的标准主要是功效,即运行时间省、占用内存小(1981年,比尔·盖茨声称,个人电脑的内存只需要640KB即可,没有人需要超过这个数字)
主要研究内容是科学计算程序、服务性程序和程序库,研究对象是顺序程序
5
程序系统阶段——60至70年代
从实用的高级程序语言出现到软件工程出现前
应用领域包括数据处理(非数值数据),其特点是计算量不大,但输入、输出量却较大
高速主机与低速外围设备的矛盾突出,出现了操作系统、并发程序、数据库及其管理系统
20世纪60年代初提出了软件一词,开始认识到文档的重要性
研究高级程序设计语言、编译程序、操作系统、支持编程的工具及其各种应用软件
工作方式逐步从个体方式转向合作方式
出现软件危机
6
软件工程阶段——70年代以后
从软件工程出现到现在
硬件向巨型机和微型机两个方向发展,出现了计算机网络,软件方面提出了软件工程,出现了“计算机辅助软件工程(CASE)”
计算机的应用领域渗透到各个业务领域,出现了嵌入式应用,其特点是受制于它所嵌入的宿主系统
开发方式逐渐由个体合作转向工程方式
软件工程方面的研究主要包括如今开发模型、软件开发方法及技术、软件工具与环境、软件过程、软件自动化系统等等
软件方面研究以智能化、自动化、集成化、并行化、以及自然化为标志的软件开发新技术
7
软件的特点教材P3
软件是一种逻辑实体,而不是具体的物理实体,开发人员智力的体现
软件的生产与硬件不同,在它的开发过程中没有明显的制造过程
在软件的运行和使用期间,没有硬件那样的机械磨损、老化问题
8
9
软件的其他特点
软件的开发和运行常受到计算机系统的限制,对计算机系统有着不同程度的依赖性
软件的开发至今尚未摆脱手工艺的开发方式
软件本身是复杂的
实际问题的复杂性
程序逻辑结构的复杂性
软件成本相当昂贵–(参考下图)
相当多的软件工作涉及到社会因素
10