什么是软件工程-基础概念

1.什么是软件工程 2

2.软件工程必须遵循什么原则 2

3.什么是软件工程环境 2

4.什么是结构化方法 3

5.什么是软件包 3

6.什么是软件方法学 4

7.软件方法学的分类和基本内容有哪些 4

8.什么叫软件复用 5

9.什么是软件工具 5

10.什么是软件过程 6

11.什么是软件结构 6

12.什么是软件开发方法 7

13.什么是软件开发环境 7

14.什么是软件开发模型 8

15.什么是软件语言 8

16.什么是人机交互技术 9

17. 什么 是面向对象方法 9



1.什么是软件工程

软件工程(SoftWare Engineering)的框架可概括为:目标、过程和原则。

(1) 软件工程目标:生产具有正确性、可用性以及开销合宜的产品。正确性指软件产品达到预期功能的程度。可用性指软件基本结构、实现及文档为用户可用的程度。开 销合宜是指软件开发、运行的整个开销满足用户要求的程度。这些目标的实现不论在理论上还是在实践中均存在很多待解决的问题,它们形成了对过程、过程模型及 工程方法选取的约束。

(2)软件工程过程:生产一个最终能满足需求且达到工程目标的软件产品所需要的步骤。软件工程过程主要包括开发过 程、运作过程、维护过程。它们覆盖了需求、设计、实现、确认以及维护等活动。需求活动包括问题分析和需求分析。问题分析获取需求定义,又称软件需求规约。 需求分析生成功能规约。设计活动一般包括概要设计和详细设计。概要设计建立整个软件系统结构,包括子系统、模块以及相关层次的说明、每一模块的接口定义。 详细设计产生程序员可用的模块说明,包括每一模块中数据结构说明及加工描述。实现活动把设计结果转换为可执行的程序代码。确认活动贯穿于整个开发过程,实 现完成后的确认,保证最终产品满足用户的要求。维护活动包括使用过程中的扩充、修改与完善。伴随以上过程,还有管理过程、支持过程、培训过程等。

(3)软件工程的原则是指围绕工程设计、工程支持以及工程管理在软件开发过程中必须遵循的原则。

2.软件工程必须遵循什么原则

  围绕工程设计、工程支持以及工程管理已提出了以下四条基本原则:

(1)选取适宜的开发模型

该原则与系统设计有关。在系统设计中,软件需求、硬件需求以及其它因素间是相互制约和影响的,经常需要权衡。因此,必需认识需求定义的易变性,采用适当的开发模型,保证软件产品满足用户的要求。

(2)采用合适的设计方法

在软件设计中,通常需要考虑软件的模块化、抽象与信息隐蔽、局部化、一致性以及适应性等特征。合适的设计方法有助于这些特征的实现,以达到软件工程的目标。

(3)提供高质量的工程支撑

工欲善其事,必先利其器。在软件工程中,软件工具与环境对软件过程的支持颇为重要。软件工程项目的质量与开销直接取决于对软件工程所提供的支撑质量和效用。

(4)重视软件工程的管理

软件工程的管理直接影响可用资源的有效利用,生产满足目标的软件产品以及提高软件组织的生产能力等问题。因此,仅当软件过程予以有效管理时,才能实现有效的软件工程。

3.什么是软件工程环境

  软件工程环境(SoftWare Engineering Environment ,简称SEE)是指以软件工程为依据,支持典型软件生产的系统。

软件工程环境是软件工程学科各方面研究发展的物化表现,具有以下特点:

(1) 软件工程环境强调支持软件生产的全过程。实践表明:软件工具仅支持生命周期中某些特定活动,工具箱将一些相互关联的工具组织到一起,使其相互通信,从而支 持了生命周期中某些成组活动,自动化程序有所提高。软件开发环境旨在通过环境信息库和消息通信机制实现工具的集成,从而为软件生命周期中某些过程的自动化 提供了更有效的支持。不同的过程模型导致不同类型的软件开发环境。然而,软件过程领域的最新研究结果表明,软件过程概念已不仅局限在软件开发和软件维护, 而是发展到包括系统集成和软件产品的制作与生产。SEE旨在解决软件过程中各个过程和活动如何按照各条路径并行完成。管理、支持、获取、供应等过程贯穿于 整个生存周期,特别是管理活动和支持活动,从合作观点来看,对于软件生产具有更为重要的地位。因此,促使人们在更高的层次上考虑如何运用“整体大于各部分 之和”的系统工程,提高整个软件过程的整体计算机辅助支持程度。

(2)软件工程环境强调大型软件的工业化生产。软件发展已经形成了大规模 的产品市场。因此,软件产品的生产也必将走上工业化的道路。所请的工业化是指能够形成规模经济的生产形式。工程化注重软件生产过程中软件生产者具有一定的 工程训练,遵循一定的工程准则。工业化则更加强调软件生产过程中生产资料的作用,表现为把大量的生产者的技能和经验转移到生产工具之中,从而减少生产过程 中的劳动比例、减少生产工具的增值比例。SEE是为工业化生产提供一整套的支持设施。

(3)软件工程环境以集成和剪裁作为主要技术路径,实现软件工业化生产的目标。SEE具有多维性,表现在不仅要集成与软件开发技术相关的工具,还要集成与支持技术、管理技术相关的工具,并将它们有机地结合在一起。

(4)标准化。软件生产走向工业化需要建立相应的工业标准。SEE正在形成一个国际性标准。

4.什么是结构化方法

  结构化分析方法(Structured Method)是强调开发方法的结构合理性以及所开发软件的结构合理性的软件开发方法。结构是指系统内各个组成要素之间的相互联系、相互作用的框架。结构 化开发方法提出了一组提高软件结构合理性的准则,如分解与抽象、模块独立性、信息隐蔽等。针对软件生存周期各个不同的阶段,它有结构化分析( SA )、结构化设计( SD )和结构化 程序设计 (SP)等方法。

结构化分析方法给出一组帮助系统分析人员产生功能规约的原理与技术。它一般利用图形表达 用户需求 ,使用的手段主要有数据流图、数据字典、结构化语言、判定表以及判定树等。

结 构化分析的步骤如下:①分析当前的情况,做出反映当前物理模型的DFD;②推导出等价的逻辑模型的DFD;③设计新的逻辑系统,生成数据字典和基元描述; ④建立人机接口,提出可供选择的目标系统物理模型的DFD;⑤确定各种方案的成本和风险等级,据此对各种方案进行分析;⑥选择一种方案;⑦建立完整的需求 规约。

结构化设计方法给出一组帮助设计人员在模块层次上区分设计质量的原理与技术。它通常与结构化分析方法衔接起来使用,以数据流图为基础得到软件的模块结构。 SD 方 法尤其适用于变换型结构和事务型结构的目标系统。在设计过程中,它从整个程序的结构出发,利用模块结构图表述程序模块之间的关系。结构化设计的步骤如下: ①评审和细化数据流图;②确定数据流图的类型;③把数据流图映射到软件模块结构,设计出模块结构的上层;④基于数据流图逐步分解高层模块,设计中下层模 块;⑤对模块结构进行优化,得到更为合理的软件结构;⑥描述模块接口。

5.什么是软件包

  软件包(SoftWare Package)是指具有特定的功能,用来完成特定任务的一个程序或一组程序。可分为应用软件包和系统软件包两大类。应用软件包与特定的应用领域有关,又 可分为通用包及专用包两类。通用软件包根据社会的一些共同需求开发,专用软件包则是生产者根据用户的具体需求定制的,可以为适合其特殊需要进行修改或变 更。

软件包这一术语出现于20世纪60年代。60年代初,IBM公司曾将IBM1400系列上的应用程序库改造成更为灵活易用的软件包形式。 Informatics公司根据 用户需求 ,以包的形式设计并开发了自动流程图生成包AUTOFLOW。1969年,软件开始从计算机系统中分离出来成为独立成分,软件包这个术语开始广泛使用。

软件包由一个基本配置和若干可选部件构成,既可以是源代码形式,也可以是目标码形式。用户手册和指南等文档是软件包的重要组成部分。此外,软件包的维护及技术支持也是非常必要的

