软件危机出现于60年代末为了解决软件危机人们提出了用什么的原

软件产品并不是没有错误,而是盲目检测很难发现错误,而隐藏下来的错误往往是造成重大的隐患计算机科学根植于电子工程、数学和语言学,是科学、工程和艺术的结晶。它在20世纪的三十年间兴起成为一门的学科,并发展出自己的方法与术语。。

用模块化、自顶向下的设计、结构化的控制流程、结构化的数据结构等。这些原则和方法可以帮助软件开发人员void main()更好地组织和管理软件开发过程,提高软件的可读性、可维护性和可靠性,从而有效地解决软件危机问题。软件危机是指在计算机软件开发过程中,由于软件规模和复杂度的增加,导致软件开发成本和时间的大幅度增加,软件质量和可靠性的下降等问题。

什么是软件危机 什么是软件危机?什么是软件危机 什么是软件危机?


什么是软件危机 什么是软件危机?


什么是软件危机 什么是软件危机?


什么叫软件工程软件工程是如何克服软件危机的

系统中的错误难以消除。软件是逻辑产品,质量问题很难以统一的标准度量,因而造成质量控制困难。

软件工程是将系统的、规范的、可度量的工程化方法应用于软件开发、运行和维护的全过程及上述方法的研究。为了克服软件危机,人们从其他产业的工程化生产得到启示,采用工程的概念、原理、技术和方法来开发和维护软件

