- 1、本文档共23页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
主要内容 什么是软件 ? 软件有哪些特征? 软件如何分类? 软件开发技术发展史 什么是软件危机? 什么是软件生命周期? 软件的基本概念 什么是软件? 计算机系统由计算机硬件和软件构成。 计算机神奇的功能是在软件的“指挥”下创造出来的。 软件是各种程序和有关资料的总称。 程序是: 为实现特定目标或解决特定问题而用计算机语言编写的命令序列的集合 是人们求解问题的逻辑思维活动的代码化描述 程序的最重要的目的是: 便于阅读、交流 Roger S. Pressman 对软件的认识 “计算机软件已经成为一种驱动力。它是进行商业决策的引擎;它是现代科学研究和工程问题寻求解答的基础;它也是鉴别现代产品和服务的关键因素。它被嵌入在各类系统中:交通、医疗、电信、军事、工业生产过程、娱乐、办公、……难以穷举。软件在现代社会中确实是必不可少的。而我们在进入21世纪,软件将成为从基础教育到基因工程的所有领域新进展的驱动器。” 软件的特征 软件是逻辑产品 软件产品质量的体现方式不同 软件产品的生命周期和失败曲线不同 软件产品的成本构成不同 大多数软件仍然是定制生产的 软件产品的不同属性 按功能划分软件分类 系统软件 是支持计算机系统正常运行并实现用户操作的那部分软件。 一般是在计算机系统购买时随机携带的,也可以根据需要另行安装。 系统软件的主要特征是: 与硬件有很强的交互性 能对资源共享进行调度管理 能解决并发操作处理中存在的协调问题 其中的数据结构复杂,外部接口多样化,便于用户反复使用 系统软件例 ①操作系统(Operating System) ②网络系统(Network System) ③语言编译系统( Language Compiler) ④通信软件(Communications Software) ⑤ 工具软件(Tools Software) 应用软件 应用软件是为满足用户不同领域、不同问题的应用需求而提供的那部分软件。 它可以拓宽计算机系统的应用领域,放大硬件的功能。 应用软件具有无限丰富和美好的开发前景。 应用软件例 ① 事务处理软件 ② 实时软件 ③ 科学计算和数据处理软件 ④ 嵌入式软件 ⑤人工智能软件 按规模划分软件分类 软件开发技术发展史 应用驱动是推进软件发展进程的主线: 从软件发展早期的按个人意愿编写代码,到按软件工程的理论生产大型应用系统; 从手工作坊式的封闭性制作到按标准制式、大工业生产的开放系统; 从注重个人精雕细琢地编写代码的技巧到注重工程项目的管理和开发团队的协作; 从为特定应用定制设计到以复用为目标的组件式开发; 从由少数软件天才的编程艺术到由广大用户直接参与的应用开发。 阶段划分 半个多世纪以来,软件及软件开发技术在理论、观念、目标及技术方法等方面都发生了很大变化。 以10年左右为间隔,划分为五个阶段。详见表1-2。 讨论每个时期软件开发技术的特点,包括软件开发技术处理的对象、用途、目的、开发方法、开发工具、发展状况、技术突破、理论成就及目标等。 软件危机 从20世纪60年代开始,软件界经常遭受软件危机的袭扰。 以IBM公司的OS/360操作系统为例。它共有4000多个模块、100万行指令,共投入5000人年,耗资5亿美元,但在交付使用的系统中仍找出2000个以上的错误。 经研究发现,研制软件系统需要投入大量的人力、物力和资金,但是系统的质量却无法保证。开发软件所需的高成本与软件产品的低质量之间存在尖锐的矛盾。软件开发陷入不可自拔的恶性循环之中。这种现象被称为“软件危机”(Software Crisis)。 软件危机的表现 ⑴软件开发进度难以预测 ⑵软件开发成本难以控制 ⑶用户对软件功能难以满足 ⑷软件产品质量无法保证 ⑸软件产品难以维护 ⑹软件通常缺少适当的文档资料 ⑺生产率提高的速度不能满足社会需要 软件危机产生的原因 产生软件危机有两个方面的原因: 与软件本身的特点有关;是内在因素、客观的存在,只能因势利导加以解决。 与软件开发和维护的技术方法有关;是外在因素,可以完善、提高。 导致软件开发项目失败的原因 从表1-6的1、2、4、6、8可以看出,用户需求不稳定、不清晰、不完整是项目失败的主要原因,应引起足够的重视。 软件开发方法的研究应针对项目失败的原因系统地提出解决办法。 解决软件危机的途径 (1)采用现代化、社会化的组织管理方式; (2)使用成功的技术和方法(面向过程、面向对象、自顶向下等); (3)使用更好的软件开发工具(汇编、C、VC、各种数据库管理系统等); 为了解决软件危机就要从技术措施和组织管理两个方面去研究,不断总结经验教训,提高软件生产效率,降低软件开发和维护的成本。 开发软件选用最好的开发工具是至关重要的,即
文档评论(0)