6.什么是软件方法学

  软件方法学(SoftWare Methodology)是以方法为研究对象的软件学科。主要涉及指导软件设计的原理和原则,以及基于这些原理、原则的方法和技术。狭义的也指某种特定的软件设计指导原则和方法体系。不论何种 含义 ,其关注的中心问题是如何设计正确的软件和高效率地设计软件。

软 件方法学的目的是寻求科学方法的指导,使软件开发过程“纪律化”,即要寻找一些规范的“求解过程”,把软件开发活动置于坚实的理论基础之上。软件工程与软 件方法学的方法不同,软件工程是侧重于借鉴传统工程学科,最终目的是把软件生产变成一门制造工程。两者之间的关系是软件工程需要软件方法学为依据和指导; 方法学依赖于软件工程,特别是环境工具来发挥实际效用。

7.软件方法学的分类和基本内容有哪些

  1)软件方法学的分类

从开发风范上看,有自顶向下的开发方法和自底向上的开发方法。在实际软件开发中,大都是两种方法的结合,只不过是应用于开发的不同阶段和以何者为主而已。

从性质上看,有形式方法与非形式方法。形式方法是一种具有坚实数学基础的方法,从而允许对系统和开发过程作严格处理和论证,适用于那些运载系统安全级别要求极高的软件的开发。非形式方法则不把严格性作为其主要着眼点。

从适用范围来看,有整体性方法与局部性方法。适用于软件开发全过程的方法称为整体性方法,如自顶向下方法、自底向上方法和各种软件自动化方法等均为整体性方法。适用于开发过程具体阶段的软件方法称为局部性方法,如需求分析阶段的各种需求分析方法、设计阶段的各种设计方法。

2)几种常用的软件方法

(1) 自顶向下方法自顶向下是一种决策的策略。软件开发涉及到作什么决策、如何决策和决策顺序等决策问题。

自 顶向下方法在任何时刻所作的决定都是当时对整个设计影响最大的那些决定。如果把所有决定分组或者分级,那么决策顺序是首先作最高级的决定,然后依次地作较 低级的决定。同级的决定则按照随机的顺序或者按别的方法。一个决定的级别是看它距离要达到的最终目的(因此是软件的实际实现)的远近程度。从问题本身来 看,或是由外(用户所见的)向内(系统的实现)看,以距离实现近的决定为低级决定,远的为高级决定。

在这个自顶向下的过程中,一个复杂的问题(任务)被分解成若干个较小较简单的问题(子任务),并且一直继续下去,直到每个小问题(子任务)都简单到能够直接解决(实现)为止。

(2) 自底向上方法与自顶向下方法相反,首先作最低级的决定,其次作较高级的决定,最后建立起整个系统。也就是首先实现最基本的系统构件和系统的内部函数,然后 逐步升级到有关外部函数的决策。在这个过程中,开发者手中有越来越复杂和强有力的构件可以用来构造更高级的构件,直到最后构成整个系统。

(3) 形式方法形式方法的目的是把软件作为数学来重新发现。形式方法需要有一个健全的数学基础,典型的是由一个(建立在集合论、逻辑或是代数的基础上的)形式规 约语言来给定。它提供了精确地定义以下概念的手段,如一致性、完全性、规约、实现、正确性等。它还提供手段以证明规约是可实现的,证明所建立的系统是正确 的、可实现的,以及证明系统具有某些性质而无须通过实际运行来确定其行为。

形式方法被用来避免系统中的歧义性、不完全性、不一致性。在系统开发的早期使用形式方法有助于避免设计缺陷,否则这些缺陷会留到后来的测试、排错阶段才能发现,从而造成巨大耗费。在系统开发的后面阶段用形式方法,可以帮助确定系统实际的正确性及不同实现的等价性。

(4)软件自动化方法是指利用计算机使软件的设计实现自动化的方法和相关技术。

长久以来,人们就希望发展出一种技术,使得计算机的用户所需要具备的计算机知识和 程序设计 知识尽可能地少,一项任务从提出到在计算机上最终获得解决所需人的参与尽可能地少。最理想的情况是发展这样的软件自动化系统:它是面向最终用户的,即直接由最终用户使用;它是通用的,即对任何应用领域都适用;它是全自动的,即不需要人的干预和协助。

由 于无法达到面向最终用户、通用、全自动的理想目标,一种方法是降低对一个目标的要求,以争取较好的其它两个目标。即只追求有限的目标,使实现的难度降低。 于是就有了实现软件自动化的三种策略:①自底向上式策略,不追求直接面向最终用户,而是逐步向最终用户靠拢;②狭窄领域策略,不追求适用于广泛领域,而是 更好地解决专门领域中的问题;③辅助式策略,不追求全自动,而是以设计者为主体,提供辅助工具。软件自动实现的途径有:过程途径、演绎途径、转换途径、归 纳途径等。

8.什么叫软件复用

  软件复用(SoftWare Reuse)是将已有软件的各种有关知识用于建立新的软件,以缩减软件开发和维护的花费。软件复用是提高软件生产力和质量的一种重要技术。早期的软件复用 主要是代码级复用,被复用的知识专指程序,后来扩大到包括领域知识、开发经验、设计决定、体系结构、需求、设计、代码和文档等一切有关方面。

9.什么是软件工具

  软件工具(Software Tool)是指用来辅助计算机软件开发、维护和管理的软件。使用软件工具能节省软件生产开发时间和费用,提高软件生产率和质量。

从软件工程的观点来看,软件工具能够支持软件生存期的各个阶段问题。

软件工具的种类繁多,从软件过程的观点通常可以分为:项目管理工具、配置管理工具、分析和设计工具、 程序设计 工具、测试工具以及维护工具等。

(1)项目管理工具:支持项目管理活动的工具。通常,这类工具把重点放在特定的管理环节上,例如工作量、成本和工期估算以及项目调度计划等。

(2)配置管理工具:支持完成配置项标识、版本控制、变化控制、审计和状态统计等任务的工具。

(3)分析和设计工具:辅助建立软件的系统模型和设计的工具。分析和设计引擎将成为新一代分析设计工具,该工具可以对任何分析和设计方法进行定制,根据需要,支持特定的分析和设计方法。

(4) 程序设计 工具:包括常规的编码工具——编译程序、编辑程序、排错程序及第四代语言、应用程序生成器、数据库查询语言和面向对象(OO) 程序设计 环境等。

(5) 测试工具:可以分为数据获取工具、静态分析工具、动态分析工具、模拟工具以及测试管理工具等。其中,静态分析工具通过对源程序的程序结构、数据流和控制流 进行分析,得出程序中函数(过程)的调用与被调用关系、分支和路径、变量定义和引用等情况,发现语义错误。动态分析工具通过执行程序,检查语句、分支和路 径覆盖,测试有关变量值的断点,即对程序的执行流行探测。另一类动态分析工具称为截获/播放工具。测试管理工具用以控制并协调软件测试的每一个主要步骤, 进行回归测试,比较运行结果和期望输出之间的差异,并可实施程序的成批测试。

(6)维护工具:支持软件维护的工具。大致可分为逆向工程工具和再生工程工具。逆向工程工具对已经开发完成的源程序进行分析,抽取程序的系统结构、控制结 构、逻辑流程、数据结构和数据流等信息,并生成分析和设计模型以及其它设计信息。再生工程工具用来支持重构一个功能和性能更为完善的、改进的软件系统。

10.什么是软件过程

  软件过程(Software Procedure)是指软件生存周期所涉及的一系列相关过程。过程是活动的集合;活动是任务的集合;任务要起着把输入进行加工然后输出的作用。活动的执行可以是顺序的、重复的、并行的、嵌套的或者是有条件地引发的。

软 件过程可概括为三类:基本过程类、支持过程类和组织过程类。基本过程类包括获取过程、供应过程、开发过程、运作过程、维护过程和管理过程。支持过程类包括 文档过程、配置管理过程、质量保证过程、验证过程、确认过程、联合评审过程、审计过程以及问题解决过程。组织过程类包括基础设施过程、改进过程以及培训过 程。

软件过程主要针对软件生产和管理进行研究。为了获得满足工程目标的软件,不仅涉及工程开发,而且还涉及工程支持和工程管理。对于一个 特定的项目,可以通过剪裁过程定义所需的活动和任务,并可使活动并发执行。与软件有关的单位,根据需要和目标,可采用不同的过程、活动和任务。