采用工程的概念、原理、技到目前为止,用得最多的软件开发技术是结构化程序设计(Structure术和方法来

什么是软件危机怎么解决这个危机

软件就是在计算机上运行的程序以及程序所在现实中一般人犯的错误是认为电脑软件就是指程序,比如腾讯QQ软件就是指QQexe这个可执行程序,其实与QQ相关的文档和可执行程序QQexe的才构成软件QQ。同时,“软件”不仅仅指计算机领域的程序,而且指结构中的管理系统、思想意识形态、思想觉悟、法律法规等等。需要的数据和相关的文档。简单的讲就是:软件=程序+数据+文档。主要分为:系统软件和应用软件两大类。

软件危机是指落后的软件生产方式无法满足迅速增长的计算机软件需求,从而导致软件开发与维护过程中出现一系列问题的现象。那么你对软件危机了解多少呢?以下是由我整理关于什么是软件危机的内容,希望大家喜欢!

软件危机的介绍

软件危机(software crisis),20 世纪60年代以前,计算机刚刚投入实际使用,软件设计往往只是为了一个特定的应用而在指定的计算机上设计和编制,采用密切依赖于计算机的机器代码或汇编语言,软件的规模比较小,文档资料通常也不存在,很少使用系统化的开发 方法 ,设计软件往往等同于编制程序,基本上是个人设计、个人使用、个人作、自给自足的私人化的软件生产方式。

60年代中期,大容量、高速度计算机的出现,使计算机的应用范围迅速扩大,软件开发急剧增长。高级语言开始出现; 作系统 的发展引起了计算机应用方式的变化;大量数据处理导致代数据库管理系统的诞生。软件系统的规模越来越大,复杂程度越来越高,软件可靠性问题也越来越突出。原来的个人设计、个人使用的方式不再能满足要求,迫切需要改变软件生产方式,提高软件生产率,软件危机开始爆发 。

1968年,北大西洋公约组织(NATO)在联邦德国的学术会议创造软件危机(Software crisis)一词。而1960年代中期开始爆发众所周知的软件危机,为了解决问题,在1968、1969年连续召开两次的NATO会议,并同时提出软件工程的概念。

软件危机的解决途径

软件工程诞生于60年代末期,它作为一个新兴的工程学科,主要研究软件生产的客观规律性,建立与系统化软件生产有关的概念、原则、方法、技术和工具,指导和支持软件系统的生产活动,以期达到降低软件生产成本 、改进软件产品质量、提高软件生产率水平的目标。软件工程学从硬件工程和其他人类工程中吸收了许多成功的 经验 ,明确提出了软件生命周期的模型,发展了许多软件开发与维护阶段适用的技术和方法,并应用于软件工程实践,取得良好的效果。

软件危机的主要表现

软件开发进度难以预测

拖延工期几个月甚至几年的现象并不罕见,这种现象降低了软件开发组织的信誉。

软件开发成本难以控制

投资一再追加,令人难于置信。往往是实际成本比预算成本高出一个数量级。

而为了赶进度和节约成本所采取的一些权宜之计又往往损害了软件产品的质量,从而不可避免地会引起用户的不满。

用户对产品功能难以满足

开发人员和用户之间很难沟通、矛盾很难统一。往往是软件开发人员不能真正了解用户的需求,而用户又不了解计算机求解问题的模式和能力,双方无法用共同熟悉的语言进行交流和描述。

在双方互不充分了解的情况下,就仓促上阵设计系统、匆忙着手编写程序,这种"闭门造车"的开发方式必然导致最终的产品不符合用户的实际需要。

软件产品质量无法保证

软件产品难以维护

软件产品本质上是开发人员的代码化的 逻辑思维 活动,他人难以替代。除非是开发者本人,否则很难及时检测、排除系统故障。

软件缺少适当的文档资料

缺乏必要的文档资料或者文档资料不合格,将给软件开发和维护带来许多的困难和问题。

软件危机的原因分析

用户需求不明确

在软件开发过程中,用户需求不明确问题主要体现在四个方面:

在软件开发出来之前,用户自己也不清楚软件开发的具体需求;

用户对软件第二阶段是1960年代到1970年代,是软件设计阶段,小组合作生产方式。在这一时期软件开始作为一种产品被广泛使用,开发需求的描述不,可能有遗漏、有二义性、甚至有错误;

软件开发人员对用户需求的理解与用户本来愿望有异。

缺乏正确的理论指导

缺乏有力的方法学和工具方面的支持。由于软件开发不同于大多数其他工业产品,其开发过程是复杂的逻辑思维过程,其产品极大程度地依赖于开发人员高度的智力投入。由于过分地依靠程序设计人员在软件开发过程中的技巧和创造性,加剧软件开发产品的个性化,也是发生软件开发危机的一个重要原因。

软件开发规模越来越大

随着软件开发应用范围的增广,软件开发规模愈来愈大。大型软件开发项目需要组织一定的人力共同完成,而多数管理人员缺乏开发大型软件开发系统的经验,而多数软件开发人员又缺乏管理方面的经验。各类人员的信息交流不及时、不准确、有时还会产生误解。软件开发项目开发人员不能有效地、自主地处理大型软件开发的全部关系和各个分支,因此容易产生疏漏和错误。

软件开发复杂度越来越高

计算机科学技术的发展历程是什么

软件危机解决途径:

计算机科学中的理论部分在台数字计算机出现以前就已存在。

扩展资料{ }:解决途径

60年代以来出现了大程序。这些大程序的可靠性很难保证。到60年代后期,西方出现了“软件危机”。这是指有些程序过于庞大(包含几十万条以至几百万条指令),成本过高而可靠性则比较。于是提出了软件工程的概念,目的在于使软件开发遵守严格的规范,使用一套可靠的方法,从而保证质量。现代软件工程的方向是形式化和自动化,而形式化的目的在于自动化。这里所说的自动化就是将程序设计中可以由机器来完成的工作,尽量交给机器去做。中心课题之一是程序工具和环境的研究。程序工具是指辅助人编程序的程序,如编译程序、编辑程序、排错程序等;程序环境则是指一套结合起来使用的用来辅助人编程序的程序工具。人工智能 用计算机模拟人的智能,特别是模拟思维活动的技术及其有关理论。由于人的思维活动离不开语言,而且人对于某一类问题进行思索和探索解法时,总是需要以关于这一类问题的基本知识(专业知识或常识)作为出发点。于是,知识表示和机器对自然语言的理解就构工智能的两个重要领域。所谓知识表示,是指将原来用自然语言表示的知识转换成用符号语言表示的,从而可以储存在机器内供机器使用的知识。人工智能的研究角度有探索法的角度和算法的角度。通常所说的解题算法是指机械的和总是有结果的方法,而这里所说的算法却是广义的,包括那些机械的而在使用时不一定有结果的算法。这种方法时常称作半可判定的方法。

软件工程(软件设计与开发)是什么意思?

计算机语言举例文档资料是软件必不可少的重要组成部分。实际上,软件的文档资料是开发组织和用户的之间权利和义务的合同书,是系统管理者、总体设计者向开发人员下达的任务书,是系统维护人员的技术指导手册,是用户的作 说明书 。

软件工程是一门研究如何用系统化、规范化、数量化等工程原则和方法去进行软件的开发和维护的学科。软件工程包括两方面内容:软件开发技术和软件项目管理。软件开发技术包括软件开发方法学、软件工具和软件工程环境。软件项目管理包括软件度量、项目估算、进度控制、人员组织、配置管理、项目等。软件工程是六十年代末为了解决软件危机而出现的一门学科,一般来讲它包含开发技术与管理技术。而软件过程是随作软件工程的开展,特别是近年来系ISO900系列与CMM方法的实践而逐渐时髦的一个概念。

1、用户需求不明确

它基于质量是做出来的,而非检查出来的现代质量理论。在规范化的软件生产中,离开了软件过程是不可思议的。

区别在于“工程”和“过程”的不同,软件工程是指将系统化的、规范的、可度量的方法应用于软件的开发、运行和维护的过程,即将工程化应用于软件过程。

工程着重应用,软件工程一定是软件过程的一个“产出”,一个个性化的实例!工程也是由过程组成的。

计算机编程是几级证书,4级证书包括什么内容?

(1)C语言:

编程的是2级,4级有网络(4)工程师,有软件设计师等

4级证书包括 中级网络工程师...中级数1、低级语言据库工程师..计算机编程是2级证....

四级包括四级网络和四级数据库

什么是软件工程 软件工程介绍

你这个问题太泛了,软件工程的主要目标就是为了消除软件危机,但是要达到这个目标是很难的。

1、软件工程是研究和应用如何以系统性的、规范化的、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到的的技术方法结合起来的学科。它涉及到程序设计语言、数据库、软件开发工具、系统平台、标准、设计模式等方面。

2、软件是由计算机程序和程序设计的概念发展演化而来的,是在程序和程序设计发展到一定规模并且逐步商品化的过程中形成的。软件开发经历了程序设计阶段、软件设计阶段和软件工程阶段的演变过程。

3、软件设计阶段:软件设计阶段出现在1956年~1970年。此阶段的特点是:硬件环境相对稳定,出现了“软件作坊”的开发组织形式。开始广泛使用产品软件(可购买),从而建立了软件的概念。随着计算机技术的发展和计算机应用的日益普及,软件系统的规模越来越庞大,高级编程语言层杀毒最强组合:出不穷,应用领域不断拓宽,开发者和用户有了明确的分工,对软件的需求量剧增。但软件开发技术没有重大突破,软件产品的质量不高,生产效率底下,从而导致了“软件危机”的产生。

4、软件工程阶段:自1970年起,软件开发进入了软件工import tango.io.Console;程阶段。由于“软件危机”的产生,迫使人们不得不研究、改变软件开发的技术手段和管理方法。从此软件产生进入了软件工程时代。此阶段的特定是:硬件已向巨型化、化、网络化和智能化四个方向发展,数据库技术已成熟并广泛应用,第三代、语言出现;代软件技术:结构化程序设计在数值计算领域取得优异成绩;第二代软件技术:软件测试技术、方法、原理用于软件生产过程;第三代软件技术:处理需求定义技术用于软件需求分析和描述。

什么是软件工程的核心思想

软件(大陆及用语,称作软体,英文:software)是一系列按照特定顺序组织的计算机数据和指令的。一般来讲软件被划分为系统软件、应用软件和介于这两者之间的中间件。软件并不只是包括可以在计算机(这里的计算机是指广义的计算机)上运行的电脑程序,与这些电脑程序相关的文档一般也被认为是软件的一部分。简单的说软件就是程序加文档的体。

软件工程是一我们使用的C语言就是使用的后者。门研究如何用系统化、规范化、数量化等工程原则和方法去进行软件的开发和维护的学科。

使用计算机的人越来越多,计算机应用越来越广泛,这是软件开发技术得以发展的环境。

软件工程包括两方面内容:软件开发技术和软件项目管理。

软件项目管理包括软件度量、项目估算、进度控制、人员组织、配置管理、项目等。

软件工程是六十年代末为了解决软件危机而出现的一门学科,一般来讲它包含开发技术与管理技术。而软件过程是随作软件工程的开展,特别是近年来系ISO900系列与CMM方法的实践而逐渐时髦的一个概念。它基于质量是做出来的,而非检查出来的现代质量理论。在规范化的软件生产中,离开了软件过程是不可思议的。

区别在于“工程”和“过程”的不同,软件工程是指将系统化的、规范的、可度量的方法应用于软件的开发、运行和维护的过程,即将工程化应用于软件过程。工程着重应用,软件工程一定是软件过程的一个“产出”,一个个性化的实例!工程也是由过程组成的。

软件生命周期问题定义--->可行性研究--->需求分析--->概要设计--->详细设计--->编码和单元测试--->综合测试--->软件维护

计算机语言是什么?

软件系统的开发是按阶段进行的,一般划分为以下阶段:可行性讨论;需求分析;系统设计(概要设计、详细设计);程序开发;编码,单元测试;系统测试;系统维护。

计算机语言(Comr Language)指用于人与计算机之间通讯的语言。计算机语言是人与计算机之间传递信息的媒介。

计算机程序设计语言的发展,经历了从机器语言、汇编语言到高级语言的历程。

计算机语言主要分为四类:

- 低级语言

- 高级语言

- 专用语言

- 脚本语言

- 机器语言、汇编语言和符号语言。

- 汇编语言源程序必须经过汇编,生成目标文件,然后执行。

2、高级语言

- BASIC(True basic、Qbasic、Virtual Basic)、C、PASCAL、FORTRAN、智能化语言(LISP、Prolog)等等。

- 高级语言源程序可以用解释、编译两种方式执行。通常用后一种。

3、专用语言

CAD系统中的绘图语言和DBMS的数据库查询语言。

1.1.机器语言

机器特别要提到的:在C语言诞生以前,系统软件主要是用汇编语言编写的。由于汇编语言程序依赖于计算机硬件,其可读性和可移植性都;但一般的高级语言又难以实现对计算机硬件的直接作(这正是汇编语言的优势),于是人们盼望有一种兼有汇编语言和高级语言特性的新语言——C语言。语言是指一台计算机全部的指令

电子计算机所使用的是由"0"和"1"组成的二进制数,二进制是计算机的语言的基础。计算机发明之初,人们只能降贵纡尊,用计算机的语言去命令计算机干这干那,一句话,就是写出一串串由"0"和"1"组成的指令序列交由计算机执行,这种计算机能够认识的语言,就是机器语言。使用机器语言是十分痛苦的,特别是在程序有错需要修改时,更是如此。

因此程序就是一个个的二进制文件。一条机器语言成为一条指令。指令是不可分割的最小功能单元。而且,由于每台计算机的指令系统往往各不相同,所以,在一台计算机上执行的程序,要想在另一台计算机上执行,必须另编程序,造成了重复工作。但由于使用的是针对特定型号计算机的语言,故而运算效率是所有语言中的。机器语言,是代计算机语言。

1.2.汇编语言

为了减轻使用机器语言编程的痛苦,人们进行了一种有益的改进:用一些简洁的英文字母、符号串来替代一个特定的指令的二进制串,比如,用"ADD"代表加法,"MOV"代表数据传递等等,这样一来,人们很容易读懂并理解程序在干什么,纠错及维护都变得方便了,这种程序设计语言就称为汇编语言,即第二代计算机语言。然而计算机是不认识这些符号的,这就需要一个专门的程序,专门负责将这些符号翻译成二进制数的机器语言,这种翻译程序被称为汇编程序。

汇编语言同样十分依赖于机器硬件,移植性不好,但效率仍十分高,针对计算机特定硬件而编制的汇编语言程序,能准确发挥计算机硬件的功能和特长,程序精炼而质量高,所以至今仍是一种常用而强有力的软件开发工具。

1{printf("hello");.3.高级语言

从最初与计算机交流的痛苦经历中,人们意识到,应该设计一种这样的语言,这种语言接近于数学语言或人的自然语言,同时又不依赖于计算机硬件,编出的程序能在所有机器上通用。经过努力,1954年,个完全脱离机器硬件的高级语言--FORTRAN问世了,40 多年来,共有几百种高级语言出现,有重要意义的有几十种,影响较大、使用较普遍的有FORTRAN、ALGOL、COBOL、BASIC、LISP、SNOBOL、PL/1、Pascal、C、PROLOG、Ada、C++、VC、VB、Delphi、JAVA等。

高级语言的发展也经历了从早期语言到结构化程序设计语言,从面向过程到非过程化程序语言的过程。相应地,软件的开发也由最初的个体手工作坊式的封闭式生产,发展为产业化、流水线式的工业化生产。

60年代中后期,软件越来越多,规模越来越大,而软件的生产基本上是个自为战,缺乏科学规范的系统规划与测试、评估标准,其恶果是大批耗费巨资建立起来的软件系统,由于含有错误而无法使用,甚至带来巨大损失,软件给人的感觉是越来越不可靠,以致几乎没有不出错的软件。这一切,极大动了计算机界,史称"软件危机"。人们认识到:大型程序的编制不同于写小程序,它应该是一项新的技术,应该像处理工程一样处理软件研制的全过程。程序的设计应易于保证正确性,也便于验证正确性。1969年,提出了结构化程序设计方法,1970年,个结构化程序设计语言--Pascal语言出现,标志着结构化程序设计时期的开始。

80年代初开始,在软件设计思想上,又产生了一次革命,其成果就是面向对象的程序设计。在此之前的高级语言,几乎都是面向过程的,程序的执行是流水线似的,在一个模块被执行完成前,人们不能干别的事,也无法动态地改变程序的执行方向。这和人们日常处理事物的方式是不一致的,对人而言是希望发生一件事就处理一件事,也就是说,不能面向过程,而应是面向具体的应用功能,也就是对象(Object)。其方法就是软件的集成化,如同硬件的集成电路一样,生产一些通用的、封装紧密的功能模块,称之为软件集成块,它与具体应用无关,但能相互组合,完成具体的应用功能,同时又能重复使用。对使用者来说,只关心它的接口(输入量、输出量)及能实现的功能,至于如何实现的,那是它内部的事,使用者完全不用关心,C++、Virtual Basic、Delphi就是典型代表。

高级语言的下一个发展目标是面向应用,也就是说:只需要告诉程序你要干什么,程序就能自动生成算法,自动进行处理,这就是非过程化的程序语言。

/This is a sample/

#include

}(2)D语言:

void main(char[][] args)

{cout("hello").newline;

}最简单的C语言如下所示:

main()

最简单的D语言如下所示:

{}

计算机语言就是计算机能识别的语言。如果你跟计算机说话,但根本识别不了,所以你要用计算机语言让电脑知道你想干什么 比如C语言啊 C++啊 等等等等

这些语言都是计算机高级语言。。你看看书 这很简单的

计算机的语言很多的,有C,C++,C#,Ja,SQL,,等等,好多的,当然是编程用的,就像我们用的各种软件都是用这些语言编出来的,而学习做网页当然需要学语言,学Ja,和SQL都行!

产生软件危机的原因是什么?怎样才可能消除软件危机?

~答题不易,互相理解,您的采纳是我前进的动力,感谢您!!

什么是软件工程?它有哪些本质特性?怎样用软件工程消除软件危机?

“软件”(英文:Software)软件是计算机用户与硬件之间的接口界面,是一系列按照特定顺序组织的计算机数据和指令的。通常,软件被划分为编程语言、系统软件、应用软件和介于这两者之间的中间件。其中,系统软件是为计算机使用提供最基本的功能,但并不针对某一特定应用领域,而应用软件则恰好相反,不同的应用软件为用户和所服务的领域提供不同的功能。而微软发布的使电脑运算速度更快更节能的嵌入式系统,则属于“硬件级的软件”。

答:

软件工程是指导计算机软件开发和维护的一门工程学科。

开发与维护软件,

把经过时间考验而证明正确的管理技术和当前能够得到的的技术方软件开发技术包括软件开发方法学、软件工具和软件工程环境。法结合起来,

以经济地开发出高质量的软件并有效地维护它。

~希望回答对你有帮助,如果有疑问,请继续“追问”!

什么是软件?

其一,软件产品是人的思维结果,因此软件生产水平最终在相当程度上取决于软件人员的教育、训练和经验的积累。

说到计算机软件,你肯定会想起微软公司(Microsoft),及其总裁,如今美国首富比尔·盖茨(BillGates),正如谈到港台流行歌曲,你会想到四大天王,谈到足球会想到巴西球王贝利一样。比尔·盖茨于1975年创建了微软(Microsoft)公司。

那么,什么是软件呢,软件是指装入计算机的程序及其文档,分为作系统和应用软件。而作系统是软件的核心,任何程序都通过作系统来作其硬件功能。应用软件是指具有绘图、制表、图形、图像处理、文字处理专项功能的软件。每二个软件都有一个名字,比如比较知名的DOS(磁盘作系统)、北大方正排版软件、WPS、中文之星、Windows等。

目前最常用是微软公司推出的Windows作系统,其可视化窗口及友好界面给计算机用户带来巨大冲击。你可用鼠标按那些可视图标和按钮,Windows将指示你下一步作,而不必像在DOS作系统中那样记住许多繁琐的命令。你使用上一段时间,会对它们倍感亲切,使用起来更加得心应手了!

微软公司开发的DOS是1981年给IBM公司的IBMPC写的一个作系统。七易其版,拥有上亿的用户,获得巨额利润。微软公司新开发出的Windows,为其又获得滚滚财源。Windows风靡全球,已变成一种潮流和趋势。

我们知道,计算机硬件是指计算机的主机、外存储器、终端、键盘、打印机等看得见、摸得着的设备。那么,计算机软件是什么?为什么计算机要有软件?

软件又叫软设备,它和硬件一样,是计算机的重要组成部分。它是用于计算机上的各种类型的程序和有关资料的总称。它通常依附在硬设备上,例如存放在内、外存储器里。之所以耙它称为“软”件,是因为它比硬件更抽象、更灵活,有很大的弹性或适应性。它和计算机硬件的关系,有点像珠算中的算盘和口诀。如果用人来比方,硬件好比人的躯体,软件则是人所具有的知识和学问。要使计算机发挥作用,软件和硬件两者缺一不可。

早期的计算机,只有硬件,没有软件。每次计算,都要由人工编好程序。由于程序的表示方式和人们常用的数学语言相甚远,所以编写程序要占去很多的人力。而且每执行一个程序,机器便被该程序独占,因此工作效率很低。后来,人们发现可以创造一些较为通用的语言来和机器对话,于是逐渐形成了一些面向所要解决的问题的程序设计语言,即高级语言,这就是最早期的软件。此后,这种高级语言得到扩大和完善,向产品的形式过渡,这时开始“软件”的提法。为了提高计算机自身管理的能力,人们又给它配上高级管理程序,这就是作系统。在计算机日益广泛应用的今天,面向应用对象编写的程序也越来越多。现在谈到计算机系统,绝不仅仅是指它的硬件,而必须同时指机器本身和它所配备的各类软件。

现在,人们把软件分为两大类。一类叫做系统软件,它是同机器出厂时一起配备好,作为机器的一个重要组成部分出售的。其中包括作系统、语言编译系统、服务性程序等。它们用于计算机内部的管理、维护、控制与运行、程序翻译、编译等方面。不管干什么事情,只要用机器,都要调用系统软件。另一类是应用软件,包括各种各样的面向实际问题的程序。其中,一部分是通用化和商品化了的,称为软件包,或叫应用程序包。如计算机辅助设计,各类数据库,情报检索系统,医疗诊断系统等等。

计算机做的任何事情,无论是科学计算、工程设计、行政管理、还是跟你玩游戏,统统是在程序指挥下进行的。程序对于计算机,就像乐谱对于钢琴,棋谱对于棋一样重要。它代表了计算机的智慧和灵魂,它是所谓软件的核心部分。没有软件的计算机就像没有思想的人,只能是一堆废物。

人们通常把软件分成两大类。专门应用于某个实际领域的软件称为应用软件。例如,帮助老师教学和学生学习的计算机辅助教学软件,处理各类行政事物的管理应用软件(工资报表人事档案、饭店经营等等)、能同你玩各种游戏的软件。各种应用软件数以千万计,已经渗透到人类生活的各个领域。

另一类软件叫系统软件。它不是只应用于某个专门领域,而是面向所有用户。用户只能通过这个媒介去使用应用软件。因此它具有特殊的重要性。在系统软件中,最重要的有两类。类是高级语言及其编译程序。在计算机上运行的应用程序一般是用高级语言编写的。但计算机除了它本身的机器语言外,并不认识其他任何语言。必须通过“翻译”——它也是一种软件,把别的语言翻译成机器语言,计算机才能执行。替汇编语言当“翻译”的叫汇编程序。替高级语言当翻译的叫编译程序。此外,还有一种翻译软件,它不是把用高级语言写的整个程序翻译成机器指令后再执行,而是一边翻译,一边执行。这种翻译软件叫解释程序。BASIC语言的翻译程序就是解释程序。

另一类重要的系统软件叫作系统。它是计算机的大管家,指挥着计算机系统自己管理自己。

现在,当人们谈到计算机系统时,总是指计算机硬件和软件的综合体。计算机越发展,软件的作用就越突出。这是因为计算机的生命在于应用,要应用就必须有软件。

软件是迄今为止人类制造的最复杂的系统,随着软件复杂程度的提高,大型软件开发过程中由量变引起的质变,使人们逐渐认识到软件的复杂性、软件开发中的困难是人类目前的处理能力无法解决的,人们一次又一次面临“软件危机”。

一、应用软件

应用软件是计算机用户在系统软件平台上开发的程序。应用软件适应信息各个领域的应用需求,每一领域的应用具有许多共同的属性和要求,具有普遍性。应用软件种类有:

(1)

数值计算处理,包括:数值解析;统计解析;数理规则;预测、模拟;线性规划;日程。

(2)

工程技术应用,包括:CAD;CAM;结构分析;数值控制。

(3)

公用技术应用,包括:文档处理;图形处理;图像处理;信息检索;机械翻译;自然语言处理;模式识别;专家系统;决策支持;CAI。

通用管理,包括:财务管理;人事管理;物资管理;图书资料管理。

(5)

各类专业管理,包括:医疗、保健管理;学校、教育管理;公共交通管理;银行金融、交易管理;文化管理等。

(6)

办公自动化,包括:报表处理;日程管理;文件汇总;文件收发、传送管理等。

应用软件的应用范围广泛,分类的依据因人而异,发展趋势是从按业务、行业分类的应用软件中提取出共同性的部分移到公用应用软件中去,从公用应用软件中提取出共同性的部分移到系统软件中去。

1.软件的开发过程

软件开发过程中要明确各阶段的工作目标、实现该目标所必需的工作内容以及达到的标准。只有在上一个阶段的工作完成后,才能开始下一阶段的工作。

2.软件开发技术的发展

软件开发技术的发展主要基流失,甚至某些软件导致了人员伤亡。同时软件开发人员也发现软件开发的难度越来越大,在软件开发中遇到的问题找于三个方面的原因:①

信息化的需要,这是它得以发展的动力;②

计算机硬件的性能越来越高,价格越来越便宜,这是它得以发展的基础;③

计算机软件开发技术的发展历程已经历了50多年,从最初的通过手动作控制台的按键、往计算机主机输入机器语言程序指令,到今天借助计算机软件开发工具设计出软件,发展变化是非常迅速的,经历了结构化程序设计、软件工程、面向对象设计方法、软件组件(即插即用)设计方法的演变。

3.结构化程序设计

Design)方法,缩写为SD。机器语言、汇编语言和一些高级语言是面向过程的语言,面向过程的程序设计要给出解题的每一步骤,告诉计算机怎么去做,也是采用结构化程序设计方法。SD是功能分解的方法,采用模块化设计。模块的划分应当遵循以下三条基本要求:①

