- 1、本文档共66页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
西电软件技术基础课件1-概述
概述
软件技术基础(一)
西安电子科技大学电子工程学院林杰
1
课程简介
先修课程:
C语言程序设计
教材:
《软件技术基础》
周大为等
西安电子科技大学出版社
2
课程简介
学时安排:上课40学时+上机16学时
考核:
80% 期末考试成绩,闭卷
20%的上机、平时作业,考勤
教师:林杰
Cell phone: Email: jlin@mail.xidian.edu.cn
3
本节课的基本内容概要
软件的基本概念
软件技术
程序设计技术及程序性能
数据结构的概念与算法的性质
设计程序所需的基础知识和基本能力
4
1.1 软件的基本概念
问题:软件=计算机程序?
软件的定义:
计算机程序是能够完成预定功能和性能的可执行的指令
软件是能够完成预定功能和性能的可执行的指令、使得程序能够适当地操作信息的数据结构、描述程序操作和使用的文档的集合。
Software = program + data + document
5
软件与硬件相比较
生产过程不同:软件是开发或工程化形成,没有明显的制作过程
6
软件与硬件相比较
故障率变化不同
硬件有零件可替换,软件无备用零件,软件的维护更加麻烦
7
软件与硬件相比较
软件复用性差:
软件大部分都是自定义
硬件可以通过已有的构件组装而成
8
软件的分类(功能)
软件
系统软件
应用软件
操作系统
网络系统
语言编译器
工具软件
管理软件
实时软件
科学计算、数据处理
嵌入式软件
人工智能软件
专用领域软件
9
系统软件
定义:是支持计算机系统正常运行并实现用户操作的那部分软件。是为系统提供基本功能服务的程序的集合。
包括操作系统、编译程序、诊断程序、系统服务程序、语言处理程序、数据库管理系统和网络管理系统等
系统软件的主要特征是:
与硬件有很强的交互性
能对资源共享进行调度管理
能解决并发操作处理中存在的协调问题
其中的数据结构复杂,外部接口多样化,便于用户反复使用
10
应用软件
定义:应用软件是为满足用户不同领域、不同问题的应用需求而提供的那部分软件。是直接服务于用户的软件系统。
它可以拓宽计算机系统的应用领域,放大硬件的功能。
应用软件具有无限丰富和美好的开发前景。
如:电路仿真软件Pspice、Matlab等均属于应用软件。
11
软件的发展-1
第一阶段:20世纪60年代中期以前,早期阶段
软件开发无计划、无管理;
每类应用自行设计,应用的范围有限;
编写者负责修改,无文档
第二阶段:20世纪60年代中期到20世纪70年代
多道程序设计、多用户系统引入人机交互的新概念,打开了软件和硬件配合的新层次;
实时系统大大提升软件系统的速度
在线存储的发展导致第一代数据库管理系统的出现
软件作坊的出现和软件产品的使用,产生了巨大的经济效益
软件危机的出现
“三无”
12
软件的发展-2
第三阶段:20世纪70年代中期后的10年
分布式系统对软件开发提出了更高的要求
微处理器的出现和广泛应用,使得智能产品纷纷面世,计算机的应用真正成为大众化的应用。
第四阶段:20世纪80年代后
计算机体系结构从主机环境转变为分布的客户机/服务器环境。
软件产业在国民经济中举足轻重的作用
面向对象技术取代了传统软件开发方法
专家系统和人工智能软件进入实际应用
13
软件危机概念
软件危机出现于20 世纪60 年代末
1968年北大西洋公约组织的计算机科学家在联邦德国召开的国际学术会议上第一次提出了“软件危机”(software crisis)这个名词。
软件危机是计算机软件在它的开发和维护过程中所遇到的一系列严重问题,包含两个方面问题:
如何开发软件,以满足不断增长,日趋复杂的需求?
如何维护数量不断膨胀的已有软件?
14
15
软件危机的表现
1对软件开发成本和进度的估计常常很不准确。开发成本超出预算,实际进度比预定计划一再拖延的现象并不罕见。
2用户对“已完成的”软件系统不满意的现象经常发生。
3 软件产品的质量往往靠不住。 Bug一大堆,Patch一个接一个。
4软件常常是不可维护的。
5 软件通常没有适当的文档资料。计算机软件不仅仅是程序,还应该有一整套文档资料。
6软件成本在计算机系统总成本中所占的比例逐年上升。
7软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。
软件成本的变化
软件成本在计算机系统总成本中所占的比例
16
17
软件危机的原因
客观原因:软件本身特点,软件的规模庞大、复杂性高
实际问题的复杂性
程序逻辑结构的复杂性
主观原因:与软件开发和维护的方法不正确有关,主要表现为:
忽视软件开发前期的需求分析;
开发过程没有统一的、规范的方法论的指导,文档资料不齐全,忽视人与人的交流;
忽视测试阶段的工作,提交用户的
文档评论(0)