11.什么是软件结构

  软件结构(Software Structure)是指一种层次表况,由软件组成成分构造软件的过程、方法和表示。它是影响软件质量的内在因素,结构良好的软件可以提高软件的可靠性和 易维护性。软件结构主要包括程序结构和文档结构。文挡描述的对象往往很复杂,所以文档结构需要简明、清晰和有层次。程序结构有两层 含义 ,一是指程序的数据结构和控制结构;另一是指由比程序低一级的程序单位(模块)组成程序的过程、方法和表示。在后者 含义 下,具有代表性的是块结构和嵌套结构两种。块结构比较自然,各个部分之间通过一些公用变量取得联系,嵌套结构是在嵌套分程序的基础上引进局部性和动态性,以减少程序的初始信息量,嵌套结构不如块结构直观,调试不方便。

对于模块,可理解为具有如下特性的程序单位,即把这些模块组合成较大的程序时,不要求了解各个模块的内部工作细节,而各模块的正确性也不用置于整个程序中就可检查。按照面向对象的方法来构造软件时,这种模块的概念就可以理解为类(参见面向对象 程序设计 )。

有些程序是单模块结构,有些是多模块结构。这些模块在程序的逻辑上是不可分离的,可以用不同的 程序设计 语言编写,可以由相应的编译程序分别编译,可以和其它的程序单位组合并装入计算机内运行。由于编写大程序的需要,且模块可以多次使用,实行模块化是一个很好的手段。

由一组模块组成的大型程序可有三种结构,即顺序结构、并发结构和分布结构。顺序结构的程序是最古老的,所采用的 程序设计 语言是顺序 程序设计 语言,如ALGOL、FORTRAN、C等。并发结构的程序由若干个可以同时执行的模块组成。这些模块可以在多台处理机上并行执行,也可以在同一台处理机上交叉执行,所采用的 程序设计 语言是并发 程序设计 语言,如并发PASCAL、Modula-2等。分布结构的程序由若干个可独立运行的模块组成,这些模块可以分布于一个分布式系统中,在几台计算机上同时运行,所采用的 程序设计 语言是分布式 程序设计 语言。对于大型程序,也可以是这三种结构的混合。

12.什么是软件开发方法

  软件开发环境(Software Development Environment)是指在基本硬件和宿至软件的基础上,为支持系统软件和应用软件的工程化开发和维护而使用的一组软件,简称SDE。它由软件工具和 环境集成机制构成,前者用以支持软件开发的相关过程、活动和任务,后者为工具集成和软件的开发、维护及管理提供统一的支持。

软件开发环境可按以下几种角度分类:

(1)按软件开发模型及开发方法分类,有支持瀑布模型、演化模型、螺旋模型、喷泉模型以及结构化方法、信息模型方法、面向对象方法等不同模型及方法的软件开发环境。

(2)按功能及结构特点分类,有单体型、协同型、分散型和并发型等多种类型的软件开发环境。

(3) 按应用范围分类,有通用型和专用型软件开发环境。其中专用型软件开发环境与应用领域有关,故又软件开发方法(Software Development Method)是指软件开发过程所遵循的办法和步骤。软件开发活动的目的是有效地得到一些工作产物,也就是一个运行的系统及其支持文档,并且满足有关的质 量要求。软件开发是一种非常复杂的脑力劳动,所以经常更多讨论的是软件开发方法学,指的是规则、方法和工具的集成,既支持开发,也支持以后的演变过程(交 付运行后,系统还会变化,或是为了改错,或是为了功能的增减)。

关于组成软件开发和系统演化的活动有着各种模型(参见软件生存周期,软件开发模型,软件过程),但是典型地都包含了以下的过程或活动:分析、设计、实现、确认(测试验收)、演化(维护)。

有些软件开发方法是专门针对某一开发阶段的,属于局部性的软件开发方法。特别是软件开发的实践表明,在开发的早期阶段多做努力,在后来的测试和维护阶段就会使费用较大地得以缩减。因此,针对分析和设计阶段的软件开发方法特别受到重视。其它阶段的方法,从 程序设计 发展的初期起就是研究的重点,已经发展得比较成熟(参见 程序设计 ,维护过程)。除了分阶段的局部性软件开发方法之外,还有覆盖开发全过程的全局性方法,尤为软件开发方法学注意的重点。

对 软件开发方法的一般要求:当提出一种软件开发方法时,应该考虑许多因素,包括:①覆盖开发全过程,并且便于在各阶段间的过渡;②便于在开发各阶段中有关人 员之间的通信;③支持有效的解决问题的技术;④支持系统设计和开发的各种不同途径;⑤在开发过程中支持软件正确性的校验和验证;⑥便于在系统需求中列入设 计、实际和性能的约束;⑦支持设计师和其他技术人员的智力劳动;⑧在系统的整个生存周期都支持它的演化;⑨受自动化工具的支持。此外,在开发的所有阶段, 有关的软件产物都应该是可见和可控的;软件开发方法应该可教学、可转移,还应该是开放的,即可以容纳新的技术、管理方法和新工具,并且与已有的标准相适应

13.什么是软件开发环境

可称为应用型软件开发环境。

⑷ 按开发阶段分类,有前端开发环境(支持系统规划、分析、设计等阶段的活动)、后端开发环境(支持编程、测试等阶段的活动)、软件维护环境和逆向工程环境 等。此类环境往往可通过对功能较全的环境进行剪裁而得到。软件开发环境由工具集和集成机制两部分构成,工具集和集成机制间的关系犹如“插件”和“插槽”间 的关系。

工具集:软件开发环境中的工具可包括:支持特定过程模型和开发方法的工具,如支持瀑布模型及数据流方法的分析工具、设计工具、编 码工具、测试工具、维护工具,支持面向对象方法的OOA工具、OOD工具和OOP工具等;独立于模型和方法的工具,如界面辅助生成工具和文档出版工具;亦 可包括管理类工具和针对特定领域的应用类工具。

集成机制:对工具的集成及用户软件的开发、维护及管理提供统一的支持。按功能可划分为环境信息库、过程控制及消息服务器、环境用户界面三个部分。

环境信息库:是软件开发环境的核心,用以储存与系统开发有关的信息并支持信息的交流与共享。库中储存两类信息,一类是开发过程中产生的有关被开发系统的信息,如分析文档、设计文档、测试报告等;另一类是环境提供的支持信息,如文档模板、系统配置、过程模型、可复用构件等。

过程控制和消息服务器:是实现过程集成及控制集成的基础。过程集成是按照具体软件开发过程的要求进行工具的选择与组合,控制集成并行工具之间的通信和协同工作。

环境用户界面:包括环境总界面和由它实行统一控制的各环境部件及工具的界面。统一的、具有一致视感(Look & Feel)的用户界面是软件开发环境的重要特征,是充分发挥环境的优越性、高效地使用工具并减轻用户的学习负担的保证。

较完善的软件开发环境通常具有如下功能:

(1)软件开发的一致性及完整性维护;

(2)配置管理及版本控制;

(3)数据的多种表示形式及其在不同形式之间自动转换;

(4)信息的自动检索及更新;

(5)项目控制和管理;

(6)对方法学的支持。

14.什么是软件开发模型

  软件开发模型(Software Development Model)是指软件开发全部过程、活动和任务的结构框架。软件开发包括需求、设计、编码和测试等阶段,有时也包括维护阶段。

软件开发模型能清晰、直观地表达软件开发全过程,明确规定了要完成的主要活动和任务,用来作为软件项目工作的基础。对于不同的应用系统、采用不同的模型。

最 早出现的软件开发模型是1970年W·Royce提出的瀑布模型。该模型给出了固定的顺序,将生存期活动从上一个阶段向下一个阶段逐级过渡,如同流水下 泻,最终得到所开发的软件产品,投入使用。但计算拓广到统计分析、商业事务等领域时,大多数程序采用高级语言(如FORTRAN、COBOL等)编写。瀑 布模式模型也存在着缺乏灵活性、无法通过并发活动澄清本来不够确切的需求等缺点。