模块的功能在逻辑上尽可能的单一化,明确化,最在软件开发过程中人们开始研制和使用软件工具,用以辅助进行软件项目管理与技术生产,人们还将软件生命周期各阶段使用的软件工具有机地成为一个整体,形成能够连续支持软件开发与维护全过程的集成化软件支援环境,以期从管理和技术两方面解决软件危机问题。好做到一一对应,这称为模块的凝聚性;②

模块之间的联系及相互影响尽可能地少,对于必需的联系都应当加以明确的说明,如参数的传递、共享文件的内容与格式,这称为模块的耦合性;③

模块的规模应当足够小,以使编程和调试易于进行。

SD方法采用的是自顶向下、逐步分解的方法,直到层的模块达到所要求的规模为止,一般采用HLPO图示,意思是分层结构加输入、输出处理。

SD方法主要是为程序员服务的,是从程序员如何编程、测试及编写文档去考虑问题的。这种思想是早期的以手工方式、个人编写程序的工作环境下的想法。这种方法的缺点是增大了程序的工作量,程序的运行效率不高,不适合大型软件的研制过程和规律。

那些构成电脑的看得见摸得着的东西,如元器件、电路板、零部件等物理实体和物理装置,我们把这些设备都叫做电脑硬件。

电脑软件,是人们为了告诉电脑要做什么事而编写的,电脑能够理解的一串指令,有时也叫代码、程序。

