件)。程序员首先设计逻辑,然后编写程序,并检查和测试程序。 某些公司将从事开发的程序员和维护的程序员分开,前者仅负责开发新
系统,后者则负责维护现有的系统。 仅在几年前,程序员都希望被提升为系统分析员。不幸的是,这种态度
仍在许多公司流行着,甚至被工资制度所支持。这两种职位(程序员和系统 分析员)要求有不同的技艺。事实上一个程序员不一定要踏上系统分析员的 阶石。工业界将可以看到越来越多的程序员在程序设计和程序设计管理范围 之内发迹。
4.程序员/分析员 那些想要更直接进行系统开发的信息服务领导人已经采用了程序员/分
析员这两个职位合而为一的作法。顾名思义,处在此职位的人员要执行程序 员和系统分析员的双重任务。
并不是每一个信息服务部门都有程序员/分析员的职位,某些公司把程序 员/分析员职位作为程序员与系统分析员之间的中间职位。有时候,设立程序 员/分析员的职位是为了要求程序员能从事系统分析和系统分析员能进行程 序设计而提出的一个折衷方案。程序员/分析员作用的有效性仍然是一个有争 议的问题。许多人认为:两个专家(即一个系统分析员、一个程序员)能够 完成比两个程序员/分析员更多、更高质量的工作。
5.系统程序员
系统程序员从事独立于应用或综合的软件工作。计算机通常附带厂商提 供的系统软件。这个系统软件是计算机工作的基础,其中包括这样的软件模 块:操作系统、I/O 调度程序、使用硬件的记帐系统和实用程序(如分类程 序、磁盘向磁带转储程序)。系统程序员安装各种各样的软件模块,并根据 需要选择适当的软件。厂商以“软件更新”的形式定期地为顾客提供高性能 的各种模块。系统程序设计的职责包括软件的“最新版本”的安装。系统程 序员还要负责对厂商所提供的系统软件按需要作修改,以及负责开发面向系 统的内部软件。
6.项目领导
项目领导这个职位对信息服务来说并没有独立的含义。在信息服务部门 中,项目领导指定由某个职员担任,他要负责新系统的开发与实现,负责实 现对现有系统的改进。其主要责任包括:管理项目、在规定工作期限内完成 任务、定期地报告进度。项目领导历来是从系统分析员中挑选的,然而正如 前面所提到的,某些单位正在成功地试验推选用户作为项目领导。
信息服务的项目领导在不明确的或有时明确的矩阵式管理的单位中是唯 一的。项目组的领导可以从两个不同部门指派四名用户人员组成,也可以从 系统部门指派两名系统分析员和从程序设计部门指派三名程序员组成——项 目组所有人员都是兼职的。这就造成了这样的局面,每个项目组至少有两个 或更多的直接参与系统开发的成员。在矩阵式管理环境中成功的关键是每个 参与成员都要履行对项目所承担的义务(该项目并不一定是在他的控制下)。 例如,销售经理并不允许销售经理助理花 5O%时间用在主要开发项目上,但 一旦该项目正处在开发中,则就应破除这个规定。从表面上看,会出现一点 小问题,但是这样的事总会发生的,这对保证在最后期限内完成任务是非常 有利的。
7.主程序员
在系统开发过程中的程序设计阶段,主要工作量转移到项目组的程序员 身上。因为项目领导有责任来防止与程序设计有过多的牵连,所以在具有两 个或更多的程序员的组里要任命一个主程序员。主程序员对所开发的程序负 主要责任,这样做是为了促进程序开发的层次模块化。
主程序员用多种方式验证程序模块(通常验证一个不超过三个人周), 还要承保作业控制和驱动程序设计及监督从属程序模块的开发。
8.数据库管理员 数据库管理员(DBA)这一职位是随着数据库管理系统软件和公司的集中
数据库不断发展而产生的。数据库管理员负责设计、开发和维护公司的数据 库,并保证数据库的准确性和安全性。
9.监控员 监控员负责检测计算中心所有的输入、输出。负有监控责任的人员是使
用标准程序来验证输出精度的。在验证后将输出文件分发到各用户部门。
10.培训协调员 培训协调员负责监督信息服务培训(对用户和信息服务人员)的需求和
鉴定,并提供教材。培训协调员可以保留一份商务研究班的历史档案及其可 用性和质量说明、各种方式的培训软件包、书籍和杂志图书。
11.技术撰写员/文件编写员
技术撰写员/文件编写员帮助编纂与信息服务有关的手册和文本资料(如 系统资料、用户手册等等)。技术撰写员/文件编写员是信息服务推广的最新 专业化领域中的重要成员。
12.库管理员
“磁带库管理员”这个职务首创于第二代计算机期间。那时,大多数计 算机系统都配有磁带存储设备。通常一个小系统都有数百个工作磁带,有时 在一周内竟要用到其中一半磁带。磁带库管理员要负责准备处理用的磁带, 并且还要在每个磁带上记录处理情况。
当磁带系统发展到磁盘系统,又从磁盘系统发展到联机系统时,“磁带
库”管理员就成为一般的库管理员。目前库管理员主要负责磁带、磁盘、微 缩胶片、文档的使用、监督和贮藏,以及在培训协调员不在时,兼管与信息 服务有关的书籍和杂志。
13.操作员
操作员是指操纵计算机系统正常运行的人员。操作员的操作包括:要装 适当的磁带、磁盘、打印纸和启动例行程序软件包等。
大一点的计算站可以指派一名操作员担任控制台的操作。当监控同时运 行的若干程序、启动特殊作业或出现故障时,控制台操作员与计算机保持不 断的通信;如果计算机系统失灵,控制台操作员则应启动“检查点/重新启动 程序”使“系统重新投入运行”。
14.调度员 在给定某些设备的限制和系统优先级的准则的情况下,调度员争取以最
佳的效率利用硬件资源。在各生产系统中,调度员要分配和调度机时,这些 机时用于程序开发和调试、系统质量保证测试、数据和文件转换、一次性特 别作业、预防性维修、全面维修、硬件的改进和扩充而必须的系统停工等。
15.数据录入员 数据录入员(有时称为键盘操作员)的任务是将数据转换成机器可读的
形式,一般有两种方式:从键盘到磁带(磁盘)和从键盘到穿卡设备。后一 种方式在经济上不如前一种方式。因此将很快被淘汰。数据录入员输入的数 据逐字地被存储设备接收,并且能产生硬拷贝源文件。信息服务部门和用户 部门都配备键盘操作员。当前的趋势是把数据录入工作转移到靠近产生原始 数据的部门,即用户部门。
16.信息服务规划员 信息服务规划员是最近才列入到信息服务专业人员名单中的。信息服务
规划员以年为周期制定和更新信息服务战略规划。
17.信息系统审计员 信息系统审计员是一种与信息服务有关的职务,但并不是信息服务部门
的成员。
□信息服务委员会 与信息服务有关的委员会可以分为两类:第一类包括管理信息服务业务
的委员会,例如,高级管理信息系统指导委员会;另一类包括在信息服务部 门内部机构中设立并尽职的委员会。信息服务委员会有两种形式:常设的和 特设的。常设委员会是永久设立的,通常是定期召开会议。特设委员会是为 了达到更直接的目的(例如,调查和可行性研究)而特别设立的。
1.公司信息服务委员会
(1)名称不一的信息服务委员会。 在信息服务发展初期,公司的信息服务委员会就是高级信息服务指导委
员会。从此公司到彼公司,委员会的名称和职责相差很大。通常的名称有:
计算机咨询委员会,执行数据处理的指导委员会,管理信息系统咨询理事会, 信息服务优先权决定委员会,信息系统政策委员会。为了保持一致性,这个 高级指导委员会被称为信息系统政策委员会(即 ISPC)。其成员一般是用户 管理人员和行政领导。一个高级的信息系统政策委员会是一个公司成功地进 行信息服务必不可少的组成部分。
在过去的十年中,信息系统政策委员会已成为许多公司组织机构流行的
部门。不幸的是,许多这样的委员会的创建是因为要处理“内部”事务,并 不给定明确的职责,因此,这些委员会还不如不建立。在这种情况下,委员 会的建立以及委员会的义务和职责通常是在错误方向上发展。为建立称职的 信息系统政策委员会,公司政策制定者必须提出关于委员职责、会员资格、 会晤次数、涉及的范围和(在某种情况下)出席者等问题。
(2)信息系统政策委员会的职责。
信息系统政策委员会的职责应明确定义,并应系统地进行书面阐述,然 后分送给那些需要知道的人员。下面规定的这些信息系统政策委员会的职责 已证明在许多组织中是行之有效的:
①为使公司高效地运转,必须有信息服务,显然,信息系统政策委员会 一定能促进信息服务。
②定期地向总裁和董事会报告信息服务情况和提出有关建议。
③批准和否决信息服务请求。公司的政策应该根据估算的资源条件(通 常是人力、成本),能够描述出主要的和次要的服务请求的轮廓。
④在批准的信息系统开发项目中负责建立优先权。委员会一般都会遇到 一系列的批准项目,依据公司的需要,这些项目的优先权要不断地调整和更 新。
⑤负责监督信息服务项目的进行和正在运行的生产系统的性能。必要 时,委员会必须估计分配给项目的追加资源的价值,它通常是超过预算的。 当完成项目明显地不如所望时,委员会可以作出继续进行还是停止进行的决 定。许多公司不会采取强迫一个注定要失败的项目尽快地完成的政策(想补 偿损失反而损失更多)。信息系统政策委员会还应监督正在运行的生产系统 的性能,以便能估计他们为公司目标所作的贡献。一般来说,委员会还要负 责签署那些陈旧而无用的信息系统的死亡证。
⑥调停用户部门之间的争论和由信息服务工作与指定的工作听引起的矛 盾。多年来,数据处理领导者处于必须在两个或更多的业务领域中作选择的 处境。重要的过程冲突应该由信息系统政策委员会和那些受此决定影响最大 的部门解决,而不是由信息管理部门解决。
⑦制定与信息服务有关的并且涉及所有部门的政策。
⑧制定信息服务发展的短期和长期的规划。信息服务的规划工作是项冗 长乏味的的任务。通常,必须指派一名信息服务人员来完成规划过程中的技 术工作。委员会提供规划所需的主要输入信息并作出最终的批准。
以上建议的职责范围根据工业的种类和委员会的重点会有很大的变化。 信息系统政策委员会可以利用信息服务部门来帮助履行这些职责。
信息系统政策委员会是公司的(而不是信息服务部门的)重要助手。该
委员会应该由董事长和重事会授于特许的职权。委员会通常要向董事长汇 报,委员会与信息服务部门的联络靠信息服务部门的负责人。
(3)信息服务委员会委员的资格问题。
信息服务政策委员会的委员资格应由公司政策委员会规定。要作到这一 点,董事长、执行委员会和董事会必须回答如下问题:
①谁适合在委员会中任职?如何选择他们?
为了使信息系统政策委员会具有较高的工作效率,它的成员应具备制定 政策的水平。这些成员可以是专业领域的高级管理人员,也可以是公司其他 高级管理人员,副总裁或更高级的人员则更好。在历史上,信息服务指导委 员会还没有取得真正成功的经验。在最好的情况下,充其量是没有引起过分 的麻烦;在最坏的情况下,他们已影响了生产力的发展。为了更好地工作, 委员会必须拥有决策权力并且能保证这些决策贯彻到底。任何一级的信息系 统委员会需要开发大量的信息服务资源来支持该委员会。如果没有果断采取 行动的职权,较低一级的委员会的工作只在那里兜圈子,这样不但浪费了有 价值的资源,而且还浪费了每个成员的时间。
②应该有多少人在委员会里工作? 一个处理如此复杂和政策性很强的课题的委员会,如果超过了八、九个
人,那就可能变得很呆滞,太多的成员会使决策过程带来不必要的困难,因 此建议有六、七个参加表决的成员就行了。
③每一个成员的任期应该多长? 因为大多数主要项目需花费一年多时间,所以任期最短也得一年,两年
或更长一点更好。如果公司只有六个到九个可能胜任的成员,则永久性任职 也是可以的。其它较大的或更多的同行业组织起来的公司需要轮换这一重要 的职责。这种任职应该以这样的方式来轮换,即委员会的核心人物必须在每 个任职周期到期后留任。
④负责信息服务的领导人应是信息系统政策委员会的一员吗?
关于负责信息服务的领导人是否应是信息系统政策委员会的成员这一问 题,是公司应首先考虑的。可笑的是,某些人认为信息服务的领导人应当是 其中一员,而另一些人则认为提出这个问题是荒谬的。指派信息服务领导人 进入信息系统政策委员会的基本思想是这样的:信息服务领导人一般情况下 是由副总裁兼任的,如果他是信息系统政策委员会的成员,就很容易使信息 系统政策委员会成为有权力的机构。也许最能使人信服的理由是因为数据中 心和信息服务部门本身是服务的主要用户,并且认为应该掌握远景方向、项 目开发和优先权的输入信息,所以信息服务领导人应该是该委员会成员。
那些认为信息服务领导人不应该是委员会的成员的主要理由是:信息服 务领导人的出席会在决策过程中带进很多偏见。执委会如不能解决这个争 论,就可以选择一项折衷的办法,那就是使信息服务领导人成为一个无表决 权的成员。甚至有些人建议信息服务领导人成为一个无表决权的主席。
⑤谁能担任主席? 也许选择信息系统政策委员会主席的最好办法是允许全体成员提名并选
举他们自己所喜欢的主席。主席的最短任期为两年。当主席由总裁任命时, 委员会要保持中立就很困难了。事实上,这种中立往往受到来自上级管理部 门压力的影响。另一个可供选择的方案是在公司的高级职员(例如,总经理、 总经理助理、信息服务领导人、审计员等等)中物色合适的人选来担任主席。
⑥主席的职位应该轮换吗?
如果主席是选举产生的,则该职位应该在全体委员中轮换。如果是指派 的,只有当占据该主席职位的人被提升,或者调任时才能更换。
⑦委员会应该多长时间碰头一次?
委员会应经常碰头以保持与项目进展同步,并履行信息系统政策委员会 的职责。信息服务的使用和发展是随公司的不同而不同的。一般建议:委员 会的碰头每两个月至少一次,而每个月不超过一次。这个碰头次数的限度已 被证明是有效的。在信息服务活动的非常时期,应安排专门的会议。
⑧应该有一个鼓励出席会议的政策吗?
为使信息系统政策委员会成为一个有效的工作团体,每个有投票权的成 员必须积极地参加其活动。建议由总裁制定鼓励出席会议的政策。举一个例 子,政策可以要求一个投票成员保持至少 75%的出席次数,而指定为代表的 成员保持至少 90%的出席次数。如果参加次数不足,就失去委员会的席位。 可以制定这样的政策,当一个成员累计出席次数低于最低要求限度时,就自 动地任命新的委员会成员。信息系统政策委员会会员职务应该由具有特殊兴 趣的愿接受此职位的高水平的人担任。任何关于出席政策的建议都不完全是 可取的,但是过去的经验表明:这个不积极的成员必然造成委员会的惰性, 所以,必须不惜代价来避免这样的成员参加委员会。
2.用户委员会 另一个与信息服务有关的公司委员会是用户委员会,这个委员会的目的
就是促进在信息服务和用户团体之间不断地积极联络。这个委员会是由专业 领域的管理人员所组成的,他们与以计算机为基础的信息系统有着密切的联 系。这个委员会定期碰头以便能提供关于信息系统的运行的口头和书面反 馈。
3.信息服务部门里的常设或特设委员会 常设或特设委员会在公司信息服务部门的暂时性日常工作中起主要的作
用。在某些机构中,非正式联系网是获得集中意见和请求外部输入的唯一工 具。相比之下,而其它部门则可自由地利用这种委员会。下面介绍信息服务 中典型的常设或特设委员会。
(1)硬件选择委员会负责评价和挑选所有计算机硬件。在挑选过程中常 常邀请有经验的用户参加,尤其是当用户要付款时,更应该邀请他们参加。
(2)软件选择委员会负责评价和挑选所有的软件产品(系统软件和应用 软件)。专业领域的代表参加应用软件包(专用软件)的选择。
(3)项目指导和审查委员会负责监督和审查主要的、正在进行中的信息 服务项目进展情况。这项任务与信息系统政策委员会的职责有些重叠,但项 目指导和审查委员会能更详细地审查项目。这个委员会并不负责项目的管 理;但是,该委员会主要任务之一是为项目经理提供有意义的反馈信息。
(4)信息服务远景规划委员会可以由信息服务管理组、一名懂技术的职 工(也许是一个高级系统分析员兼信息服务远景规划员)、一个或两个有经 验的用户(不一定要管理人员)组成。该委员会的目的是提供关于信息服务 战略规划的价值和可行性以及一般规划进程的反馈信息。
《复眼——企业管理信息系统》信息服务策略和规程
信息服务没有正确的策略,必然在专业人员与用户之间,用户与用户之 间,信息服务内部产生矛盾。
按照定义,信息服务部门属于服务机构,这种服务机构必须与公司各部 门以及其他信息服务部门之间建立书面正式联系。信息服务策略和规程的重 要性突出地反映在系统综合和协调信息系统规划的需求方面,以及不包含在 信息服务本身业务内的其他潜在的方面。信息服务专业人员和用户管理人员 以及信息系统政策委员会负责建立信息服务策略和规程。
所有与信息服务有关的策略和规程在本章中讨论,这些策略和规程涉及 或影响各业务领域。一个典型的信息服务部门有许多书面的策略和规程,这 些策略和规程对用户团体来说是透明的,因此不需要作详细的解释。
一、信息服务策略的合理性
每个公司实际上都面临两种情况:正常情况和异常情况。一般说来,大 多数用户与信息服务的联系只涉及到正常情况。令人满意的信息服务策略可 直接适用于正常情况而间接适用于异常情况。通过建立适用于大多数正常情 况的准则,信息服务部门将设立一个机构,借此机构,信息服务专业人员和 用户管理人员能够更好地应付异常情况。
多数情况下,信息服务决策取决于个人的准则而不是公司的准则。要求 四名业务领域的管理人员为公司利益而评定所提出的信息服务项目时,就可 能使用不能被其他三个人接受的个人准则。为了公司的利益,制定准则和策 略应该建立决策过程。
公司管理人员,尤其是处在危急环境中的管理人员,必须能够在收集足 够的信息之后迅速决策。合适的信息服务策略的制定能最大限度地减少管理 人员作出错误决策的可能性。
不准确的信息服务策略为用户和信息服务管理人员按他们理解的信息服 务策略作出他们自己的解释敞开了大门。如果没有信息服务策略,那么在信 息服务专业人员和用户人员之间、用户之中、信息服务内部必然产生矛盾。
二、有关策略的几个方面
□信息服务的特许权 作为一种服务机构的信息服务部门,它通常执行来自上级管理部门和它
所服务的业务部门或个人的指示和请求。随着信息服务范围的扩大和趋于分 散化,用户和信息服务的职责界限被混淆了,因此,必须细致地加以区分。 信息服务的特许权通常情况下有如下几方面的职责:输入/输出控制、硬件选 择和采用、数据库综合、字处理等等。当公司批准的信息服务特许权不起作 用时,信息服务和其它领域的职责就会发生矛盾。
当信息服务职责受到破坏时,可能发生的典型例子就是小型机和字处理 设备的失控扩散,这种扩散能够导致兼容性和综合性方面的问题。信息服务 的特许权有时同既定的信息服务策略相重叠,这对于行使特许权没有妨碍。 行使特许权时应对用户管理部门和信息服务部门的职责作书面说明。
1.信息服务部门的职责 一个典型公司的信息服务部门可能要承担下列职责:
(1)信息服务标准和规程的制定;
(2)数据库管理;
(3)负责信息系统的开发、操作、改进和维护;
(4)对硬件设备的维护和保养;
(5)精度控制(在完成原始文件之后);
(6)物理和逻辑的安全性;
(7)向公司提出有关计算机信息系统使用的建议;
(8)信息服务的远景规划和信息系统的综合;
(9)用户培训;
(10)硬件/软件的评价和选择(包括考虑用户的需要);
(11)包括计算机设备(用户设施)的所有物理设施的确定;
(12)使信息服务符合国家法律;
(13)为了与所有的厂商联系进行全面调查;
(14)字处理和办公室自动化的方案提出;
(15)过程控制(数字控制设备、计算机辅助制造以及计算机辅助设计) 方式的确定;
(16)促进新系统的开发。
2.用户的职责 一旦正式行使信息服务特许权,各个部门的职责就不言而喻了。有些职
责不必专门写进信息服务的特许权内(这也许是一个好主意)。下列的活动 通常是用户的职责:
(1)完成原始文件(精确而又明了);
(2)数据录入(目前已倾向于使数据录入工作尽可能在接近数据源处进 行);
(3)根据标准规程提出服务请求;
(4)通知数据库管理员对数据元素和记录进行变更;
(5)培训信息服务人员;
(6)正如在系统开发方法中所指明的那样,参加系统开发过程;
(7)参加验收试验;
(8)定期地检查生产系统(与信息服务人员合作);
(9)确定优先权和其它高级指导委员的职责。 尽管以上特许权与有关方面具有坚实的逻辑基础,但客观情况仍允许某
些公司根据本公司的情况删除、增加及改变有关内容。
□人员信息 大多数公司都有关于公司人员和顾客的数据库,这样的数据库包含有使
人感兴趣的数据和信息。无论什么时候只要涉及到人员信息,各人总有某些 不言而喻的个人偏见。因此, 必须制定最佳地使用人员的策略。
人员信息的利用是建立在“客观现实”的基础上的,在制定使用人员信 息的策略时,应注意公司内外人员的信息向谁公布、什么时候公布以及公布 的次数。
□硬件 随着越来越廉价的、功能更强的计算机和独立的字处理计算机的出现,
深谋远虑的公司办公人员不得不迅速实行并建立一个确保硬件兼容的策略。 硬件的选择影响系统设计。硬件的选择不仅影响系统的可靠性,而且还影响 系统和数据库的兼容性。计算机硬件的失控扩散不可避免地会延误实现综合 信息系统的进展。
□高级信息服务指导委员会
总裁、执行委员会和董事会应该尽可能建立书面策略(或指示),以指 导高级信息服务指导委员会的工作,并给予其权力。
□系统优先权
公司信息服务资源的分配是用户管理人员的主要职责。信息服务的领导 更为关心“如何”分配资源而不用注意向“何处”分配资源。为此,用户管 理人员和信息服务政策委员会在建立系统优先权时,应该建立并贯彻规定(公 司的标准)。按照最高优先权在前的原则,下面列出优先权的标准,以供考 虑。
(1)停止系统的运行(无论何种原因);
(2)法定的或受规章限制的要求;
(3)形成重大决策所必需的管理性服务请求;
(4)储蓄/收益的水平;
(5)其它难以确定的标准。 如果不按照上述先后顺序考虑问题,就不可能正确使用优先权。决策者
还必须考虑经济危机、技术风险、工作危险,以及难以确定的其它方面的因
素:紧急事件、设备能力、可用的专门知识、重复要求、系统依赖性、人力 有效利用率、资金的有效利用率和项目完成的期限。
三、适合于用户的规程
在信息服务环境中,制定规程是最根本的一顺工作,一个典型的计算中 心有几十个书面规程,但是其中有三个对用户管理人员来说是尤其重要的, 它们是:信息服务请求(SSR)的提交、系统开发方法、信息系统审查。
□系统服务请求
(1)系统服务请求含义。系统(或用户)服务请求是用户管理人员向信 息服务部门请求任何一种服务的正式媒介。一般由用户编制正式书面请求, 将它提交给信息服务部门,并根据公司批准的规程来进行评价。
(2)系统服务请求工作的内容。服务请求的工作有两个方面,首先,服 务请求规程要求用户提出表达确切的、文字简炼的服务请求;其次,信息服 务的领导和(或)信息系统政策委员会将根据实际情况,对信息服务请求作 出正确的回答。
(3)为了建立系统服务请求规程,有几个问题必须解决,即:
①谁批准服务请求?
②对否决的服务请求应有上诉规程吗?
③可能的决策选择是什么?
④信息服务请求应该包括什么信息? 一旦这些问题和其它一些问题得到解决,就能够建立系统服务规程。
□信息系统审查
系统实现后的审查一般归入到系统开发方法中,但后来的系统审查通常 只有在建立了定期审查的正式规程后方能实行。建立定期的系统审查是维护 信息系统的最好方法。这些定期审查促使用户和信息服务人员在系统的缺点 成为系统有效性的主要问题之前就识别和得到纠正。重新改变公司的需要比 预先考虑到这些需要花钱更多。
《复眼——企业管理信息系统》
数据管理
数据管理,包括数据的捡储、处理和操作。 数据管理包括数据的存储、检索和操纵。为了能够在系统开发和开展业
务工作期间有效地与信息服务人员进行联系,用户管理人员应具备本章中所 提到的有关概念、方法和术语方面的业务知识。
计算机系统并不存储信息,只存储数据。数据是获得信息的原始材料, 为了满足定期存取的需要,它们被存储在二级(辅助)存储设备(磁盘和磁 带)上。信息是经过同化、聚合和“加工”后的有特定含义的数据。为了突 击数据和信息之间的差别,我们考察下面的例子。一个部门领导要求每个职 工分别在一张纸上写下他们的年龄。每张纸只有一行含义简单的数据。然而 经理可以从这些数据中获得信息。他能够以此确定超过 50 岁的职工有多少、 职工平均年龄是多少,最年轻的职工的年龄是多少等等。人们经常使用“信 息处理”这个词汇容易造成误解,实际上,它的真正含义是为了产生信息而 处理数据。
一、数据组织的层次体系
任何信息系统都有一个数据组织的层次体系。在该层次体系中,每一后 继层都是其前驱层数据元组合的结果,最终实现一个综合的数据库。处于第 一层的“位”用户是不必了解的,而其它五层则是用户输入和请求数据时合 理的需要。数据是一切信息系统的基础。一个高质量的计算机信息系统的最 终用户必须具备数据的组织及其处理方面的知识。
□位 位是主存储器和辅助存储器的基本单位。计算机是电子的,因而只能实
现两种状态。从物理上讲,可以通过不同途径来实现这两种状态(电流的方 向,开关,涂在带上和盘上的铁涂氧的磁性排列)。由于每一位只能表示两 种状态,因此,必须将位组合才能形成字母数字字符。由位组合成的字母数 字字符被暂时存放在主存储器中,或永久地存放在辅助存储器中。在主存和 辅存中存放的是字母数字字符的内部表示形式(例如,如果采用 EBC—DIC 编码体制,则 11OO0010 表示字母 A,而 111100ol 表示数字 1)。
在输入时,对字母数字字符进行编码以形成若干位的组合,而在输出时 进行译码。目前还没有工业标准的编码体制。最为流行的编码体制是六位二 进制编码的十进制码(BCD),七位 ASCII 码以及八位扩充二进制编码的十进 制交换码(EBCDIC—发音为 eb—se—dik)。
六位编码最多可以表示 64 个字符(26)。七位编码可以表示 128 个字符,
而八位编码可以表示 256 个字符。读者可能会问:既然用六位就可以对一个 字符编码。为什么还要用八位来编码?这是因为六位码的 64 种可能的组合只 够表示字母、数字和 18 个特殊符号。如果希望表示大写和小写字母,那么六 位编码就不够用了。因此,就需要具有 128 种组合的七位编码。
目前还难以想象出对 128 种以上的位的组合的需要。引进八位编码体制
(EBCDIC)是为了利用这一个事实,即只用 4 位(24—具有 16 种可能的组合) 来表示一个数值数据。因此,一个八位的编码实际上可以用来表示两个十进 制数字。由于所存储的数据多数是数值数据,所以将两个数字的编码压缩成 八位可以节省存储空间。 FBCDIC 的八位组合称之为一个字节。而 BCD 的六 位就构成一个字节。在 BCD 和 ASCII 编码体制中,字节是字符的同义词。在 EBCDIC 编码体制中,由于可以将两个数字压缩到一个字节中,所以 EBCDIC 的字节与字符间并不一一对应。然而,在涉及到存储容量时,则经常交替地 使用字符和字节。一个磁盘组可以有 80O 兆字节容量(即 80O 兆字节的永久 存储器),而一台计算机的主存可以有 8 兆字节(作为处理用的兆字节的高 速临时存储器)。较小的存储设备用千字节(一千个字节的倍数来度量)。 通常将兆和千分别缩写为“M”和“K”。
在逻辑上讲,一个 EBCDIC 字节是八位,而实际上它有九位。由于要将这 些位在计算机和外部设备(或远程终端)之间传送,所以在计算机硬件中使 用了一种内部校验方法来保证传送数据的准确性。这种校验方法之一是给传 送的数据附加一位奇偶校验位,用该位来发现在传送过程中是否丢失了一 位。计算机可以采用偶数奇偶校验或奇数奇偶校验法,即每一字符要包含偶 数个或奇数个“开状态”位。假定某台计算机采用偶数奇偶校验法,如果要 将一个 EBCDIC 的字母 A(它具有奇数个“开”位—11000001)写到磁带上, 那么在传送之前为了维持偶校验,则需要增加一位奇偶位(即:1110OOO01
——偶数个“开”位),在将字符写到磁带之前,硬件自动计算“开”位的 个数。如果计算机结果是奇数,则说明已经出现了奇偶校验错误,计算机自 动向操作员发出警告。
□字符(字节) 在通过键盘(光符号识别器或其他输入设备)输入一个字符时,机器直
接将字符翻译成某特定的编码系统中的一串位的组合。一个计算机系统可以 使用不止一种编码体制。例如,某些计算机系统中将 ASCII 编码体制用于数 据通信,而将 EBCDIC 编码体制用于数据存储。
□数据元 描述数据元的最好办法是举例说明。一个人的社会保险号,姓名、信用
卡号、街道地址和婚姻状况等都是数据元。在数据的层次体系中,数据元是 最低一层的逻辑单位,为了形成一个逻辑单位,需要将若干位和若干字节组 合在一起。一个日期不一定是一个数据元,它可以是三个数据元:年、月、 日。对地址来说,也是同样的。一个地址中可以包括州、城市、街道地址和 邮政码这四个数据元。从逻辑上可以把日期和地址都看成是一个数据元,但 是输出这种数据元是不方便的。例如,通常在输出时总是把街道地址单写一 行,因而应该把一个地址的几个数据元分开。此外,由于姓名和地址文件经 常按邮政码排序,因此,需要将邮政码作为一个逻辑实体(数据元)来对待。 根据上下文的需要,有时也把数据元称作为字段(记录中的字段)。数 据元是泛指的,而数据项才是实际的实体(或实际的“值”)。例如,社会
保险号是一个数据元,而 445487279 和 44214158 则是两个数据项。
为了节省输入数据时敲打键盘的时间和存储空间,在输入数据时通常将 数据元编码。例如,通常将职工主文件中的“性别”数据元编码,这样,数 据录入员就可以简单的输入“M”或“F”来代替“Male”(男)或“Female”
(女)。在输出时再将“M”和“F”分别翻译成“男”或“女”。
在设计数据元时,可以使一个数据项(如帐号)的编码具有特定的含义, 从而可以向用户提供信息。例如,可以将一个大学的六位帐号编码如下:
举一个例子,RBI001 将表示生物系的 1 号研究项目的帐号。
□记录
将逻辑上相关的数据元组合在一起就形成一个记录。表 5.2 列举了在一 个职工记录中可能包含的若干数据元,以及作为职工记录的一个值的若干数 据项。记录是能够从数据库中存取的最低一层的逻辑单位。例如,如果一个 人事经理需要知道阿温·史密斯(Alvin E.Smith)的婚姻状况,那么,就 把他的整个记录从辅存中取出来并传送到主存进行处理。
□文件 文件是逻辑上相关的记录的集合。职工主文件包含每一个职工的记录。
库存文件包含每一种库存货物的记录。应收帐目文件包含每个顾客的记录。 “文件”这个词有时也指某台二级存储设备上的一块已命名的区域,该区域 中可以包含程序代码、教材、数据,甚至还可以包含输出报表。
□数据库 数据库是一种作为计算机信息系统资源共享的全部数据之集合。有时根
据不同应用领域可将该资源共享数据库分成若干段。例如,财会数据库可以 划分为一个应用领域,它可以包含六个不同的文件。读者应该注意到:用“文 件”来组织数据这种方法将带来数据的冗余。也就是说,为了在处理时使用,
必须将某些数据元重复地存放在几个文件中。例如,在一所大学的安置办公 室、宿舍管理处、财务支持办公室以及注册处等都有可能保存学生文件。像 学生名、校内地址这类数据元几乎在每个文件中都重复出现。在对开发一个 综合的学生信息系统进行可行性分析时,一些系统分析员在美国西南部一所 规模很大的大学中发现有 75 个计算机文件中都包含学生名和校内地址。采用 先进的数据库管理系统比之传统的文件系统有较大的改进,它使得用户可以 将存储数据的重复程度减至最小。
二、数据库的概念与用途
□数据库的概念 什么是数据库呢?当人们从不同的角度来描述这一概念时就有不同的定
义(当然是描述性的)。例如,称数据库是一个“记录保存系统”(该定义 强调了数据库是若干记录的集合)。又如称数据库是“人们为解决特定的任 务,以一定的组织方式存储在一起的相关的数据的集合”(该定义侧重于数 据的组织)。更有甚者称数据库是“一个数据仓库”。当然,这种说法虽然 形象,但并不严谨。严格地说,数据库是“按照数据结构来组织、存储和管 理数据的仓库”。在经济管理的日常工作中,常常需要把某些相关的数据放 进这样的“仓库”,并根据管理的需要进行相应的处理。例如,企业或事业 单位的人事部门常常需要把本单位职工的基本情况(职工号、姓名、年龄、 性别、籍贯、工资、简历等)存放在表 5.3 中,这张表就可以看成是一个数 据库。有了这个“数据仓库”我们就可以根据需要随时查询某职工的基本情 况,也可以查询工资在某个范围内的职工人数等等。这些工作如果都能在计 算机上自动进行,那我们的人事管理就可以达到极高的水平。此外,在财务 管理、仓库管理、生产管理中也需要建立众多的这种“数据库”,使其可以 利用计算机实现财务、仓库、生产的自动化管理。
J.Martin 给数据库下了一个比较完整的定义:数据库是存储在一起的相
关数据的集合,这些数据是结构化的,无有害的或不必要的冗余,并为多种 应用服务;数据的存储独立于使用它的程序;对数据库插入新数据,修改和 检索原有数据均能按一种公用的和可控制的方式进行。当某个系统中存在结 构上完全分开的若干个数据库时,则该系统包含一个“数据库集合”。
表 5.3 人事基本档案
工号
姓名
性别
年龄
籍贯
工资
简历
0001
刘丰
男
25
重庆
87
/
0002
王岗
男
26
成都
87
/
0003
李一
女
28
北京
87
/
0004
孙立
女
30
上海
91
/
0005
陈志
男
35
武汉
102
/
□数据库的优点
使用数据库可以带来许多好处:如减少了数据的冗余度,从而大大地节 省了数据的存储空间;实现数据资源的充分共享等等。此外,数据库技术还 为用户提供了非常简便的使用手段使用户易于编写有关数据库应用程序。
数据库是通过数据库管理系统 ( DBMS — DATA BASEMANAGEMENT SYSTEM)软件来实现数据的存储、管理与使用的 dBASEII 就是一种数据库管 理系统软件。
□数据结构与数据库种类 数据库通常分为层次式数据库、网络式数据库和关系式数据库三种。而
不同的数据库是按不同的数据结构来联系和组织的。
1.数据结构
所谓数据结构是指数据的组织形式或数据之间的联系,如果用 D 表示数 据,用 R 表示数据对象之间存在的关系的集合,则将 DS=(D,R)称为数据
结构。例如,设有一个电话号码 簿,它记录了 n 个人的名字和相应的电 话号码。为了方便地查找某人的电话号码,将人名和号码按字典顺序排列, 并在名字 的后面跟随着对应的电话号码。这样,若要查找某人的电话号 码
(假定他的名字的第一个字母是 Y),那么只须查找以 Y 开 头的那些名字 就可以了。该例中,数据的集合 D 就是人名和 电话号码,它们之间的联系
R 就是按字典顺序的排列,其相应的数据结构就是 DS=(D,R),即一个数 组。
2.数据结构种类 数据结构又分为数据的逻辑结构和数据的物理结构。数据的逻辑结构是
从逻辑的角度(即数据间的联系和组织方式)来观察数据,分析数据,与数 据的存储位置无关。数据的物理结构是指数据在计算机中存放的结构,即数 据的逻辑结构在计算机中的实现形式,所以物理结构也被称为存储结构。本 节只研究数据的逻辑结构,并将反映和实现数据联系的方法称为数据模型。 目前,比较流行的数据模型有三种,即按图论理论建立的层次结构模型
和网状结构模型以及按关系理论建立的关系结构模型。
□数据库的要求与特性 为了使各种类型的数据库系统能够充分发挥它们的优越性,必须对数据
库管理系统的使用提出一些明确的要求。
1.建立数据库文件的要求
(1)尽量减少数据的重复,使数据具有最小的冗余度。计算机早期应用 中的文件管理系统,由于数据文件是用户各自建立的,几个用户即使有许多 相同的数据也得放在各自的文件中,因而造成存储的数据大量重复,浪费存 储空间。数据库技术正是为了克服这一缺点而出现的,所以在组织数据的存 储时应避免出现冗余。
(2)提高数据的利用率,使众多用户都能共享数据资源。
(3)注意保持数据的完整性。这对某些需要历史数据来进行预测、决策 的部门(如统计局、银行等)特别重要。
(4)注意同一数据描述方法的一致性,使数据操作不致发生混乱。如一
个人的学历在人事档案中是大学毕业,而在科技档案中却是大学程度,这样 就容易造成混乱。
(5)对于某些需要保密的数据,必须增设保密措施。
(6)数据的查找率高,根据需要数据应能被及时维护。
2.数据库文件的特征 无论使用哪一种数据库管理系统,由它们所建立的数据库文件都可以看
成是具有相同性质的记录的集合,因而这些数据库文件都有相同的特性:
(1)文件的记录格式相同,长度相等。
(2)不同的行是不同的记录,因而具有不同的内容。
(3)不同的列表示不同的字段名,同一列中的数据的性质(属性)相同。
(4)每一行各列的内容是不能分割的,但行的顺序和列的顺序不影响文 件内容的表达。
3.文件的分类 对文件引用最多的是主文件和事物文件。其他的文件分类还包括表文
件、备份文件、档案的输出文件等。下面将讲述这些文件。
(1)主文件。主文件是某特定应用领域的永久性的数据资源。主文件包
含那些被定期存取以提供信息和经常更新以反映最新状态的记录。典型的主 文件有库存主文件、职工主文件和收帐主文件等。
(2)事务文件。事务文件包含着作为一个信息系统的数据活动(事务) 的那些记录。这些事务被分批以构成事务文件。例如,从每周工资卡上录制 下来的数分批存放在一个事务文件上,然后对照工资清单文件进行处理以便 打印出工资支票和工资记录簿。
(3)表文件。表文件是一些表格。之所以单独建立表文件而不把表设计 在程序中是为了便于修改。例如,一个公用事业公司的税率表或国内税务局 的税率就可以存储在表中文件。
(4)备用文件。备用文件是现有生产性文件的一个复制品。一旦生产性 文件受到破坏,利用备用文件就可以重新建立生产性文件。
(5)档案文件。档案件不是提供当前处理使用的,而是保存起来作为历 史参照的。例如,国内税务局(IRS)可能要求检查某个人最近 15 年的历史。 实际上,档案文件恰恰是在给定时间内工作的一个“快照”。
(6)输出文件。输出文件包含将要打印在打印机上的、显在屏幕上的或 者绘制在绘图仪上的那些信息的数值映象。输出文件可以是“假脱机的”(存 储在辅存设备上),当输出设备可用时才进行实际的输出。
三、综合数据库管理系统
到目前为止,我们集中讨论了传统的文件处理。此处,文件是作为一个 独立的逻辑实体来处理的,而且通常与某个特定的业务领域相联系。为了把 业务上相近的那些部门的文件综合在一起,必须预先排序记录和合并文件。 这样做可能耗费大量的时间,有时甚至是不可能实现的。
通常,文件是为了满足特定业务领域某部门的专门需要而设计的,如果 某部门想使用保存在一个文件上的部分数据,而该文件是另一部门为自己使 用而设计的,那么他们必须抽取这些数据并重新整理后才能使用。大多数部 门总是宁愿建立和保持一个类似(而不同)的文件以更好地满足自己的使用 要求,而不愿兼顾其他部门的业务需要。这样做的结果形成了大量的带有重 复数据的文件。前面的例子中已经提到,某所大学就保存了 75 个独立的计算 机文件,而每个文件中都包含有学生记录。每当一个学生结婚了或者改换了 住处时,则必须修改 75 个文件。
数据的冗余会使成本提高,而设计一个综合的资源共享数据库则可以把 数据冗余度降低到最小程度。综合的资源共享数据库把公司看作一个整体来 提供服务,而不只是为公司某特殊部门服务。利用数据库管理系统(DBMS) 软件就可能实现一个综合的数据库。
早在七十年代初期就出现了 DBMS 技术,但是直到七十年代末期仍未得到
普遍的接受。早期的 DBMS“软件包”效率不高,实际上比传统的文件处理的 要求更高的硬件能力。目前 DBMS 对硬件的要求已经降低了,甚至在小型计算 机系统上也能运行 DBMS 软件,造成推迟接受和实现 DBMS 技术的主要原因可 能是信息服务人员缺乏专门的知识,而且用户管理人员又不愿合作和支持建 立一个共享的数据库。目前对于设计和运行 DBMS 软件已经有了广泛的了解, 而且部分用户管理人员已经认识到应该把信息作为一个公司的资源来看待。
□数据库环境的好处
(1)经济上的好处。通过先进的数据结构技术,DBMS 提供了最小化数 据冗余度的可能性。当然,为了提高处理效率,即使有了 DBMS 帮助,有时还 需要在共享的数据库中保留一定的重复数据。由于减少了数据的冗余度,从 而也简化了收集和更新数据的过程。就前面的例子而言,只需要在一处(数 据库中)更新学生地址就可以了。
(2)数据库技术也给信息服务专业人员带来了好处。综合资源共享数据
库为系统分析员打开了崭新的大门。数据库能向系统分析员提供传统文件所 不能提供的信息。由于有了 DBMS,就更容易得到数据,因此使程序设计任务 要比原先更为简单。此外,数据是独立于程序的。这意味着用户管理人员可 以增加数据库中的数据、修改库中的现有数据或者从库中删除数据,这些并 不影响现有的程序,而在过去则需要测试和修改几十个(有时几百个)程序。 当然,数据库管理系统还有其它重要的优点,但是这些已超出本书的范围。
(3)信息方面的好处。一个综合资源共享数据库能以有序的方式提供一 种满足信息要求的结构。实际上,数据库是能够充分利用公司信息资源的唯 一工具。由于数据库和 DBMS 在产生报表方面提供了极大的灵活性,因此,也 给决策过程带来了同样的灵活性。
(4)DBMS 软件在支持联机系统方面是特别有价值的。共享数据库不仅 可供多个用户存取而且还特别能反映出数据的当前状态。对于许多查询来
说,及时性是很关键的。例如,某个经理由于设备故障不得不关闭某个工作 站,此时他有可能要查询其它工作站的状态,并且利用得到的信息来改变进 行中 的工作路线。
□数据库的设计方法
DBMS 克服了传统文件处理的局限性。它依靠灵活多变的数据结构(将数 据元及记录彼此联系的方法)来做到这一点。基于不同数据结构的 DBMS 之间 差别很大。有三种设计 DBMS 软件的方法:
(1)数据系统语言会议(CODASYL)设计并发布的基于网络或丛形数据 结构的 DBMS 指南。
(2)IBM 的信息管理系统(IBS)使用的一种层次结构。
(3)某些最近设计的基于关系数据结构的 DBMS。 上述的每一种方法的基本概念和术语的差别都很大。因此,为了减少混
淆和便于理解,以下的阐述和讨论只使用网络方法。 我们通过下面的例子来说明数据库管理系统和一种数据库设计方法的原
理。考察下述情况。 某图书馆保存了一个文件,该文件每一个记录中都包含了下述数据元:
(1)书名;
(2)作者;
(3)出版社;
(4)出版社地址;
(5)类别;
(6)出版年份。 图书馆馆长希望在获得决策信息方面有更多的灵活性。而现在文件不可
能满足其要求。经过与信息处理人员交换意见之后,他们决定实现一个基于
CODAsYL 的数据库管理系统。 检查现有文件发现某些数据重复出现。每本书(每一书名)都分别有一
个记录。于是,写过几本书的作者的名字在他写的每本书的记录中重复出现。
在一个图书馆里可能有某出版社出版的数百本,甚至数千本书,但是在该文 件的每本书的记录中都重复地出现出版社名和出版社地址。
《复眼——企业管理信息系统》
计算机程序设计和软件
没有程序,计算机什么也不能做。 如果没有程序,计算机什么也不会做。程序是计算机的一组指令,经过
编译和执行才能最终完成程序设计的动作。程序设计的最终结果是软件。 直到七十年代中期,程序设计还只是信息服务专业人员的工作。用户的
进一步知识化和可使用的高级程序语言的多样化使得用户进入了软件开发领 域。用户管理人员在办公室里为自己的多项服务请求编制程序要比将一个服 务请求交给别人来编程序容易得多。
一、程序设计语言的层次体系
□低级语言
虽然人们用 COBOL、PASCAL 和 FORTRAN 来谈论程序设计,但是只有一种 语言能够在给定的计算机上执行。那就是所谓的机器语言。所有其他语言都 要被编译(翻译成机器语言),并且最终用机器语言来执行。
机器语言是很繁琐的,因为指令(又称操作码或 OP 码)和运算数据的单 元是用二进制(一串 0 和 1)来表示的。符号语言(有时称作汇编语言或汇 编级的语言)具有一个本质上与机器语言一一对应的指令系统。汇编语言的 优点是它用助记符号而不是用 0 和 1 来表示指令。例如,汇编语言中直接用 “A”来表示“加”指令,而不用一串 0 和 1 来表示。
在 1970 年之前,机器级和汇编级语言常常用于应用程序的开发,特别用 于系统软件的开发。当时信息服务人员认为目标程序利用计算机的效率高。 自那时以来使用高级语言无论在发挥人或是计算机的效率上都超过了机器语 言。由于这一原因,多数现行的程序设计都是用高级语言来完成的。
□高级语言
1.面向过程的语言 面向过程的语言(POL)是极其灵活的,可以用来刻划几乎所有科学的和
商业的过程。程序顺序地编写指令,而系统则根据用户的规定进行处理。例
如,工资系统就是使用 POL 来编定的。除非由程序逻辑控制去做其他事情, 否则程序中的每一条指令都是按顺序执行的。在一个工资单生成系统中,执 行程序指令的特定顺序取决于被处理的职工的工资计算方法(是按月发工 资,还是按工时计算工资)。对每个职工都要重复该程序流程的顺序。有三 种主要的 POL:科学计算的、商用的以及多用途的。下面我们分别讨论每一
种 POL。
(1)科学计算的语言。科学计算的语言是代数或公式化的语言。这种语 言是为了满足典型的科学计算处理要求(矩阵操作、精度计算以及其它方面) 而设计的。第一个而且仍然是最为流行的科学计算语言是 FORTRAN(公式翻 译程序的缩写)。尽管在没有商业语言时(在计算机不支持任何其它语言的 情况下)FORTRAN 已作为一种商用语言来使用了,但是 FORTRAN 的商业处理 能力是有限的。
APL 语言很快地抓住了一些用户(主要是工程师)。APL 是唯一使用带
有专用符号的交互式键盘来编写程序的语言。
(2)商用语言。目前很流行的第一个商用语言是以 COBOL(面向商业的 公用语言的缩写)。它是一种功能很强而又极为冗长的语言。发展 COBOL 语 言的前提是:该语言的语句应该近似于英语。有些程序员发现语言使用起来 很麻烦。然而,COBOL 语言尚处于方兴未艾的时期,而且被广泛地接受。今 天,人们正在继续对它进行改进。在若干年内,COBOL 仍将是一种流行的商 用语言,但是使用该语言的相对百分比将会下降。COBOL 最适合于具有循环 处理周期的环境(例如打印工资支票)以及数据操纵量相当大的环境。
美国国家标准研究所(ANSI)已经对 COBOL 和其他语言建立了标准。建 立这些标准的目的是使得在一台计算机上编写的程序可以移植到另一台(即 另一个厂商制造的)机器上去。不幸的是,ANSI 标准很少被遵循;因此,COBOL 程序只是部分可移植的。
报表程序生成程序(RPG)可能是仅次于 COBOL 的最为流行的商业语言 了。最初设计的 RPG 是在 1BM 公司数据录入级的计算机上使用的。它用于一 些成批处理环境的小型商业工作。RPG 与其它 POL 不同之处在于程序员还必 须通过选择所要求的程序设计特色来说明某些处理要求(例如何时打印小计 记录的选择等等)。
BASIC 设计者的最初意图体现在该语言的名字上——初学者通用的符号 指令码(Baginers All—Purpose SymbolicInstructional Code)。最初 它被当作讲授程序设计的一个工具,但是在这个“初学者”语言的能力被充 分扩充后,它变得如此流行,以致目前 BASIC 是小型计算机系统上用于应用 程序设计的一种上要语言。在大系统上也使用扩展 BASIC,但不是用于生产 系统。由于 BASIC 通常也用来进行少量的科学计算,因此,有人可能把它划 归为多用途 POL 一类。
(3)多用途语言。多用途语言对于商业和科学计算是同等有效的。最为 明显的多用途语言是程序计算语言 1/(即 PL/1)。PL/1 是在 1956 年由 IBM 公司普制出来的,但是,与任何一种语言一样,它需要几年的时间来排错。 许多公司(主要是 IBM 公司的用户),已经采用 PL/1 作为它们所使用的唯 一的 POL。在刚刚引入 PL/1 时,由于它克服了现有程序设计语言的许多缺点 而受到欢迎。然而,PL/1 仍然没有得到(原先期望那样)普遍地接受。其原 因并非它的质量和能力,而是由于许
多公司已花了巨大投资用 COBOL 和 FORTAN 编制了大量应用软件。同时也
由于使用这两种语言的势头还在增长, 以最快速度发展起来的语言是 PASCAL,它是以十七世纪的数学家 Blaise Pascal 来命名的。 PASCAL 被 看成是一种最新的 POL。尽管只有 1%~2%的商业生产程序是用 PASCAL 写 的,但是它的能力、灵活性以及自我说明结构是不可忽略的。致使这个语言 被广泛接受(而且接受面还在继续增大)的原因或许是因为绝大多数的学院 和大学的计算机科学教程主张将 PASCAL 作为未来的 POL。随着毕业生将这种 主张带进商业界,目前它已经引起了各界的兴趣。
ADA 是新近引入的一种语言,它是美国国防部开发的一种多用途语言。
尽管只有少数人知道和理解 ADA 的用法,然而对于它能否被广泛接受(不仅 在军界,对其他部门也一样)。这一点,它的设计者们是很乐观的。
2.面向问题的语言
面向问题的语言,是专门为了满足某种特定应用或解决特定问题的一组 语句。面向问题的语言不要求象面向过程的语言的那种详细说明。例如,有 几种面向问题的语言就是专为统计分析而设计的。这种语言的用户将注意力 更多地集中在输入和输出上,而不是在数学上。数学是嵌入在语言中的。
已经为几十种应用设计了各种面向问题的语言,这些语言正在被用户使 用。这些应用是:离散和连续模拟(例如,GPSS、SIMSCRIPT、GASP—TV), 程控机器刀具(例如,APT),辅助工程师进行建筑和桥梁上的受力点分析(例 如,COGO),辅助系统分析(例如,SAS)以及辅助办公人员进行字处理(例 如,SCRIBE)。
面向问题的语言具有做统计、字处理和任何语言所满足的应用的灵活 性。然而,一种面向问题的语言总是局限于某种应用。
3.查询语言 与其它高级语言相比,用户和用户管理人员更喜欢使用查询语言。然而,
根据不同的情况,某个用户可能会发现某种特定的面向问题的语言对他更有 用。查询的语言是朝着用户环境发展的典范。一个用户管理人员经过几个时 的培训和实践就能有效地使用一种查询语言。然后,他用很短的时间就能从 一个信息系统中抽取信息或产生出一张报表。而通常这点时间只够用来向一 个系统分析员或程序员说明技术要求。用户只需说明做什么,而查询语言软 件将自动规定怎样做。
查询语言利用高级的、类似英语的命令来检索和编排满足管理查询和制 表要求的数据。用查询语言可以交互式地完成一次询问(直接与计算机通 信)。执行程序产生的输出直接在终端上显示出来,或者产生一份硬拷贝。 查询语言具有以下特色:类似于英语的命令,对数据的有限的数学运算操作, 对报表的自动编排、排序以及按关键字挑选记录等。
4.应用程序生成程序 尽管应用程序生成程序的概念至今没有严格的定义,但是目前已经使用
的那些应用程序生成程序的目标以及各种开发步骤的目标是相同的。即它是 不需要过程级指令就能够说明开发一个信息系统的所有程序设计任务的一种 语言。某些应用程序生成程序(通过与程序员进行交互式对话)已经接近这 一目标。当用应用程序生成程序还在早期的开发阶段。现有的应用程序生成 程序并不具备面向过程语言的那种灵活性,而且不能用来开发完善的信息系 统。然而当用于预期的用途时,它将能成倍地提高程序员的生产效率。当它 们成熟时,在信息系统的开发中应用程序生成程序将起着越来越重要的作 用。
□未来的语言
程序设计语言的进一步发展是自然语言。要采用的那种自然语言对程序 员只需要很少的(甚至不需要)程序设计训练。程序员将直接写或者口述程 序功能说明书,而与程序设计的结构和语法(产生程序指令的规则)无关。 目前研究人员正在致力于开发自然语言。在开始时自然语言将带有某些 语法限制。虽然很难用几句话来概括未来的程序设计语言,但是可以预见未
来的语言将是一种可以不受限制地在个人与计算机之间会话的语言。
二、软 件
总的来说,软件就是指用以指挥计算机运行活动所使用的程序。有两类 软件:应用软件和系统软件。程序员设计和编制应用软件来完成面向用户的 某些应用,诸如收帐和工资系统等。系统软件更为通用,通常是独立于应用 的。它支持基本的计算机功能以及所有的应用领域(而不是特殊的应用)。
□系统软件 可以将系统软件从逻辑上分成主要的几类。下面我们对每一类作概括介
绍。
1.编译程序 编译程序将一种高级语言的指令(如,COBOL)翻译成计算机能解释的指
令。读者应该记住:任何一台计算机都是用机器语言来执行所有的程序,而 不论这些程序是用 BASIC、FORTRAN 或是 COBOL 编写的。高级程序设计语言只 不过是给用户提供了一种方便,“源”语言形式的程序是不能执行的。
2.源程序 它由程序员编写的一些语句组成,由编译程序对它进行编译。程序员请
求该程序,于是系统从辅存中调出 COBOL 编译程序并装入到主存。然后,编 译程序将源程序翻译成目标程序。这种目标程序是机器语言形式,通常存放 在辅存上以便今后调用并(或)直接执行。编译的过程可能是费时间的,特 别对于大型程序更是如此,在规则地调度生产性程序时,将直接“调用”(从 磁盘检索)并执行目标程序,不需要进行编译。如果对源程序作了某些修改, 那么必须对它重新编译以产生最新版本的目标程序。
3.解释程序
解释程序基本上执行与编译程序相同的功能,只是方式上不同而已。解 释程序按顺序翻译并执行每一条源程序语句。解释程序的优点是当语句出现 语法错误时,可以立即引起程序员注意,而程序员在程序开发期间就能进行 校正。解释程序的缺点是不能像编译程序那样充分地利用计算机资源。
4.模拟和仿真程序
这类系统软件允许一台计算机就像是另一台计算机那样工作。当把程序 转换到一台不兼容的计算机上时,模拟程序和仿真程序特别有用。直到现有 程序全部被转换成新的计算机格式后,原来为一台老的计算机编写的程序才 能在新的计算机上执行。从技术上讲,仿真程序是硬件和软件的结合,而模 拟程序则完全是软件。
5.实用程序 实用程序是经常使用的服务程序。这些程序提供了诸如文件备份(如,
从磁盘转贮职工主文件到磁带)、测试辅助(在程序某个错误点取主存的“快 照”)以及应用辅助(以部门中的社会保险号排序职工主文件)等功能。
6.操作系统 操作系统(也称执行系统、监督程序或管理程序)控制所有应用程序和
系统程序的执行。操作系统可以提供任务调度、输入/输出控制、使用机器记 帐(如,每台磁盘驱动器的查找次数等)、主分配、数据管理以及其他有关 的服务。操作系统的目标是:
(1)使周转时间最小(从递交作业到收到输出结果之间所经过的时间);
(2)使吞吐量最大(每一单位时间的处理量);
(3)使主存和外部设备的利用最佳化。 与操作系统有关的一个概念是虚机器,虚机器软件嵌入在操作系统中,
它允许两个以上不同操作系统的程序同时在同一台计算机上执行。当需要从 一个操作系统转到另一个操作系统时,虚机器能力是有用的。
7.通信软件 某些计算机的操作系统控制来自(或到)一个远程地点的数据传输流,
但是通常这一功能由专门为此目的而设计的通信软件来处理。通信软件可同 时在前端处理机据主计算机上执行。
8.数据库管理系统
在上文中我们已经详细讨论了 DBMS 软件,多数数据库管理系统都有一系 列程序用来支持数据管理功能。
9.性能度量软件 性能度量软件用来监视、分析和报告有关整个计算机系统和计算机系统
各组成部分的性能。
□有关软件的概念 几乎连最小的计算机都具有多道程序设计的能力。多道程序设计是指在
任一给定时间段里多个程序看上去是同时在执行。然而就某一特定时间而 言,真正在处理机上执行的只有一道程序,其他程序处于等待或暂停状态。 当执行的程序需要输入/输出或正常结束时,操作系统调下一道优先数最高的 等待程序在处理机上执行。由于程序执行的速度很快,因此,多道程序设计 的处理使得看上去好像每道程序独占了计算机。公时处理是指计算机轮流分 配给每道程序一个小的时间片。
由于所有要处理的数据和程序必须驻留在主存里,因此,在决定计算机
系统的吞吐量时,主存是一个关键的因素。一旦主存饱和,直到某部分主存 被释放之前,不能再执行更多的程序。虚拟存贮器管理程序是给操作系统增 加的一个软件,通过该软件来扩充主存以提高 CPU 的吞吐量。
虚拟存贮器的基本原理很简单。读者可能还记得,程序是逐条语句按顺
序执行的,通过把程序放在一些“页”(或段)中,只有正在执行的那部分 程序(页)驻留在主存中,余下的程序存贮在一台直接存取存设备(DASD) 上,当需要程序的另一页时,再把它调入主存。虚拟存贮器的优点是它有效 地扩充了主存,给程序员以更大的灵活性。但是到多个页的转移指令的程序 将执行得很慢,因为从磁盘设备将这些页调入主存需要时间。
《复眼——企业管理信息系统》
数据通信
数据通信是管理信息系统中最快捷、最准确的方式。 数据通信是指从在远程设备之间收发数据。尽管远程通信一词有更广泛
的含义,但是人们还是经常把它与数据通信交替使用。通常与数据通信相关 的另一个术语是远程处理(简写为 TP)。远程处理比数据通信的含义更加广 泛,它意味着利用数据通信来进行数据处理。联机系统和基于通信的系统这 两个术语交替地用来描述利用数据通信的信息系统。
一、基于通信的系统的影响
如上文所述,信息服务的趋势正朝着分散和分布式数据处理(DDP)方向 发展。分散的信息服务工作并不意味着数据通信,但是多数是基于通信的。 依照定义,所有分布式数据处理(DDP)系统都是基于通信的。对于所有实际 应用而言。分布式数据处理和分散的信息服务是可以交换使用的。那些跟随 着脱离集中式成批处理系统这一趋势的公司应该了解基于通信的技术和系统 将对公司的组织结构、人员、管理、预算以及质量保证和控制产生重大的影 响。
□对组织结构方面的影响 在集中式环境里,信息服务业务在实际上和组织上都从专业领域移走
了。分布式数据处理的目标是使用户团体更加直接参与信息服务工作。维护 计算机硬件以及提供信息服务的人员安排最终成为用户的责任。为了容纳这 些人员,必须在现有的组织结构中增加专门的机构和部门。这种增加机构的 作法通常将引起对公司和部门原有的组织结构作重大的改变。
□对人员方面的影响 远程设备可以是一至二台用来进行管理查询的终端,也可以是支持若干
数据录入和查询终端的中型计算机系统。对用户人员的影响将体现在培训方
面,而且很可能要改变用户人员的业务经历。可能要重新训练行政助理使用 某种查询语言来进行特定的管理查询。另外一些用户人员可能要作为程序 员、分析员、操作员等,从而专门从事信息服务业。
那些为进行分布式数据处理而安装硬件设备的用户部门很可能全部接受
来自外部的信息服务专门人程序员、分析员、操作员等,这些人员将成为业 务领域组织的一部分。
□对管理方面的影响
用户管理人员的职责范围将扩大到分布式数据处理环境。按照传统,这 种职责包括人员管理和详尽的专业方面的知识。在分布式数据处理环境中, 用户管理人员必须掌握某些有关信息服务的技术(例如,系统分析、程序设 计、硬件操作、信息服务规划等等),以便能管理那些主要参与信息服务活 动的人员。
□对预算方面的影响
用户经理有可能需要在部门的预算中增加几个重要的专项(例如,为信 息服务人员所增加的工资、采购和维护计算机硬件的费用、与计算机有关的 消耗品费用等等)。
□在质量保证和控制方面的影响 在集中式的信息服务环境中,用户管理人员在很大程度上是依赖于信息
服务部门来进行质量保证和控制的。而在分布式数据处理环境中,业务部门 负责所输入的数据的一致性,信息系统的质量,输出的精确性,分散的控制 以及所有在集中式环境下所能保证的那些数据处理的各个方面。
二、远程处理
□远程处理应用 可以想象,远程处理的应用种类是很有限的。多数公司将利用现有的通
信网络来实现几种不同的应用。为了突出通信网的应用潜力,我们对一般的 远程处理应用作如下分类。
(1)电子邮件。电子邮件通常与办公自动化相联系。在电子邮件应用中, 计算机是给公司内、外人员发送消息的一个工具。对整个单位的每个人员都 分配一个电子邮政信箱,用以接收和存放消息。一个典型的应用例子是全国 性销售经理和区域性销售经理之间的业务往来。为了直接响应竞争性的降 价,全国性经理可能要通过电子邮件通知区域性经理一个商业上的降价比 率。他将通过一个终端输入这些信息,然后发送到区域性经理们的各自电子 邮政信箱。通过一个电子“标志”来通知区域性经理有关的消息。区域性经 理可以要求将有关消息显示在视频终端的显示屏上,如果需要,还可以打印 一份硬拷贝。
(2)查询/回答。在查询/回答这类应用中,操作员(也可能是用户经理) 进行某种查询,然后计算机(经由信息系统)作出回答。例如,人事经理可 能要求查询某个特定职工的培训记录。一个百货公司销售员可能要求查询某 个顾客的赊帐限度。
(3)字处理。在字处理应用中,操作员利用软件来进行正文处理。尽管
当前多数的字处理是用一台单独的设备来完成的,但是也有许多公司为了充 分利用数据库而使用功能更强的主处理机的软件来进行字处理。例如,一位 秘书需要发送同样内容的信件给公司所有顾客,那么她可以结合公司数据库 进行字处理,从而将来自顾客主文件的顾客名字和地址填写到预先格式化的 信件中。
(4)数据录入。经由通信网络可以从远程地点直接将数据录入到系统
中。例如,银行分行的出纳员可以在每项银行事务出现时,直接将它录入系 统。
(5)数据收集。在有些情况下,将利用通信网络来收集数据。一个典型
的例子是在一家百货公司销售网上各销售点(POS)终端。在整个工作日中, 每个销售事务被自动记入一个计算机文件。数据被收集和分批以供处理。
(6)过程控制。数据通信也被用在过程控制上。例如,遍及整个城市所
有街道上的传感器连续地监视车辆的方向和流量,同时通过控制交通信号来 优化车辆的流量。
(7)远程计算。通信网络给最终用户提供了利用计算机进行计算的机 会。在一个大公司的研究中心里,通常有 400 个以上的工程师和科学家使用
约 150 台远程终端进行科学或工程计算。
(8)交互式程序设计。应用程序员或系统程序员以及用户利用远程终端 直接访问计算机来编写他们的程序。利用联机调试辅助软件和直接诊断程序 将更容易进行程序的开发。
(9)诊断估计。用户工程师(那些对计算机硬件进行修复和预防性维护 的人员的头衔)在远程设备上定期使用诊断软件来查出软件或机器错误的根 源。
□建立远程处理系统的理由
成为本站VIP会员VIP会员登录,
若未注册,请点击免费注册VIP 成为本站会员.
版权声明:本站所有电子书均来自互联网。如果您发现有任何侵犯您权益的情况,请立即和我们联系,我们会及时作相关处理。