常见的软件开发模型还有:演化模型、螺旋模型、喷泉模型、智能模型等。

15.什么是软件语言

  软件语言(Software Language)是用于书写计算机软件的语言。它主要包括需求定义语言、功能性语言、设计性语言、 程序设计 语言以及文档语言等。

需 求定义语言用以书写软件需求定义,软件需求定义是软件功能需求和非功能需求的定义性描述。软件功能需求刻画“做什么”,软件非功能需求刻画诸如功能性限 制、设计限制、环境描述、数据预通信规程以及项目管理等。需求定义语言经历了从非形式的自然语言到半形式化语言以及形式化语言的发展,迄今半形式化的需求 定义语言已经有很大的发展,已逐步用于软件工程的实践。

功能性语言用以书写软件功能规约,软件功能规约是软件功能的严格而完整的陈述。软 件功能规约通常只刻画软件系统“做什么”的外部功能,而不涉及系统“如何做”的内部算法,因此,功能性语言通常又称为功能规约语言。从形式化的程度看,有 非形式化功能性语言和形式化功能性语言之分。功能性语言涉及对象,规约方法以及规约性质等。规约对象主要包括过程抽象和数据抽象两类:过程抽象是指从输入 值到输出值集的映射,其定义域和值域均由数据抽象刻画。数据抽象则提供了数据值及其上的运算符集。规约方法涉及如何对过程抽象预数据抽象进行规约。

设 计性语言用以书写软件设计规约。软件设计规约是软件设计的严格而完整的陈述。一方面,它是软件功能规约的算法性细化,刻画了软件“如何做”的内部算法;另 一方面,它又是软件实现的依据从。从细化程度来看,有总体设计规约与详细设计规约之分。前者刻画设计的总计框架;后者刻画详尽细节。

实现性语言,即一般的 程序设计 语言,用于计算机程序、处理对象和规则的描述。 程序设计 语言有高级语言和低级语言之分。

文档语言用以书写软件文档。以上的软件需求定义,软件功能规约,软件设计规约等都是软件文档。此外还可能有一些其他阐明性的资料,这些也是软件文档。

16.什么是人机交互技术

  人机交互技术(Human-Computer Interaction Techniques)是指通过计算机输入、输出设备,以有效的方式实现人与计算机对话的技术。它包括机器通过输出或显示设备给人提供大量有关信息及提示 请示等,人通过输入设备给机器输入有关信息及提示请示等,人通过输入设备给机器输入有关信息,回答问题等。人机交互技术是计算机用户界面设计中的重要内容 之一。它与认知学、人机工程学、心理学等学科领域有密切的联系。

17.么是面向对象方法

面向对象方法(Object- Oriented Method)是一种把面向对象的思想应用于软件开发过程中,指导开发活动的系统方法,简称OO (Object-Oriented)方法,是建立在“对象”概念基础上的方法学。对象是由数据和容许的操作组成的封装体,与客观实体有直接对应关系,一个 对象类定义了具有相似性质的一组对象。而每继承性是对具有层次关系的类的属性和操作进行共享的一种方式。所谓面向对象就是基于对象概念,以对象为中心,以 类和继承为构造机制,来认识、理解、刻画客观世界和设计、构建相应的软件系统。

面向对象方法的具体实施步骤如下:

1)面向对象分析:从问题陈述入手,分析和构造所关心的显示世界问题域的模型,并用相应的符号系统表示。模型必须是简洁、明确地抽象目标系统必须做的事,而不是如何做。分析步骤为:

(1)确定问题域,包括定义论域,选择论域,根据需要细化和增加论域;

(2)区分类和对象,包括定义对象,定义类、命名;

(3)区分整体对象以及组成部分,确定类的关系以及结构;

(4)定义属性,包括确定属性,安排属性;

(5)定义服务,包括确定对象状态,确定所需服务,确定消息联结;

(6)确定附加的系统约束。

2)面向对象设计:面向对象的设计与传统的以功能分解为主的设计有所不同。具体设计步骤为:

(1)应用面向对象分析,对用其他方法得到的系统分析的结果进行改进和完善;

(2)设计交互过程和用户接口;

(3)设计任务管理,根据前一步骤确定是否需要多重任务,确定并发性,确定以何种方式驱动任务,设计子系统以及任务之间的协调与通信方式,确定优先级;

(4)设计全局资源,确定边界条件,确定任务或子系统的软、硬件分配;

(5)对象设计。

3)面向对象实现:使用面向对象语言实现面向对象的设计相对比较容易。如果用非面向对象语言实现面向对象的设计时,特别需要注意和规定保留程序的面向对象结构。

传 统的面向功能的方法学中,强调的是确定和分解系统功能,这种做法虽然是目标的最直接的实现方式,但是由于功能是软件系统中最不稳定、最容易变化的方面,因 而使系统难以维护和扩展。面向对象设计首先强调来自域的对象,然后围绕对象设置属性和操作。用面向对象设计,其结构源于客观世界稳定的对象结构。因而与传 统软件设计方法相比,明显提高了软件的生产率,可靠性,易重用性、易维护性等方面的效果。

18. 什么是数据库

  数据库是依照某种数据模型组织起来并存放二级存储器中的数据集合。这种数据集合具有如下特点:尽可能不重复,以最优方式为某个特定组织的多种应用服务,其 数据结构独立于使用它的应用程序,对数据的增、删、改和检索由统一软件进行管理和控制。从发展的历史看,数据库是数据管理的高级阶段,它是由文件管理系统 发展起来的。

数据库的基本结构分三个层次,反映了观察数据库的三种不同角度。

(1)物理数据层。它是数据库的最内层,是物理存贮设备上实际存储的数据的集合。这些数据是原始数据,是用户加工的对象,由内部模式描述的指令操作处理的位串、字符和字组成。

(2)概念数据层。它是数据库的中间一层,是数据库的整体逻辑表示。指出了每个数据的逻辑定义及数据间的逻辑联系,是存贮记录的集合。它所涉及的是数据库所有对象的逻辑关系,而不是它们的物理情况,是数据库管理员概念下的数据库。

(3)逻辑数据层。它是用户所看到和使用的数据库,表示了一个或一些特定用户使用的数据集合,即逻辑记录的集合。

数据库不同层次之间的联系是通过映射进行转换的。数据库具有以下主要特点:

(1)实现数据共享。数据共享包含所有用户可同时存取数据库中的数据,也包括用户可以用各种方式通过接口使用数据库,并提供数据共享。

(2)减少数据的冗余度。同文件系统相比,由于数据库实现了数据共享,从而避免了用户各自建立应用文件。减少了大量重复数据,减少了数据冗余,维护了数据的一致性。

(3)数据的独立性。数据的独立性包括数据库中数据库的逻辑结构和应用程序相互独立,也包括数据物理结构的变化不影响数据的逻辑结构。

(4)数据实现集中控制。文件管理方式中,数据处于一种分散的状态,不同的用户或同一用户在不同处理中其文件之间毫无关系。利用数据库可对数据进行集中控制和管理,并通过数据模型表示各种数据的组织以及数据间的联系。

(5) 数据一致性和可维护性,以确保数据的安全性和可靠性。主要包括:①安全性控制:以防止数据丢失、错误更新和越权使用;②完整性控制:保证数据的正确性、有 效性和相容性;③并发控制:使在同一时间周期内,允许对数据实现多路存取,又能防止用户之间的不正常交互作用;④故障的发现和恢复:由数据库管理系统提供 一套方法,可及时发现故障和修复故障,从而防止数据被破坏

19. 什么是数据库管理

  数据库管理(Database Administration)是有关建立、存储、修改和存取数据库中信息的技术,是指为保证数据库系统的正常运行和服务质量,有关人员须进行的技术管理 工作。负责这些技术管理工作的个人或集体称为数据库管理员(DBA)。数据库管理的主要内容有:数据库的建立、数据库的调整、数据库的重组、数据库的重 构、数据库的安全控制、数据的完整性控制和对用户提供技术支持。

数据库的建立:数据库的设计只是提供了数据的类型、逻辑结构、联系、约束和存储结构等有关数据的描述。这些描述称为数据模式。要建立可运行的数据库,还需进行下列工作:

