系统设计是信息系统开发过程中另一个重要阶段。在这一阶段中我们将要根据前一阶段系统分析的结果,在已经获得批准的系统分析报告的基础上,进行新系统设计。系统设计包括两个方面,首先是总体结构的设计,其次是具体物理模型的设计。系统设计的主要目的就是为下一阶段的系统实现(如编程、调试、试运行等)制定蓝图。在系统设计阶段,我们的主要任务就是在各种技术和实施方法中权衡利弊,精心设计,合理地使用各种资源,最终勾划出新系统的详细设计方案。
到目前为止,系统设计所使用的主要方法还是以自顶向下结构化的设计方法,但是在局部环节上(或是针对某些规模较小的系统)使用原型方法、面向目前的方法。这是目前比较流行的发展趋势。
系统设计阶段的主要依据是系统分析报告和开发者的知识与经验。系统设计的主要内容包括新系统总体结构框架设计、代码设计、数据库设计、输入/输出设计、处理流程及模块功能的设计。系统设计的结果是一系列的系统设计文件(蓝图),这些文件是物理地实现一个信息系统(包括安装硬件设备和编制软件程序)的重要基础。
系统总体结构设计
系统总体结构设计是要根据系统分析的要求和组织的实际情况来对新系统的总体结构形式和可利用的资源进行大致设计,它是一种宏观、总体上的设计和规划。系统总体结构设计的主要内容有子系统的划分(或称系统划分)、网络和设备的配置、设备选型、新系统计算机处理流程图。
子系统划分一般应在系统分析阶段完成,其划分方法见2.5节。在不十分充分的系统分析情况下,也往往应用经验准则来进行划分,我们在此做些介绍。
(1) 系统划分的原则
为了便于今后系统开发和系统运行,系统的划分应遵循如下几点原则:
①子系统要具有相对独立性 子系统的划分必须使得子系统内部功能、信息等各方面的凝聚性较好。在实际中我们都希望每个子系统或模块相对独立,尽量减少各种不必要的数据调用和控制联系,并将联系比较密切、功能近似的模块相对集中,这样对于以后的搜索、查询、调试、调用都比较方便。
②要使子系统之间数据的依赖性尽量小 子系统之间的联系要尽量减少,接口要简单、明确。一个内部联系强的子系统对外部的联系必然很少,所以划分时应将联系较多者列入子系统内部。相对集中的部分均已划入各个子系统的内部,剩余的一些分散、跨度比较大的联系,就成为这些子系统之间的联系和接口。这样划分的子系统,将来调试、维护和运行都是非常方便的。
③子系统划分的结果应使数据冗余较小 如果我们忽视这个问题,则可能会使相关的功能数据分布到各个不同的子系统中,大量的原始数据需要调用,大量的中间结果需要保存和传递,大量计算工作将要重复进行。从而使得程序结构紊乱,数据冗余,不但给软件编制工作带来很大的困难,而且系统的工作效率也大大降低了。
④子系统的设置应考虑今后管理发展的需要 子系统的设置光靠上述系统分析的结果是不够的,因为现存的系统由于这样或那样的原因,很可能没有考虑到一些高层次管理决策的要求。
⑤子系统的划分应便于系统分阶段实现 信息系统的开发是一项较大的工程,它的实现一般都要分期分步进行,所以子系统的划分应能适应这种分期分步的实施。另外,子系统的划分还必须兼顾组织机构的要求(但又不能完全依赖于组织,因为目前情况下我国在进行体制改革,组织结构相对来说是不稳定的),以便系统实现后能够符合现有的情况和人们的习惯,更好地运行。
⑥子系统的划分应考虑到各类资源的充分利用 各类资源的合理利用也是系统划分时应该注意到的。一个适当的系统划分应该既考虑有利于各种设备资源在开发过程中的搭配使用,又考虑到各类信息资源的合理分布和充分使用,以减少系统对网络资源的过分依赖,减少输入、输出、通信等设备压力。
(2)系统划分方法的分类。
有关系统划分的方法目前主要有6类(详见表3.1所示)。按功能划分是目前最常用的一种划分方法。例如,如果我们在18.2.3小节分析功能业务一览表时,完全是按规范化进行的,则这个划分就是按功能划分的;按业务处理顺序划分的依据就是18.5节中关于业务流程分析的结果,这种划分方式在一些时间和处理过程顺序特别强的系统中常常采用;按数据拟合程度来划分是指按数据而不是按该子系统内部尽量集中来划分子系统,这种划分方式的子系统内部聚合力强,外部通信压力小,例如,我们在2.5节中所划分的子系统就是按这种方式进行的;按业务处理过程划分子系统,严格地说这不是一种很好的方式,但在某些系统开发资源限制较大的场合,特别是要分段实现开发工作时,不得已而被采用;最后两种划分指的是按业务处理的时间关系或业务展开的环境条件来对系统进行划分,严格地说这也是不太合理的划分方法,但在某些特定的场合也有这种划分的情况。
表3.1中的比较指标是根据一般情况而言的。在实际对系统进行设计时仍应以具体系统分析的结果而定,不能笼统、绝对地去评价好坏。
(3)常用的系统划分方法
实际在开发一个系统时,常用的系统划分方法是一种以功能/数据分析结果为主,兼顾组织实际情况的划分方法。即以2.2.3和2.5.4小节分析结果为基础,然后再根据组织的其它情况(如办公室、厂区的物理环境、开发工作的分段实施情况、设备和人力资源的限制等等),综合考虑并修订2.2.3和2.5.4小节所分析的结果。修订一般都在2.2.3和2.5.4小节的基础上进行,例如在图18.5基础上对业务功能一览表中的树状结构局部地进行调整,在图2.17基础上对U/C矩阵整理后的图表重新进行划分等等。值得注意的是这种修订尽量不要破坏原分析的结构,否则会引出其它方法的各种问题。例如在原业务功能一览表的调整中,尽量不要改变其基本功能和结构,只是根据实际情况局部地调整树校结构。又如,在原U/C矩阵整理的基础上,尽量不要改变其行与列的位置(当然这也不是绝对的),而只通过改变子系统小方框的方法来修订系统划分的结构。
如何将初步规划中的各个子系统从内部用局域网连接起来,以及今后系统如何与外部系统相连接的问题,这就是网络设计问题。
特别要说明的一点是:我们所说的网络设计并不是去设计或开发出一个网络,而是根据实际业务的需要去考虑如何配置和选用一个网络产品。
网络设计首先要根据用户的要求选择网络的结构。然后根据系统结构划分的结果,安排网络和设备的分布,即什么地方要什么设备?哪些设备需要联网?网络的结构采用什么方式为好?选用什么网络产品?等等。然后再根据厂区内部的布局来考虑联网布线和配件,最后就是根据实际业务的要求划定网络各节点的级别、管理方式、数据读写的权限、选择相应的软件系统等等。通常我们将它称为网络设计的三步曲。确定了这三步的内容并设计完整个系统后,就可以通知提供网络产品的公司,按要求建立起网络系统。
通常在一个组织的内部都是考虑建立一条(或几条)LAN(局域网)。故在信息系统开发过程中,我们考虑和使用最多的还是连接组织内部各子系统的LAN。有关如何考虑数据以及程序模块在LAN上的分布等内容,在后续章节中还会分别讨论。
另外有关WAN(广域网)、MAN(城域网)的内容在信息系统的开发中有时也要用到一些。例如在设计本系统网络时,考虑与上级单位或同级其它单位通过WAN,MAN联系,在设计OA系统或MIS各子系统时,考虑管理人员出门在外时可通过WAN或者Modem.PABX等随时了解系统内部的情况;在考虑加入国际电子商贸系统时,更是离不开有关WAN和EDI等的知识了。
为了更清楚地表示前面曾提到过的一些网络设备和后面将要涉及到的一些网络部件在各级通信网络系统中的地位和作用,在此我们给出如图19.1所示的结构模型。图中右边的三个椭圆分别代表了几类不同单位的信息系统(MIS,EDPS,OA,DSS等等),中间的大椭圆则表示所在城市(或总公司)的MAN,左边的椭圆则代表了国家(或全球)的WAN系统。
网络的结构(或称网络的拓扑(topology)结构)是指网络的物理(实际)连接方式。目前有总线型(bus)、环型(loop)、星型(star)、树型(branch)、网型(net)等几神,但目前市面上常见的微机局域数字网一般都是总线型结构。如Erthernet网,3+网,Novell网等等,其它如中/小型机网络则总线型和环型两种都有,如IBM推出的FDDI(fibre
distributed data interface)系统就是以光纤环网(fibre loop)为基础的高速数据网络。
选择网络结构以后,就要进行网络协议的选择。迄今为止,常见的通信协议标准,主要有如下三类:
①公用数据通信网建议--X.系列建议
X.系列通信协议是由国际电信联盟(CCITT)组织推荐,广泛用于WAN,MAN上的协议标准。部分X.系列建议标准的命名及主要内容有:
.X.10~X.15——业务和设施。
.X.20~X.32——接口,例如MN要想与15性N相联,则必须运行一个X.25的接口协议。
.X.40~X.80——传输、信号和开关。
.X.92~X.141——网络有关方面。
.X.300~X.310——网络互联。.X.350~X.333一一移动数据传输系统。
.X.400~X.430——电文处理系统。
在所有X.系列协议标准中,信息系统开发有可能用到的有X.25和X.12等。使用的方式也不必涉及协议标准的内部细节,只需按照它的规定进行操作即可。一个商品化了的软件,操作和使用过程是极为简单的。
②局域数字通信网的802.X系列协议
802.X系列通信协议是国际电子电气工程师协会(EEE)下属的802委员会推出的一系列针对MN的协议标准。部分配EE802委员会制定的MN协议及主要内容有:
.802.1——资料、文档、术语参考模型。
.802.2——逻辑链路控制(u£)标准。
.802.3——竞争总线标准。
.802.4——Token Bus Standand。
.802.5——Token Ring Standand。
.802.6-802.7一-MAN标准。
.802.8--光纤环网接口标准。
在上述802.X系列标准中,信息系统最常用的是802.3标准协议的MN。而且这类MN也很容易与WAN和MAN联接。联接时只需通过运行X.23接口系统即可。
③光纤数字环网的ANSI X3T9.5标准
ANSI X3T9.5是一套用于高速光纤环型网络上的协议。这种网络以光纤为传输介质,速率达到100Mbits/s,是LAN中高档产品。这种网络的典型代表是IBM公司80年代中后期推出的FDDI系统。
在确定了系统的划分后,就可以考虑各子系统的设备(主要是计算机和网络设备)配置问题,以及如何将这些分布的设备和任务、功能、数据资源等集中统一管理。换句话来说就是到了应该考虑计算机系统结构和配置的时候了。目前比较流行的是分布式(即由若干微机和数字局域网络联接而成)系统或分布集中式(即由一台小或中型计算机和若干终端构成集中式的主机系统,然后再辅之以若干微机,并用数字局域网络将它们联为整体)系统,而完全集中式(即由一台小或中或大型机为主机,其它都是通过终端与主机相连)的系统已经很少见了。
下面我们来讨论在确定网络和设备配置时应考虑的问题和选择指标。
(1)设备选配的依据.
确定网络和计算机设备配置的原则最重要的只有两点:一是应完全根据系统调查和系统分析的结果来考虑硬件配置和系统结构,即管理业务的需要决定系统的设备配置;二是一定要考虑到实现上的可能性和技术上的可靠性,这是设计方案是否可靠的基础,也就是说根据实际管理业务和办公室地理位置来考虑配置设备。这是新系统考虑硬件结构的基本出发点。一般来说确定设备配置应考虑的有如下几点:
①根据实际业务需要考虑这个管理岗位是否要专配计算机设备(包括打印机、多媒体卡、光盘机等等)。
② 根据实际业务性质决定这个管理岗位是否需要配置微型计算机还是一个主机的终端设备。
③ 根据办公室物理位置分布和有无联机数据通信的要求,决定是否需要与网络联接以及联接的方式,例如,是传递磁盘/光盘或是联网?联网距离是多少?是否需要增继器?拟采用的网络传递介质等等。
④ 根据调查估算的数据容量确定网络服务器或主机存储器的最低下限容量。一般我们将实际调查估算数据总容量的3~5倍作为网络服务器或主机存储器下限配置容量,而以U/C矩阵和数据分析中对通信频度的估算作为确定网络传输介质的最起码指标。
⑤ 根据实际业务要求和用户对软件工具的掌握程度确定新系统拟采用的软件工具。
⑥ 根据实际业务要求确定计算机及外部设备的性能指标,如速度、性能、功能、价格等等。
(2) 网络选择指标
购买网络时需选择的指标有多项,而选取这些指标的依据只能是实际管理业务的需求和开发者对这项技术掌握的熟练程度。下面简单地列出其主要指标项。
① 模拟网络还是数字网络 模拟网络最大的好处是方便、便宜、快捷。上午出门买几个modem,下午就可以用来通信了。但缺点是没有系统管理程序,所有细节都必须由开发者自己来考虑。数字网络是指直接传送数据信号的网络,它一般都是系统管理程序和分布式DB管理系统,使用方便,可靠性高,缺点是价格与安装工程量较前者都略大一些。如选用数字网络,则还需考虑如下问题。
②网络的基本属性指标一般有三个方面,即按网络传输数据所用的频带(band width)、传输的范围、使用的范围来分。
·网络所使用的数据通信频带,一般有基带网和宽带网两种。大部分用于传递 文本数据的总线型微机局域网络都是基带型的。如果是考虑多媒体信息传
输或是其它用途,则应考虑是否选用宽带网。
·网络的传输范围,一般有局域网和广域网两种。对于组织内部的信息系统 而言,只要考虑本系统选用的局域网络,以及如何通过广域网络与其它系统
相连的方式即可(例如,用gateway等)。
·网络用途,一般有专用网和公共网两种。
③传输介质和速率指标 网络数据的传递速度一般是由传输介质所决定的。目前所使用的网络传输介质大致有三种,其平均数据传输速率为:
·同轴电缆(cable)约10~100MB因(每秒兆字节单位,millions bits per second)。
·光纤(filer)约100~1,000,000MBPS(目前用于北美信息高速公路基础设施的 大容量高速光纤可高达每秒上百万兆字节。
·普通电线(双绞线),1.5~<10MBPS。
目前用光纤和同轴电缆的较多。另外如果用光纤作为传输介质,还应该特别注意光端机(一种加在光纤的两端、将电信号转换成光信号的装置)的传输速率与所配的光纤传输速率相匹配,否则光端机的速度将制约整个网络的传输速度。④网络的拓扑结构。⑤网络协议。⑥网络管理软件网络管理软件是决定网络功能好坏的关键,一般网络管理软件包括:分布式数据库系统、网络运行管理系统、文件管理系统、网络协议以及网络安全保密系统等等。⑦网络的访问规则网络的访问规则是指网络控制器如何询问网络上各工作站(work
station)或节点有无通信请求的一种形式。常用的规则形式有:轮询(polling)、令牌方式(包括环型传送(ring token
passing)和总线传送(bus token passing))、载波侦听多点送取碰撞检测方法(CSMA/CD.carrier
sense multiple access with collision detection)等等。③通信方式通信方式是指网络内数据的传输方式。通信方式一般有如下三种:
·广播(broadcasting)方式即由网络中某一点向其它各点发送信息。例如,在 国外的大学里就经常用这种方式通过电子邮件向所有学生发送通知。
·点对点(point-to-point)方式即由网络某一节点对另一节点之间的数据传递,通过modem的数据传送方式就是典型的点对点方式,另外,很多网络还可以提供在网络管理软件统一支配下的点对点数据通信。
·通过服务器进行数据交流 即在网络内部所有的数据交流都要通过网络服务器(sewer)来完成。如果某一个网络节点需要向另一个网络节点传数据,则先将数据传到服务器上,然后接受者再去服务器上取。这种方式的网络一般服务器和总线比较繁忙。但优点是系统开销比较小,而且价格较低。
⑨网络配件指标
·接口 建议选择RS232的通信接口,即RS232C,这是个最常用的通信接口。
·modem 目前市面上可供选择的modem按数据传递的速度可分为:14.4kBPS, 28.8kBPS, 36.6kBPS等。用户可根据实际业务对通信的要求选购。
·中继器(repeater) 在你所选择的网络中,一般对网络的最大传输半径都有明确的规定(如500m等),如果你所设计的系统超过了这个距离,就必然在这中间安置中继器(实际上是一个信号放大器),中继器不能无限地连接,一般规定必须运4,即最多只能连接5段电缆。
·网桥(biidge) 在你所设计的系统中,如果涉及到两个同类型的不同网络相联(例如同样是微机局域总线结构的网络,同时用802.X协议),并且两个网之间操作系统一致,则可选用网桥来相互联接。
·网关(gateway) 上述网桥只能用于两个同类型网络之间的联接,而我们在实际系统开发工作中更多的是涉及到两个不同类型网络之间的联接。例如,各子公司都设计有自己的网络,它们都需要与总公司的网络相联;各单位都设计有自己的网络,它们都希望与地区网络及国际网络相联等等。如果需要在不同类型的网络之间联接就必须使用网关。
·集线器(HUB) 如果设计的网络节点较多,则可考虑选用集线器,将同一子系统(如财务子系统的4台计算机,又如生产子系统的8台计算机等)的设备先联在一起,然后再集中上网。这样做可使网络系统结构合理,便于管理。
·路由器(router) 路由器比网桥更进一步,它可处理链路层不同的数据通信问题。如果你所设计的系统涉及到多种不同设备、不同开发系统平台时,则可选择路由器作为接口。
·关于中继器、网桥、网关、路由器在选择使用时的区别 这四种都是接口(连接)设备(部件),那么它们在使用上有什么区别呢?我们用表
3.2来展示这种区别
(3)设备(包括硬软件设备)选择的指标
在满足实际业务需要的前提下,只要资金许可,应购置技术上成熟、性能价格较高的计算机系统。由于目前计算机技术发展太快,名目繁多,何谓好,何谓成熟,都很难笼统下结论。一般我们根据如下几个方面来评定:
·技术上是否可靠。
·维修是否很方便。
·纵向,新老系统能否兼容;横向,本系统外系统能否兼容。
·非标准的系列不宜选取。-选用用户对软件、硬件都熟悉的产品。
·使用是否方便。
·可扩充性,今后扩充系统或升档是否方便。
·对工作环境的要求(如温度、湿度、防尘度等)是否很高。
·性能价格比越大越好。
(4) 计算机硬件指标
除上述谈到软件、硬件综合的指标外,对计算机硬件本身的选择还应考虑如下指标:
·主机的结构是一般结构,还是优化自身处理命令的RISC体系结构。
·主机的处理速度MIPS(millings of instructions per second),如果是微机,则看主频速度即可。
·相对机器性能价格指标CW(computer world)。这是美国计算机世界杂志确定的一个衡量计算机性能价格的相对指标,它定义IBM
360的CW指标为45,其它机器都与IBM 360相比得出高于或低于45的指标数。
·内存的大小。
·I/0(输入/输出)通道数。
·系统的读写/存储周期。
·外设的速度,这是对计算机在管理领域中的应用来说比主机速度更为主要的。这样说有两个原因:首先管理项目运算相对不是太复杂,但数据量大,读写频繁;其次目前计算机技术发展是主机速度提高很快,而外设速度提高较慢,常常不配套。如1990年北京市场上推出的80386,80486型机器一般主机速度都是IBM
PC XT的30~60倍以上,而所带硬盘的读写速度却只是IBM PC XT的2~4倍。
·高速缓存器的大小。
·向上升档是否方便。
·计算机设备及其对工作环境的要求。
(5)软件指标
考虑设备的一般指标外,软件的指标必须与系统开发所采用的战略和方法学结合起来,在信息系统开发过程中,开发方法以及相应软件工具的选择对系统开发是否顺利都是重要的。软件指标主要从如下几方面考虑:
·中文的使用,能否直接使用汉字、字库、字型,输入方式如何,这对计算机在我国的应用是非常重要的。
·操作系统(OS,operating system)目前有很多,如UNIX以及其变种(如XINIX等),MSDOS,AS,Windows,
Windows NT等等。但Windows NT,UNIX代表了主流的发展方向。
·数据库系统DBS有三种结构:层次型、网络型、关系型。前两者已不常用了。通常市面上关系数据库系统有DB2,ORACLE,INFOMAS等等。在微机上运行的有dBASE-I,II,IV,FoxBASE,FoxPro等等,另外很多公司还在RDB基础上推出了一些更高级的系统,如DEC公司的DRDBS(distributed
relation database system),IBM公司的K Base System(knowledge base system)等等。
·一些围绕微机关系数据库软件工具,如FoxPro,dBASEV,Visual BASIC等。
·常用程序设计语言,如C,Pascal,BASIC,FORTRAN,COBOL,Ada,PU/1,LISP.PROLOG,OPS5等等。
·第4代程序生成语言4GL。目前用4GL实现系统是一个方向,各公司机器上运行的4GL工具极多,使用时可根据具体需要来选取。
·工具(tools或utilities),如测试工具、需求分析工具、调试工具等。
·应用系统开发环境代表了未来软件工程的发展方向。在这样一个环境和计算机自身的支持之下,用户可以很方便地完成从需求分析、系统分析到系统设计、系统实现和运行管理的全过程。-图形软件。
·各种应用软件包,如统计分析软件包、多元分析软件包、数据规划软件包、运筹学软件包、预测分析软件包(如Lotus 1-2-3,SAS,Excel,Origin)等等。
(6)PBX与ISDN
如果你的系统要考虑利用现有的电话通信系统来传递数据或其它办公信息的话,就必然会涉及到程控自动数字交换机(简称PABX或PBX)和综合业务数据通信网络(简称ISDN)。这两方面所涉及的内容较多,好在目前改造或新建的通信系统一般都特别强调数字通信功能,都可以直接用来做MIS或OA系统的通信工具。所以我们在开发系统时只要确认一下是否满足这些指标即可。
①PBX指标 PBX指标一般有如下几个,但一般我们需要确认的只是在原有电话业务的基础上,能否进一步满足本系统数据通信的要求。
·交换机是程控数字交换还是步进手工交换,如果是后者,则不能用来传递数据。
·交换机可否采用7号共路信令(这是国际推荐标准,也是中国邮电部的标准,一般的PABX都满足这个要求)。 ·交换机容量,包括终端门数(BHCA)、中继线数、容量(erl)等。
·集线器容量,包括终端门数、容量、用户线数。
·用户线功能,是否ISDN用户,接口方式是否2B+D(或B+D)方式,其中:B为一个带定时的64kB内通路,主要用于传输用户信息。D为一个16KBPS的通路,主要用于传递系统交换信息。因为B+D是业务通信的最低方式,即由B通路(64kPS)传送信息(话音或数据均可),而D通路(16kPS)用于传送线路交换指令。如果两者-均满足则可直接用来传送数据信息(即非话音业务的分组数字交换)。
·主机功能,如主机(计算机)型号、操作系统、存储器大小等等。
·特殊功能,如有无声音邮件(voice mail)、电子邮件(E-Mail)功能(或扩展这些功能的可能性)等等。
·带大容量公用modem群的能力,这是确定所设计的信息系统中,各节点是否要通过Modem和PABX与其它设备相连的关键。
②ISDN指标 ISDN是下个世纪全球进入信息化社会的主干网络,它是目前世界各国都争相推广和建立的技术标准,故只要在ISDN上其技术指标是应该一致的,所以我们在开发一个信息系统时,只需根据实际情况检查一下本单位的设备(例如PABX)和网络线路能否满足系统所要求的传输信息的特殊要求(如速度、频带宽)等等。
目前在ISDN上提供给用户选择的人网方式有:
·业务ISDN方式。它可以支持许多当前的业务,例如数字传递、图文传真、高级报文、可视图文以及电子邮件等等。也就是说本书前面提到过的所有内容,如EDPS,EDI,MIS,OA等等,选择业务ISDN就可以满足。
·宽带ISDN(简称B.ISDN)。它比业务ISDN要更高一个档次,它利用宽带方式来传递信息,即不同媒体的信息用不同波段的频道,因而整个通信过程更快,更有序。B.18DN可以支持各类多媒体信息业务、异带传递方式(ATM,asynchronous
transfer mode)、高速视频编码等等。因此对于一些考虑带有电视/会话的0A系统,或者是要考虑多方直接在网上谈判的国际电子商贸系统,则最好选用B-ISDN。
另外在ISDN上可提供给用户选用的接口(这些都是ccITT建议的标准化用户接口)有:
·基本速率接口,即2B+D方式。
·基群速率接口,即30B+D方式或23B+D方式。
·高速方式,即XH0+D方式等等。
其中H为一个高速通路,主要用于传递电视会议、音像信息、高速FAX、高速大批数据等。 在确定了子系统的划分和系统的设备配置之后,还必须根据系统分析方案大体勾画出设计者关于每个子系统内部计算机处理流程的草图,作为后继设计详细模块调用关系、模块处理功能以及数据和业务在新系统的计算机内部处理过程的基础。通常用于描述开发者关于计算机处理流程设计思想的是计算机处理流程图,该图主要说明的是信息在新系统内部的流动、转换、存储和处理情况。它既不是对具体处理或管理分析模型细节的描述,也不是对模块调用关系或具体功能的描述。它只是设计者对系统详细设计过程中,信息在计算机内部处理过程的大致想法,它不是固定不变的,常常随着后续的设计过程而不断改变。
(1)计算机处理流程图例
计算机处理流程图是用一些类似于实际计算机内部物理器件的图形符号来表示信息在计算机系统内部的处理流程(如图3.2所示)。图中的卡片文件符号原是50~60年代计算机输入数据的一种方式,它已经早被淘汰了,目前我们常常用这个符号来表示原始数据统计,并且是待输入计算机系统的报表。其它符号与一般计算机类书中介绍的基本一
在图3.3中,我们还常以文字或特定符号填人图例中来描述具体的处理内容。
(2)应用举例
计算机处理流程图的绘制,通常与开发者关于新系统未来实现的方式和本单位的实际情况有关。下面我们以一个实例来说明计算机处理流程图的绘制方法。这是一个成本管理子系统的计算机处理流程图(如图3.3所示)。图中表示规划设计中数据输入子系统的数据输入有两种方式,一种为生产统计报表和其它与成本相关的报表通过键盘输入,另一种为直接从生产统计传过来的软磁盘中读取数据。输入后的数据不直接参与成本核算和成本分析,而是暂存在相应的6个输入中间文件中。在成本核算子系统中,旬报、月报处理是指设置一个处理开关,后面不论按什么时间方式计算成本,其后继处理过程都是一致的,即先读人本期成本发生数据、计算成本,然后写回到8个相应的成本主文件中。而按完全成本方法和按变动成本方法计算成本,也是设置一个算法开关(确定产品成本中固定成本部分的分配算法),然后读成本数据和相应的报表格式,并将最终报表打印出来。定额成本计算部分也类似,即首先读入产生数据,计算定额成本,然后将结果打印出定额成本报表,并同时存入定额成本文件(以供今后成本分析、控制使用)。
从图3.3可知,用计算机处理流程图来表述设计者关于新系统处理过程的大致设想是非常直观和有效的。
代码设计
代码设计问题是一个科学管理的问题。设计出一个好的代码方案对于系统的开发工作是一件极为有利的事情。它可以使很多机器处理(如某些统计、校对查询等)变得十分方便,另外还把一些现阶段计算机很难处理的工作变成很简单的处理。
代码就是以数或字符来代表各种客观实体。在系统开发过程中设计代码目的是:
(1)唯一化
在现实世界中有很多东西如果我们不加标识是无法区分的,这时机器处理就十分困难。所以能否将原来不能确定的东西,唯一地加以标识是编制代码的首要任务。最简单、最常见的例子就是职工编号。在人事档案管理中我们不难发现,人的姓名不管在一个多么小的单位里都很难避免重名。为了避免二义性,唯一地标识每一个人,因此编制了职工代码。
(2)规范化
唯一化虽是代码设计的首要任务。但如果我们仅仅为了唯一化来编制代码,那么代码编出来后可能是杂乱无章的,使人无法辨认,而且使用起来也不方便。所以我们在唯一化的前提下还要强调编码的规范化。例如,纺织部关于纺织工业产品标准编码的规定,以“2”打头的表示纯毛类产品,其中“21”表示纯毛哗叽类产品,“22”表示纯毛华达呢类产品,“24”表示纯毛花呢类产品等。这样在查找或统计某一类产品时就十分方便了。如要查找纯毛类产品,只要将文件记录进行一次排序,显示出“2”字打头的一段即可。再要细分的话,就再限定第二位,如“22”字打头的显示出来就是所有纯毛华达呢类产品的记录。
(3)系统化
系统所用代码应尽量标准化。在实际工作中,一般企业所用大部分编码都有国家或行业标准。例如,在会计领域中,一级会计科目由国家财政部进行标准分类,二级科目由各部委或行业协会统一进行标准分类,而企业则只能对其会计业务中的明细账目,即对三、四级科目进行分类,并且这个分类还必须参照一、二级科目的规律进行。又如在产成品和商品中各行业都有其标准分类方法,所有企业必须执行。另外一些需要企业自行编码的内容,例如生产任务码、生产工艺码、零部件码等等,都应该参照其它标准化分类和编码的形式来进行。
编码问题的关键在于分类。有了一个科学的分类,系统要建立编码就很容易了。准确的分类是我们的工作标准化、系列化、合理化的基础和保证。
(1)分类原则
一个良好的分类既要保证处理问题的需要,又要保证科学管理的需要。在实际分类时必须遵循如下几点:
①必须保证有足够的容量,要足以包括规定范围内的所有对象。如果容量不够,不便于今后变化和扩充,随着环境的变化这种分类很快就失去了生命力。
②按属性系统化。分类不能是无原则的,必须遵循一定的规律。根据实际情况并结合具体管理的要求来划分是我们分类的基本方法。分类应按照处理对象的各种具体属性系统地进行。如在线分类方法中,哪一层次是按照什么属性来分类,哪一层次是标识一个什么类型的对象集合等都必须系统地进行,只有这样的分类才比较容易建立,比较容易为别人所接受。
③分类要有一定的柔性,不至于在出现变更时破坏分类的结构。所谓柔性是指在一定情况下分类结构对于增设或变更处理对象的可容纳程度。柔性好的系统在一般的情况下增加分类不会破坏其结构。但是柔性往往还会带来别的一些问题,如冗余度大等,这都是设计分类时必须考虑的问题。
④注意本分类系统与外系统、已有系统的协调。任何一项工作都是从原有的基础上发展起来的,故分类时一定要注意新老分类的协调性,以便于系统的联系、移植、协作以及新老系统的平稳过渡。
(2)分类方法
目前最常用的分类方法概括起来有两种,一种是线分类方法,一种是面分类方法,在实际应用中根据具体情况各有其不同的用渗。
①线分类方法 线分类方法是目前用得最多的一种方法,尤其是在手工处理的情况下它几乎成了唯一的方法。线分类方法的主要出发点是:首先给定母项,下分若干子项,由对象的母项分大集合,由大集合确定小集合......,最后落实到具体对象。分类的结果造成了一层套一层的线性关系,如图3.4所示。
线分类划分时要掌握两个原则:唯一性和不交叉性。否则分类后如果出现有二义性,将会给后继工作带来诸多不便。线分类法的特点:
·结构清晰,容易识别和记忆,容易进行有规律的查找。
·与传统方法相似,对手工系统有较好的适应性。
·主要缺点是结构不灵活,柔性较差。
②面分类方法与线分类法不同,主要从面角度来考虑分类。面分类方法的特点是:
·柔性好,面的增、删、修改都很容易。
·可实现按任意组配面的信息检索,对机器处理有良好的适应性。
·缺点是不易直观识别,不便于记忆。
编码是指分类问题的一种形式化描述。如果分类问题解决得较好,编码问题就变成了一个简单的用什么样的字符来表示的问题。目前常用的编码归纳起来有如下几种形式:
(1) 顺序码
以某种顺序形式编码。如以我国人口多少对城市进行编码,则北京001,上海0112,天津003,.......在实际工作中,纯粹的顺序码是很少被使用的。这种编码优点是简单,易追加,缺点是可识别性差。
(2)数字码
即以纯数字符号形式编码(严格地说顺序码也属此类)。数字码是在各类管理中最常用的一类编码形式。例如,我国目前使用的居民身份证就是采用一个15位的数字码,前6位表示地区编码,中间6位表示出生年月日,最后3位表示顺序号和其它状态(性别等)。再如,我们在会计系统中所用的科目分类编码是一个7位的数字码,它的前3位是财政部会计制度司规定的总账科目,即一级科目,中间两位是部或行业规定的二级科目,最后二位是企业可以自定的三级科目。这种编码优点是易于校对,易于处理,缺点是不便记忆。
(3)字符码
即以纯字符形式编码(英文、汉语拼音等)。这类编码常见的有我们在程序设计中的字段名、变量名编码。例如在开发一个商业经贸性公司的信息系统时,在数据库中需要分别存储商品的进、存、销3个环节的价格、成本、资金占用等信息。为了区别起见,这时我们可以规定:字段的前两位分别用J-,C-,X-来表示进、存、销,用后5位数来代表价格、成本、费用、资金占用等等。例如J-Price表示进价。这就是一个典型的纯字符码。这种编码优点是可辅助记忆,缺点是校对不易,不易反映分类的结构。
(4) 混合码
即以数字和字符混合形式编码。混合码是在各类管理中最常用的另一类编码形式。例如GB.×××表示国家标准的某类编码,IEEE 802.X表示某类网络协议标准名称的编码中,中财会字×××号文件表示中央财政部下发的有关会计制度的某类文件编码等等。这种编码的优点是易于识别,易于表现对象的系列性,缺点是不易校对。
代码的应用范围很广,除了为某个人、某项工作、某个机械零件、某个加工设备等需要编码外,还有很多其它的用途。这里我们列举其中几个,以便读者举一反三。
图书情报检索是代码用得最广的领域之一。以往的图书情报检索系统一般都是提供给用户如下几种检索功能:
① 通过书名、作者名、出版社名或出版日期中的一个或几个输入系统,则系统可帮用户检索出他所需要的资料。
②通过上述几个名称的局部输入系统,则系统可帮用户检索出他所需要的资料。 ③通过会议和文集的其它信息检索出所需要的资料。
这些检索功能能为我们查资料时提供很多便利条件。值得注意的是,这类检索方式必须有一个前提条件,那就是你必须看到过这份资料或知道这份资料(否则怎么能知道书名、作者名等等信息?)。这个前提与我们大多数科技工作者去查资料时的本意是不相符的。作为一名科技工作者,最希望的工作方式是去了解和查阅他的研究领域里迄今为止他还不知道的最新学术动向。而上述所说的功能却不能帮他做到这一点。所以要达到这一目的就必须对资料本身进行编码(亦称关键词或主题词)。例如,本书的关键词就可列为:信息系统分析与设计、软件工程、系统开发方法学、计算机应用、管理信息系统、决策支持系统等等。如果所有资料的关键词都以编码的形式送入计算机,那么我们就可以通过关键词检索出有关的资料。如我们在终端上输入自1现均年1月到1991年2月之间“信息系统分析与设计',(设代码为ISA&D)或“系统开发方法学',(设代码为SDM)方面的中文资料,则系统就可检查出“1990.1~1991.2”and“ISA&D
or SDM',and是中文的所有文献。
(2)项目经济效益的统计局
我们在开发我国技术改造项目管理系统时,遇到了一个棘手的问题:当时领导最关心的是效益问题,而恰恰在这问题上计算机无法统计。因为效益各种各样(如经济、技术、社会、节能等),并有相当一部分是不可量化的。而计算机一时又不能识别定性化的语言,故无法统计。后来我们通过研究决定用代码来解决此问题。
①效益问题的编码
我们解决效益编码问题如图19.5所示。具体做法是在关系数据库项目表(table)下加了一个效益子表(table),专门用于存放效益码以及分类、索引和注释。
②效益指标体系和主题词
效益编码的关键是要列出有关效益问题的指标体系,如图3.6所示,然后对每项具体指标给出一个主题词,并对主题词进行编辑,然后计算机对编码进行统计,即解决了面临的问题。
数据结构与数据库设计
信息系统的主要任务是通过大量的数据获得管理所需要的信息,这就必须存储和管理大量的数据。因此建立一个良好的数据组织结构和数据库,使整个系统都可以迅速、方便、准确地调用和管理所需的数据,是衡量信息系统开发工作好坏的主要指标之一。
数据结构组织和数据库或文件设计,就是要根据数据的不同用途、使用要求、统计渠道、安全保密性等,来决定数据的整体组织形式、表或文件的形式,以及决定数据的结构、类别、载体、组织方式、保密等级等一系列的问题。
一个好的数据结构和数据库应该充分反映物流发展变化的状况,充分满足组织的各级管理要求。同时还应该使得后继系统开发工作方便、快捷,系统开销(如占用空间、网络传输频度、磁盘或光盘读写次数等)小,易于管理和维护等特点。
一般DBS提供了两种建立DB的方式。一种是用数据定义语言(data definition language,简称DDL)来建立数据库结构。另一种是通过交互式的命令方式来建立DB结构,后者是比较流行的方式,它非常类似于dBASE,FoxBASE的建库方式。如果我们在建库时将其关系属性、视觉属性、存储属性等都省略(即用default的方式)的话,那么它就与dBASE和FoxBASE等几乎完全一样,目前DB技术的发展使得建立一个数据库在技术上是越来越简单,相对而言,分析和建立数据的整体结构工作却变得越来越重要了。
为了更好地组织数据和设计出实际应用数据库,应该注意如下几小节中所讨论的问题。
系统输入输出(I/0)设计是一个在系统设计中很容易被忽视的环节,又是一个重要的环节,它对于用户和今后系统使用的方便和安全可靠性来说都是十分重要的。一个好的输入系统设计可以为用户和系统双方带来良好的工作环境,一个好的输出设计可以为管理者提供简捷、明了、有效、实用的管理和控制信息。下面我们分别来讨论这两方面的问题。
模块功能与处理过程设计是系统设计的最后一步,也是最详细地涉及到具体业务处理过程的一步。它是下一步编程实现系统的基础。
前面我们已经对系统的总体结构、编码方式、数据库结构以及I/O形式进行了设计。一旦这些确定了之后,就可以具体地考虑与程序编制有关的问题了,这就是详细设计,即不但要设计出一个个模块和它们之间的联接方式,而且还要具体地设计出每个模块内部的功能和处理过程。这一步工作通常是借助于HIPO图来实现的。有了上述各步的设计结果(包括总体结构、编码、DB、I/O等等)再加上HIPO图,任何一个程序员即使没有参加过本系统的分析与设计工作,也能够自如地编制出系统所需要的程序模块。
系统设计阶段的最终结果是系统设计报告。系统设计报告是下一步系统实施的基础,它应包括本章各节的主要内容:
①系统总体结构图(包括总体结构图、子系统结构图、计算机流程图等)。
②系统设备配置图(系统设备配置(主要是计算机系统)图、设备在各生产岗位的分布图、主机、网络和终端连接图等)。
③系统分类编码方案(分类方案、编码和校对方式)。
④数据库结构图(DB的结构(主要指表与表之间的结构)、表内部结构(字段、域)、数据字典等)。
⑤I/O设计方案。
⑥HIPO图(层次化模块控制图)、IPO图等等。
⑦系统详细设计方案说明书。
从系统调查、系统分析到系统设计是信息系统开发的主要工作,这三个阶段的工作量几乎占到了总开发工作量的70%。而且这三个阶段所用的工作图表较多,涉及面广,较为繁杂。为了说明系统调查和系统分析各部分工作设置的原因,以及系统设计阶段各环节与前面各阶段各环节工作的关系,我们以一个系统开发流程图的方式给出它们之间的这些关系(如图3.19所示),便于读者在实施开发一个系统时对照查找。
系统输入输出(I/0)设计是一个在系统设计中很容易被忽视的环节,又是一个重要的环节,它对于用户和今后系统使用的方便和安全可靠性来说都是十分重要的。一个好的输入系统设计可以为用户和系统双方带来良好的工作环境,一个好的输出设计可以为管理者提供简捷、明了、有效、实用的管理和控制信息。下面我们分别来讨论这两方面的问题。
|