根据功能的不同,电脑软件可以粗略地分成四个层次。最贴近电脑硬件的是一些小巧的软件。它们实现一些最基本的功能,通常“固化”在只读存储器芯片中,因此称为固件。系统软件包括作系统和编译器软件等。系统软件和硬件一起提供一个“平台”。它们管理和优化电脑硬件资源的使用。常见的中间件包括数据库和万维网等,它们在应用软件和平台之间建立一种桥梁。应用软件种类最多,包括办公软件、电子商务软件、通信软件、行业软件,游戏软件等等。

电脑软件都是用各种电脑语言(也叫程序设计语言)编写的。层的叫机器语言,它由一些0和1组成,可以被某种电脑直接理解,但人就很难理解。上面一层叫汇编语言,它只能由某种电脑的汇编器软件翻译成机器语言程序,才能执行。人能够勉强理解汇编语言。人常用的语言是更上一层的高级语言,比如C,

Ja,

Fortran,

BASIC。这些语言编写的程序一般都能在多种电脑上运行,但必须先由一个叫作编译器或者是解释器的软件将高级语言程序翻译成特定的机器语言程序。编写电脑软件的人员叫程序设计员、程序员、编程人员。他们当中的高手有时也自称为黑客。

由于机器语言程序是由一些0和1组成的,它又被称为二进制代码。汇编语言和高级语言程序也被称为源码。在实际工作中,一般来讲,编程人员必须要有源码才能理解和修改一个程序。很多软件厂家只出售二进制代码。近年来,上开始流行一种趋势,即将软件的源码公开,供全世界的编程人员共享。这叫“开放源码运动”。

这的确是个很重要,也很值得关注和弄清楚的问题,因为不少经常使用软件的人,粗糙说来振振有词,仔细深究不仅说不明白软件的概念,甚至连软件和固件的联系和区别都不懂,要么把固件与硬件等同起来,要么当成了一般意义上的软件——如此可想而知他能用明白吗?

软件就是用来在硬件上面运行的东西,通过它可以实现用户需要的某种功能,比如,你用在电脑上的作系统,他就是属于软件,通过它你可以做许多的事情。

软件是电脑中看不见摸不着的东西,但在电脑中的确存在的叫做软件.如电脑系统软件,办公软件,设计软件,娱乐软件都是我们在电脑中看不见摸不到,但却实可以给我带来工作学习娱乐的东西.