(1)选定数据库的各种参数,例如最大的数据存储空间、缓冲决的数量、并发度等。这些参数可以由用户设置,也可以由系统按默认值设置。

(2)定义数据库,利用数据库管理系统(DBMS)所提供的数据定义语言和命令,定义数据库名、数据模式、索引等。

(3)准备和装入数据,定义数据库仅仅建立了数据库的框架,要建成数据库还必须装入大量的数据,这是一项浩繁的工作。在数据的准备和录入过程中,必须在技术和制度上采取措施,保证装入数据的正确性。计算机系统中原已积累的数据,要充分利用,尽可能转换成数据库的数据。

20. 什么是数据库管理系统

  数据库管理系统(Database Management System)是一种操纵和管理数据库的大型软件,是用于建立、使用和维护数据库,简称DBMS。它对数据库进行统一的管理和控制,以保证数据库的安全性 和完整性。用户通过DBMS访问数据库中的数据,数据库管理员也通过DBMS进行数据库的维护工作。它提供多种功能,可使多个应用程序和用户用不同的方法 在同时或不同时刻去建立,修改和询问数据库。

按功能划分,数据库管理系统大致可分为6个部分:

(1)模式翻译:提供数据定义语言(DDL)。用它书写的数据库模式被翻译为内部表示。数据库的逻辑结构、完整性约束和物理储存结构保存在内部的数据字典中。数据库的各种数据操作(如查找、修改、插入和删除等)和数据库的维护管理都是以数据库模式为依据的。

(2)应用程序的编译:把包含着访问数据库语句的应用程序,编译成在DBMS支持下可运行的目标程序。

(3)交互式查询:提供易使用的交互式查询语言,如SQL。DBMS负责执行查询命令,并将查询结果显示在屏幕上。

(4)数据的组织与存取:提供数据在外围储存设备上的物理组织与存取方法。

⑸事务运行管理:提供事务运行管理及运行日志,事务运行的安全性监控和数据完整性检查,事务的并发控制及系统恢复等功能。

(6)数据库的维护:为数据库管理员提供软件支持,包括数据安全控制、完整性保障、数据库备份、数据库重组以及性能监控等维护工具。

基 于关系模型的数据库管理系统已日臻完善,并已作为商品化软件广泛应用于各行各业。它在各户服务器结构的分布式多用户环境中的应用,使数据库系统的应用进一 步扩展。随着新型数据模型及数据管理的实现技术的推进,可以预期DBMS软件的性能还将更新和完善,应用领域也将进一步地拓宽。

21.  什么是数据库系统

  数据库系统是一个实际可运行的存储、维护和应用系统提供数据的软件系统,是存储介质、处理对象和管理系统的集合体。它通常由软件、数据库和数据管理员组 成。其软件主要包括操作系统、各种宿主语言、实用程序以及数据库管理系统。数据库由数据库管理系统统一管理,数据的插入、修改和检索均要通过数据库管理系 统进行。数据管理员负责创建、监控和维护整个数据库,使数据能被任何有权使用的人有效使用。数据库管理员一般是由业务水平较高、资历较深的人员担任。

数据库系统的个体 含义 是指一个具体的数据库管理系统软件和用它建立起来的数据库;它的学科 含义 是指研究、开发、建立、维护和应用数据库系统所涉及的理论、方法、技术所构成的学科。在这一 含义 下,数据库系统是软件研究领域的一个重要分支,常称为数据库领域。

数 据库研究跨越于计算机应用、系统软件和理论三个领域,其中应用促进新系统的研制开发,新系统带来新的理论研究,而理论研究又对前两个领域起着指导作用。数 据库系统的出现是计算机应用的一个里程牌,它使得计算机应用从以科学计算为主转向以数据处理为主,并从而使计算机得以在各行各业乃至家庭普遍使用。在它之 前的文件系统虽然也能处理持久数据,但是文件系统不提供对任意部分数据的快速访问,而这对数据量不断增大的应用来说是至关重要的。为了实现对任意部分数据 的快速访问,就要研究许多优化技术。这些优化技术往往很复杂,是普通用户难以实现的,所以就由系统软件(数据库管理系统)来完成,而提供给用户的是简单易 用的数据库语言。由于对数据库的操作都由数据库管理系统完成,所以数据库就可以独立于具体的应用程序而存在,从而数据库又可以为多个用户所共享。因此,数 据的独立性和共享性是数据库系统的重要特征。数据共享节省了大量人力物力,为数据库系统的广泛应用奠定了基础。数据库系统的出现使得普通用户能够方便地将 日常数据存入计算机并在需要的时候快速访问它们,从而使计算机走出科研机构进入各行各业、进人家庭。

22. 什么是数据库设计

  数据库设计(Database Design)是指根据用户的需求,在某一具体的数据库管理系统上,设计数据库的结构和建立数据库的过程。

一般,数据库的设计过程大致可分为5个步骤:

(1)需求分析;调查和分析用户的业务活动和数据的使用情况,弄清所用数据的种类、范围、数量以及它们在业务活动中交流的情况,确定用户对数据库系统的使用要求和各种约束条件等,形成 用户需求 规约。

(2) 概念设计;对用户要求描述的现实世界(可能是一个工厂、一个商场或者一个学校等),通过对其中住处的分类、聚集和概括,建立抽象的概念数据模型。这个概念 模型应反映现实世界各部门的信息结构、信息流动情况、信息间的互相制约关系以及各部门对信息储存、查询和加工的要求等。所建立的模型应避开数据库在计算机 上的具体实现细节,用一种抽象的形式表示出来。以扩充的实体——联系模型方法为例,第一步先明确现实世界各部门所含的各种实体及其属性、实体间的联系以及 对信息的制约条件等,从而给出各部门内所用信息的局部描述(在数据库中称为用户的局部视图)。第二步再将前面得到的多个用户的局部视图集成为一个全局视 图,即用户要描述的现实世界的概念数据模型。

(3)逻辑设计;主要工作是将现实世界的概念数据模型设计成数据库的一种逻辑模式,即适应于某种特定数据库管理系统所支持的逻辑数据模式。与此同时,可能还需为各种数据处理应用领域产生相应的逻辑子模式。这一步设计的结果就是所谓“逻辑数据库”。

(4) 物理设计;根据特定数据库管理系统所提供的多种存储结构和存取方法等依赖于具体计算机结构的各项物理设计措施,对具体的应用任务选定最合适的物理存储结构 (包括文件类型、索引结构和数据的存放次序与位逻辑等)、存取方法和存取路径等。这一步设计的结果就是所谓“物理数据库”。

(5)验证设 计;在上述设计的基础上,收集数据并具体建立一个数据库,运行一些典型的应用任务来验证数据库设计的正确性和合理性。一般,一个大型数据库的设计过程往往 需要经过多次循环反复。当设计的某步发现问题时,可能就需要返回到前面去进行修改。因此,在做上述数据库设计时就应考虑到今后修改设计的可能性和方便性。

至 今,数据库设计的很多工作仍需要人工来做,除了关系型数据库已有一套较完整的数据范式理论可用来部分地指导数据库设计之外,尚缺乏一套完善的数据库设计理 论、方法和工具,以实现数据库设计的自动化或交互式的半自动化设计。所以数据库设计今后的研究发展方向是研究数据库设计理论,寻求能够更有效地表达语义关 系的数据模型,为各阶段的设计提供自动或半自动的设计工具和集成化的开发环境,使数据库的设计更加工程化、更加规范化和更加方便易行,使得在数据库的设计 中充分体现软件工程的先进思想和方法。

23. 什么是信息系统

  信息系统(Information System)是以提供信息服务为主要目的的数据密集型、人机交互的计算机应用系统。它在技术上有4个特点:

(1)涉及的数据量大。数据一般需存放在辅助存储器中,内存中只暂存当前要处理的一小部分数据;

(2)绝大部分数据是持久的,即不随程序运行的结束而消失,而需长期保留在计算机系统中;

(3)这些持久数据为多个应用程序所共享,甚至在一个单位或更大范围内共享;

(4)除具有数据采集、传输、存储和管理等基本功能外,还可向用户提供信息检索、统计报表、事务处理、规划、设计、指挥、控制、决策、报警、提示、咨询等信息服务。

信息系统是一种面广量大的计算机应用系统,管理信息系统、地理信息系统、指挥信息系统、决策支持系统、办公信息系统、科学信息系统、情报检索系统、医学信息系统、银行信息系统、民航订票系统……都属于这个范畴。

就用途来说,信息系统其基本结构又是共同的。它一般可分为4个层次:

(1)硬件、操作系统和网络层,是开发信息系统的支撑环境;

(2)数据管理层,是信息系统的基础,包括数据的采集、传输、存取和管理,一般以数据库管理系统(DBMS)作为其核心软件;

(3)应用层,是与应用直接有关的一层,它包括各种应用程序,例如分析、统计、报表、规划、决策等;

(4) 用户接口层,这是信息系统提供给用户的界面。信息系统是一个向单位或部门提供全面信息服务的人机交互系统。它的用户包括各级人员,其影响也遍及整个单位或 部门。由于信息系统的用户多数是非计算机专业人员,用户接口的友善性十分重要。用户接口在信息系统中所占比重越来越高。信息系统的开发和运行,不只是一个 技术问题,许多非技术因素,如领导的重视、用户的合作和参与等,对其成败往往有决定性影响。由于应用环境和需求的变化,对信息系统常常要做适应性维护。在 开发和维护过程中,尽可能采用各种软件开发工具是十分必要的。

24. 什么是管理信息系统

  办公信息系统(Office Information System)是由办公人员和办公设备构成,可以执行各种办公职能以提高办公效益和效能为目的的人机信息系统。它的职能包括文字处理、情报、检索、电子邮 递、电子日志、管理信息系统(Management Information System,简称MIS)是一种建立在各有关业务信息系统(OIS)之一,利用人工过程、数学模型以及数据库等资源为企事业单位的运行、管理、分析和决 策等职能提供信息支持的综合性计算机应用系统,是管理人员实现其目标的有效工具。

管理信息系统对企业事业单位的作用在于加快信息的采集、传送及处理速度,实验数据在全单位的共享,及时地为各级管理人员提供所需的信息,辅助他们决策,从而改善单位的运行效率及效果。通常MIS的实施需要三大要素:系统观点,数学的方法,计算机的支持。

管 理信息系统的系统结构:管理信息系统主要包括支撑系统和应用系统。支撑系统是由计算机、计算机网络及数据库系统等组成,为应用系统提供运行环境。支撑系统 有两种典型的结构形式,即集中式结构和分布式结构。管理信息系统的功能是由应用系统实现的,应用系统的结构应与单位的结构和管理活动相适应,既可支持各个 部门的管理职能,也能支持每种职能不同层次上的管理活动。执行每一种职能都需要一组特写的数据和处理功能,它们便形成了MIS中各个相对独立的子系统。一 个管理信息系统中子系统的设置因不同的企业而异。各子系统之间,借助通信网络与数据库实现互连及数据共享,使整个系统集成为一个有机的整体。每种职能的管 理活动一般分为三个层次:运行控制层、管理控制层及战略规划层,管理信息系统的每个子系统均有相应的功能支持这些层次上的管理活动。另外每个子系统还有一 个事务处理功能,支持最底层的日常例行的事务数据处理。这一层功能涉及的数据量最大,且处理过程是预先确定的,结构化、程序化程度最高。越往上,加工处理 的数据越综合,数据量越少,结构化、程序化程度越低。一般的管理信息系统对战略规划层的活动支持较弱,这部分功能将由专门的决策支持系统提供。

管理信息系统的系统开发:MIS系统的开发主要是应用软件的开发,其开发过程参见软件工程。

管理信息系统的系统运行:经验证后的系统可正式投入运行。

这个阶段的主要活动有系统的日常运行管理,系统行为的合法性审查,系统功能与性能的监测和评估以及根据审查或评测结果对系统进行维护。

管理信息系统涉及学科主要有管理学、运筹学、系统工程学、统计学、计算机科学及通信学等

25. 什么是办公信息系统

  电子文件柜,电子会议和通信等。办公设备一般包括计算机(硬件、软件)、通信、文字处理和印刷等设备,计算机是核心。办公信息系统涉及行为科学、系统科 学、计算技术和通信技术等学科。它是一个人机系统,设备和资源(包括数据和软件)是重要条件,但人是办公的决定因素。它所处理的数据已从单一的文本数据发 展到包括文本、语音、图形、图像、动画、视频等的多媒体数据。

1)办公信息系统的目标和服务对象

办公信息系统通过数据的收集、存储、传递、管理和处理等手段,为办公人员提供信息服务,以提高办公效率和办公质量,从而获得经济效益和社会效益。

办 公信息系统的推广应用,导致办公组织机构和工作方式以及办公流程等方面的变革,对原有办公人员的素质提出了新的要求,同时也提供了许多新的就业机会。办公 信息系统的服务对象包括各级领导、一般管理人员、业务人员、秘书、操作员等。单位的高层领导主要用于进行战略决策,他们关心的是宏观信息。部门领导在其部 门的战术决策上起关键作用,所关心的是本部门的管理信息。一般管理人员和业务人员分工处理各自的业务,进行业务操作和管理。秘书和操作员主要从事事务操 作。

2)办公信息系统的类型

按照办公信息系统所能支持的最高层次,办公信息系统可划分为事务处理型、信息管理型和决策支持型三种。

办公信息系统也可以按其所服务的组织机构划分为若干层次,如政府办公信息系统有中央部委、省市、地、县等办公信息系统之分;企业有总公司、分公司、工厂、车间等层次的办公信息系统。各层次还可按功能划分为若干子系统。

办公信息系统还可按行业的特点划分为以下类型:

(1)事务型:以文字处理和事务处理为主的办公信息系统。如行文系统、订单处理、民航订票、编辑出版、图书馆等;

(2)专业型:服务对象为种专业机构,如律师、会计、审计事务所,设计院等;

(3)案例型:以案例为主的办公信息系统,如用于法院、公安、医院等的办公信息系统;

(4)生产型:以生产管理为主,主要涉及生产的计划、组织、指挥、控制等,而以经营管理为辅,或称生产经营型办公信息系统;

(5)经营型:以经营管理为主,主要涉及市场需求、供销流通、预测决策、用户服务等。如用于银行、公司、商店等的办公信息系统;

(6)政府型:如各级政府的办公系统及其信息中心等。

26. 什么是电子商务

  所谓电子商务(E-business),就是利用计算机技术、网络技术和远程通信技术,实现整个商务(买卖)过程中的电子化,数字化和网络化,在网上开展 商务活动。当企业将它的主要业务,通过企业内部网(Intranet)、科联网(Extranet)以及互联网(Internet),与企业的客户、供销 商、其他合作伙伴以及员工直接相连时,其中发生的各种活动就是电子商务。从宏观上讲,电子商务是信息网络的崭新应用,是通过电子手段建立一种新的经济秩 序,它不仅涉及电子技术和商业交易本身,而且涉及诸如金融、税务、教育等社会其他层面。从微观角度说,电子商务是指各种具有商业活动能力的实体(生产企 业、商贸企业、金融机构、政府机构、个人消费者等),利用信息网络进行的各项商业活动。

电子商务的交易过程也分为三个阶段:交易前、交易 中和交易后。交易前,主要指交易各方在交易合同签定前的活动,包括在各种商务网络和Internet上发布和寻找交易机会,通过交换信息来比较价格和条 件、了解对方国家的贸易政策、选择交易对象;交易中,主要指合同签定后的贸易交易过程,涉及银行、运输、税务、海关等方面的电子单证交换,即EDI;交易 后,在交易双方办完各种手续后,商品交付运输公司起运,可以通过电子商务跟踪货物,银行按照合同,依据提供的单位支付资金,出具相应的银行单证,实现整个 交易过程。

电子商务发展的特点:更广阔的环境、更广阔的市场、更快速的流通和低廉的价格、更符合时代的要求。电子商务涵盖的业务包括:信 息交换、售前售后服务(提供产品和服务的细节、产品使用技术指南、回答顾客意见)、销售、电子支付(使用电子资金转帐、信用卡、电子支票、电子现金)、运 输(包括商品的发送管理和运输跟踪、以及可以电子化传送的产品的实际发送)、组建虚拟企业(组建一个物理上不存在的企业,集中一批独立的中小公司的权限, 提供比任何单独公司多得多的产品和服务)、公司和贸易伙伴可以共同拥有和运营共享的商业方法等。

27. 什么是电子商务的支撑环境

  电子商务影响的不仅仅是交易各方的交易过程,它在一定程度上改变了市场的组成结构和规则。传统上,市场交易链是在商品、服务和货币的交换过程中形成的,电 子商务则强化了信息因素的重要性。于是就有了信息商品、信息服务和电子货币。贸易的实质没有变化,但是贸易过程中的一些环节,因为所依附的载体发生了变 化,也相应地改变了形式。这样,从个别企业来看,贸易的方式发生了一些变化。从整个贸易环境来看,有的商业机会消失了,同时新的商业机会产生,有的行业衰 退了,同时别的行业兴起了,从而使整个贸易格局呈现出崭新的面貌。

电子商务的支撑环境除了传统商业的因素之外,还包括:

(1)信息高速公路实际上是指网络基础设施的建设:主要由骨干网、城域网、局域网等组成,它使任何一台联网的计算机能够随时通过网络同世界连为一体。信息可能是通过电话线传播的,也可能是通过无线电波的方式传递。

(2) 电子商务政策法规和技术标准的制定:电子商务是建立在跨国界的信息网络之上的贸易方式,相关政策法规必须与此保持一致,但是各国国情相距甚远,电子商务的 共同要求和各国具体情况间往往会发生冲突,需要国际社会协调解决。如1996年,联合国贸易发展局通过了“电子商务示范法”。美国、俄罗斯、德国、英国等 国家先后颁布了多项法规来推动电子商务。就整个网络环境来说,标准对于保证兼容性和通用性是十分重要的。技术标准定义了用户接口、传输协议、信息发布标准 等技术细节。目前许多的厂商、机构都意识到标准的重要性,正致力于联合起来开发统一标准,像维萨信用卡(VISA),万事达信用卡(Master Card)的发行商已经同业界合作,制定出保障电子商务安全支付的SET协议。

(3)信息的网上发布、查询、检索的实现:像亚马逊公司这样的联机书店,在网站上发布产品目录和存货清单,吸引了网站上数目极为可观的顾客。此外,一个复杂的网站服务器,可以向一个特定的查询者提供符合其个人习惯的目录,其功能比任何用户登记卡能做到的都更好、更持久。

(4) 多媒体信息传播的工具开发:网络上传播的内容包括有文本、图片、声音、图像等,还得确保它传递的消息是可靠的、不可篡改的、不可否认的,在有争议的时候能 够提供适当的证据。网络传播工具以往提供了两种交流方式:一种是非格式化的数据交流,比如我们用传真和电子邮件传递的消息,它主要是面向人的;另一种是格 式化的数据交流,电子数据交换贸易(EDI)就是典型代表,它的传递和处理过程可以是自动化的,无需人的干涉,也就是面向机器的,订单、发票、装运单都比 较适合格式化的数据交流。

28. 什么是电子商务的主要应用系统

  电子商务的主要应用系统包括:

1)企业——企业应用系统(B to B,B2B)

企 业与企业之间的电子商务将是电子商务业务的主体,约占电子商务总交易量90%。就目前来看,电子商务在供货、库存、运输、信息流通等方面大大提高企业的效 率,电子商务最热心的推动者也是商家。企业和企业之间的交易是通过引入电子商务能够产生大量效益的地方。对于一个处于流通领域的商贸企业来说,由于它没有 生产环节,电子商务活动几乎覆盖了整个企业的经营管理活动,是利用电子商务最多的企业。通过电子商务,商贸企业可以更及时、准确地获取消费者信息,从而准 确定货、减少库存,并通过网络促进销售,以提高效率、降低成本,获取更大的利益。

企业间电子商务通用交易过程可以分为以下四个阶段。一是交易前的准备。这一阶段主要是指买卖双方和参加交易各方在签约前的准备活动。二是交易谈判和签订合 同。这一阶段主要是指买卖双方对所有交易细节进行谈判,将双方磋商的结果以文件的形式确定下来,即以书面文件形式和电子文件形式签订贸易合同。三是办理交 易进行前的手续。这一阶段主要是指买卖双方签订合同后到合同开始履行之前办理各种手续的过程。四是交易合同的履行和索赔。

2)企业一消费者的应用系统(B to C,B2C)

从 长远来看,企业对消费者的电子商务将最终在电子商务领域占据重要地位。但是由于各种因素的制约,目前以及比较长的一段时间内,这个层次的业务还只能占比较 小的比重。它是以互联网为主要服务提供手段,实现公众消费和提供服务,并保证与其相关的付款方式的电子化。它是随着万维网(WWW)的出现而迅速发展的, 可以将其看作是一种电子化的零售。目前,在互联网网上遍布各种类型的商业中心,提供从鲜花、书籍到计算机、汽车等各种消费商品和服务。目前在互联网的万维 网上有很多这一类型电子商务应用的例子,如全球最大的亚马逊书店(Http ://www.amazon.com),顾客可以自己管理和跟踪货物的联邦快递(Http://fedex.com),网上预订外卖食品的比萨屋 (http ://www.pizzahut.com)。在国内也有一些网上购物商店。

这种购物过程彻底改变了传统的面对面交易和一手交钱一手交货及面谈等购物方式,这是一种新的,很有效的电子购物方式。当然,要想放心大胆地进行电子购物活动,还需要非常有效的电子商务保密系统。

3)企业——政府的应用系统(B to G,B2G)

包 括政府采购、税收、商检、管理规则发布等在内的、政府与企业之间的各项事务都可以涵盖在其中。例如,政府的采购清单可以通过互联网发布,公司以电子的方式 回应。随着电子商务的发展,这类应用将会迅速增长。政府在这里有两重角色:既是电子商务的使用者,进行购买活动,属商业行为人。又是电子商务的宏观管理 者,对电子商务起着扶持和规范的作用。在发达国家,发展电子商务往往主要依靠私营企业的参与和投资,政府只起引导作用。与发达国家相比,发展中国家企业规 模偏小,信息技术落后,债务偿还能力低,政府的参与有助于引进技术、扩大企业规模和提高企业偿还债务的能力。

29. 什么是电子政务

  电子政务是指在现代计算机、网络通信等技术支撑下,政府机构日常办公、信息收集与发布、公共管理等事务在数字化、网络化的环境下进行的国家行政管理形式。 它包含多方面的内容,如政府办公自动化、政府部门间的信息共建共享、政府实时信息发布、各级政府间的远程视频会议、公民网上查询政府信息、电子化民意调查 和社会经济统计等。

在各国积极倡导的“信息高速公路”的应用领域中,“电子政府”被列为第一位,可见政府信息网络化在社会信息网络化中的 重要作用。在政府内部,各级领导可以在网上及时了解、指导和监督各部门的工作,并向各部门做出各项指示。这将带来办公模式与行政观念上的一次革命。在政府 内部,各部门之间可以通过网络实现信息资源的共建共享联系,既提高办事效率、质量和标准,又节省政府开支、起到反腐倡廉作用。

政府作为国 家管理部门,其本身上网开展电子政务,有助于政府管理的现代化。我国政府部门的职能正从管理型转向管理服务型,承担着大量的公众事务的管理和服务职能,更 应及时上网,以适应未来信息网络化社会对政府的需要,提高工作效率和政务透明度,建立政府与人民群众直接沟通的渠道,为社会提供更广泛、更便捷的信息与服 务,实现政府办公电子化、自动化、网络化。通过互联网这种快捷、廉价的通信手段,政府可以让公众迅速了解政府机构的组成、职能和办事章程,以及各项政策法 规,增加办事执法的透明度,并自觉接受公众的监督。同时,政府也可以在网上与公众进行信息交流,听取公众的意见与心声,在网上建立起政府与公众之间相互交 流的桥梁,为公众与政府部门打交道提供方便,并从网上行使对政府的民主监督权利。

在电子政务中,政府机关的各种数据、文件、档案、社会经 济数据都以数字形式存贮于网络服务器中,可通过计算机检索机制快速查询、即用即调。经济和社会信息数据是花费了大量的人力、财力收集的宝贵资源,如果以纸 质存贮,其利用率极低,若以数据库文件存储于计算机中,可以从中挖掘出许多有用的知识和信息,服务于政府决策。

30.什么是电子商务的基础支撑技术

电 子商务的基础支撑技术主要包括:安全和认证、电子支付、商品目录和价目表服务等。首先,网上交易过程通常是,购买者发出一笔电子付款(以电子信用卡、电子 支票或电子现金的形式),并随之发出一个付款通知给卖方,当卖方通过中介机构对这笔付款进行认证并最终接收,同时发出货物,这笔交易才算完成。核心问题在 于保证网上支付的安全性,因此必须保证交易是保密的、真实的、完整的和不可抵赖的。目前,是用交易各方的电子证书(即电子身份证明)来提供安全保障。其 次,任何一个商业实体面临的核心领域,可以分为电子销售偿付系统、供货体系服务、客户关系解决方案。如市场调研、咨询服务、商品购买指南等都是客户关系解 决方案的一部分。收缩供货链,是供货体系服务的目标。这些就是商品目录和价目表服务等提供的服务。

31. 什么是远程教育

  现代远程教育是应用信息网络技术和多媒体数字技术,在数字化环境下进行交互式的学习。网络化的现代远程教育涵盖信息源、网络传输、多媒体终端和网络教学管 理四大部分。现代远程教育是20世纪80年代以来国际教育发展的重要趋势。到目前为止,世界上已有100多个国家开展了现代远程教育。随着卫星、光缆和电 视以及各种双向交互式电子通信技术的发展和应用,特别是随着全球计算机网络和多媒体技术的发展,各发达国家和许多发展中国家都在采取措施,支持本国现代远 程教育发展。

远程教育基本的模式包括以下两种:

(1)以群体为基础的远程教育:它指的是通过音频、视频或卫星等把分散于不同地方的教师和学习者联系到远处的网络教室中,我国的电视大学系统就是以群体为基础的远程教育方式;

(2)以个别为基础的远程教育:这种体制的主要特征是科学地为个别学生准备远程教材,以及为在远程学习的学生设计学习辅助系统。互联网的飞速发展,为以个别为基础的远程学习创造了条件。

现 代远程教育体系,以多媒体网络承载和传播包括文、图、声、像在内的覆盖全教学系统的各种要素信息,形成交互式的教学模式,可以实现实时可视远程授课、授课 点播、同步课业辅导、远程讨论交流、交互咨询答疑等丰富的功能,突破了课堂教学和课本教学信息单一化的局限,能充分开发组合和利用有益的信息资源,将多学 科、多层次的丰富信息,通过多种途径传播,有利于全方位培养人才,有利于学习者全面发展。这种开放式教育网的建立,可以有效发挥各种教育资源的优势,而终 身学习体系的形成,将为社会每一个成员进行学习提供机会和可能。

32. 什么是多媒体计算技术

  多媒体计算技术(Multimedia Computing Technology)是使用计算机综合处理文本、图形、图像、声音、动画、视频图像等多种不同类型媒体的信息,从而使计算机能以人类习惯的方式(如视、 听)提供信息服务的计算机技术。其技术特点包括运行的实际性、并发性及人机交互的灵活性等。

以多媒体计算技术为核心的多媒体计算机系统的层次结构:

应用系统——创作系统——多媒体核心系统——多媒体入/出控制接口——多媒体实时压缩与解压缩——计算机硬件。该结构与一般的计算机系统的结构是相通的,只是由于其“多媒体”特性,在每一层的具体内容上有所不同。

就 多媒体计算机系统的硬件层而言,其实质是在原有的计算机硬件系统中加入了能处理声音、图像等多媒体信息的芯片(或卡)。由于处理多媒体信息的很多功能都需 要强大计算能力,以致各种语音、图像等数字信号处理芯片都采用了新型设计结构。如可以从分离存储器中并行存取指令和数据,因而具有更高的速率和性能。多媒 体实时压缩与解压缩层用于对音频、视频等多媒体信息进行压缩与解压缩,以保证对多媒体信息的实时处理。多媒体入、出控制接口层驱动、控制多媒体硬件设备, 并提供软件接口,以便于高层软件调用。多媒体核心系统层包含基本的多媒体操作系统,如MS-Windows 3·1、Quick Time和System 7.0等。创作系统层向开发者和用户提供了具有编辑、播放等功能的多媒体著作工具。应用系统层主要包括各种多媒体应用软件系统,如计算机辅助教育系统、视 频会议系统等。

多媒体计算的关键技术有:

1)数字音频和视频技术。主要解决音频和视频信息的数字化及压缩、解压缩等问题,以便对音频、视频信息做到实时或准实时处理。

2) 多媒体软件平台技术。主要有多媒体操作系统、多媒体著作工具等。多媒体操作系统是指控制多媒体设备,处理多媒体信息的计算机操作系统和视窗软件环境,它通 常应具有实时多任务处理能力;支持多媒体数据格式;支持对音频、视频的实时处理和同步控制以及具有对设备的相对独立性和可扩展性。多媒体著作工作是指一种 高级的多媒体应用程序开发平台,它支持应用人员方便地创作多媒体应用系统(或软件)。目前已有许多基本视窗的多媒体著作工具。

3)多媒体通信技术是指实现多种媒体信息的传输和交换的技术。它主要应解决文本、声音、图像、视频图像等媒体信息的实时表示、实时交换、多路混合传输、交互性、多种媒体的同步以及媒体的最后表示形式等几方面问题。

4)多媒体数据库技术。由于多媒体数据具有复合性、分散性、时序性等特点,因此,多媒体数据库技术除包含一般数据库技术,如数据存储管理、数据共享、并发控制、事务处理等之外,还应解决以下问题:

(1)支持图形、图像、声音、动态视频、文字等多种媒体的一般类型及用户定义的特殊类型;

(2)支持定长数据和非定长数据的集成管理;

(3)有表示和处理对象间复杂关系的能力,有保持让复杂对象完整性和一致性的机制;

(4)保证具有时序性的信息单元之间在时间、空间上的衔接与同步;

(5)多媒体数据的巨额数据量的存储;

(6)支持多媒体操作的用户界面等。

33. 什么是计算机辅助技术

  计算机辅助技术(Computer Aided Technologies)是采用计算机作为工具,将计算机用于产品的设计、制造和测试等过程的技术,辅助人们在特定应用领域内完成任务的理论、方法和技 术。它包括了诸如计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助教学(CAI)等各个领域。“辅助”是强调了人的主导作用,计算机和使 用者构成了一个密切交互的人机系统。

计算机辅助技术在计算机的应用领域不断扩大,应用水平不断提高和计算机科学技术的快速进展情况下不断 深入和拓宽发展。CAD和CAM首先在飞机、汽车和船舶等大型制造业应用中趋于成熟,发展了许多共性的技术,开发出许多可供公用的工具软件和应用软件,其 应用逐步推广到机械、电子、轻纺和服装等产品的制造业以及建筑、土建等工程项目。同时,它的技术和方法也被推广到新的计算机辅助领域,例如计算机辅助工艺 规划(CAPP)、计算机辅助测试(CAT)、计算机辅助质量控制(CAQ),以及应用计算机对制造型企业中的生产和经营活动的全过程进行总体优化组合的 计算机集成制造系统(CIMS)。另外,还有用于教学和培训目的的计算机辅助教学(CAI)。

因为在各种计算机辅助系统的运作过程中都会 频繁地涉及到大量信息和数据,因此数据库管理系统也是它们重要的组成部分,甚至是核心部分。但是目前已较为成熟的商用数据库管理系统常常不能满足其需要。 例如CAI系统和应用于编辑出版领域的CAD系统中,处理的信息常是多种媒体,因此需要多媒体数据库。在CAD或CIMS环境下提供服务的工程数据库,它 的概念模式要描述成千上万个不同类型的实体,其相互间关联非常复杂,而且不稳定,需经常修改。这些新型数据库管理系统正处于技术上不断完善并进入实用化的 阶段。


 

你可能感兴趣的:(软件工程及测试)