登陆注册
8925700000027

第27章 物流信息系统的设计(2)

(4)模块的规模

系统分解时,模块规模不可过大或过小。过大的模块常常使系统的分解不充分,模块内部可能包含了若干部分的功能,使模块的内聚度降低,所以需要进一步分解,把原有的模块变成若干功能尽可能单一的模块。但分解也必须适当,过小的模块可能降低模块的独立性,造成系统接口非常复杂。

经验表明,一个模块的规模最好限制在1~2页纸内,这样大小的模块易于编制、维护和修改。

(5)模块的作用范围与控制范围

模块的作用范围是指受该模块内部的一个判定影响的所有模块的集合,只要任一模块中含有一些依赖于这个判定的操作,那么该模块就在这个判定的作用范围之中。如果整个模块的全部操作都受这个判定的影响,那么这个模块连同它的上级模块都在这个判定的作用范围之内。

模块的控制范围包括该模块本身及所有的下属模块的集合。控制范围完全取决于系统的结构,它与模块本身的功能并没有太大关系。

在物流信息系统设计中,对于模块的控制范围和作用范围,一般应遵循这两条规则:

①所有受模块M的一个判定影响的模块应从属于模块M,即对任何一个内部存在判定调用的逻辑模块,其作用范围应是其控制范围的子集。

②受模块M判定影响的模块,最好局限在模块M本身或其直属下级模块,即作出判定调用的模块与属于该判定作用范围的模块在系统的层次上不能相隔过远,否则会增大模块间的块间联系,提高模块之间的耦合程度。

假设模块B中的一个判定影响到模块E和C,而模块C不在模块B的判定范围之内,显然这样的结构不符合通常的逻辑思维和表达。为了使模块B的判定能影响到模块C,需要设置一个状态控制标记传递给模块B、C的上级模块A,模块A再传递给C。如此下来,模块之间的联系就比较复杂了,同时出现模块之间的控制耦合。

这时,可以进行适当的调整,如把模块C移为模块B的下层模块,就可以避免上述模块设计中的不科学之处。

在结构化系统设计中,当作用范围为控制范围的子集时,才能获得较低的块间联系。

所以,如果发现模块的作用范围不在其控制范围内可进行以下修改:将作判定的模块合并到它的调用模块中或把判定上移到足够高的位置,或把受判定影响的模块下移到作判定的模块的控制范围之内。

模块结构的设计是一项非常复杂并且灵活性很高的活动,上面列举的规则或方法大多是从大量的统计中得出的经验,在设计物流信息系统的结构中,应具体问题具体分析,不能生搬硬套,才能设计出科学合理的物流信息系统结构。

5.1.2 从数据流程图导出模块结构图

1.数据流程图的分类

物流信息系统设计阶段的结构化设计方法(SD方法)与信息系统分析阶段的结构化分析方法(SA方法)有着密切的联系。分析阶段用SA方法得到了描述系统需求说明书的数据流程图等内容,而SD方法则以数据流程图为基础,设计系统的模块结构。

信息系统的数据流程图一般可以分为两种典型的结构:变换型结构和事务型结构。

变换型结构是一种线性结构,它可以明显地分为输入、主加工和输出三个部分,其主要功能是完成对输入数据的变换;事务型结构数据流程图中通常可以确定一个处理逻辑,把它的输入分离成一串平行的数据流,然后分别执行某些处理,该处理逻辑起调度作用,为系统的事务中心,事务中心对每一种类型的事务分别有专门的“事务”模块予以处理,“事务”模块的直接下级模块称为“动作”模块。与此对应的,也有两种模块结构图的设计方法:变换分析法和事务分析法。

2.变换分析法

变换分析法是从变换型数据流程图导出模块结构图的一种方法。以数据流程图为基础,首先找出变换中心,确定模块结构图的顶层模块,然后,按照“自顶向下”的设计原则逐步细化,最后得到一个满足数据流程图所表达用户要求的模块结构。变换分析法的过程可分为三步。

首先,要把数据流程图划分为主加工、逻辑输入和逻辑输出,找出变换中心,确定主加工。根据物流信息系统分析报告,可以确定数据流程图中系统的主加工。通常,几股数据流的汇合处或是一个数据流的分流处可以定义为系统的主加工,即系统的变换中心,它的两边对应的分别是逻辑输入和逻辑输出。从分析过程来看,逻辑输入、逻辑输出的划分涉及不同的人对数据流的理解是不同的,结果会有差异,但一般出入不会太大。

然后,要以主加工为中心,设计模块结构图的顶层和第一层。为每个逻辑输入设计一个输入模块,其功能是向主模块提供数据。为主加工每一个逻辑输出设计一个输出模块,其功能是从主模块接收数据并为下层模块提供数据输出。为主加工设计一个变换模块,其功能是将逻辑输入变换成逻辑输出。第一层模块同主模块间传送的数据应该与数据流程图相对应,主模块控制并协调输入、变换以及输出模块的工作。

最后是设计中、下层模块。通过从顶层模块开始,自顶向下、逐步细化来完成,主要包括输入模块的细化、输出模块的细化和变换中心的细化。对输入和输出部分,要一直分解到数据流程图的输入端和输出端为止。对于主加工部分,要根据数据流程图中的实际情况,结合前面讲到的模块耦合和内聚等知识,再进行模块的分解。此外,在设计每一个模块时,应注意给它们起一个适当的名字,以反映出该模块的功能。

3.事务分析法

对于事务型数据流程图,可以通过事务分析导出相应的模块结构图。其最高层模块不仅具有控制功能,而且还具有分析事务类型和高度的功能。一般来说,所有的事务在数据字典中都已经定义了。在一个系统中可能有若干个事务中心,它们可能是输入子系统中的一部分,或可能是输出子系统的一部分,还可以是变换子系统的一部分。

在进行事务分析时,通常的步骤如下:

①确定事务的来源(数据字典中已定义)。

②确定适当的、以事务为中心的系统结构。

③确定出每一种事务以及它所需要的处理动作。

④对有相同处理功能的模块进行合并。在一些模块中有相同的处理动作,则要把相同的处理动作分离出来,合并成一个模块,或从一组底层功能组合的模块中产生一个中层模块。

⑤针对每一种类型的事务,分别建立专门的事务模块,对它们进行独立的处理。如果系统中的某些事务非常相似,可以把它们暂时组合起来,进入同一个模块处理,但必须确保这个事务模块有较高的紧凑性,要避免产生通信组合,更不能产生逻辑组合模块。

⑥一种事务所引起的每一个处理动作,要分别建立一个直接从属于该事务模块的下级模块。要注意模块的分解原则,在分解时要允许有公共处理动作的模块,加大模块的扇入数。

⑦必要时,可对动作模块作进一步的分解。

在实际应用中,变换分析法和事务分析法常常交替使用。如果数据流程图的某一部分是变换型的,另一部分可能是事务型的,可以以变换分析为主,事务分析为辅。各个物流系统的特点不同,初始结构图的设计方法也不相同。凡是满足系统设计说明书要求的结构图都可以作为初始结构图。之所以称之为初始结构图,是因为数据流程图并没有完全反映出用户的要求,如查询要求、控制流等并没有反映出来。所以,由数据流程图导出的结构图还要参照处理逻辑说明、数据字典等文档进行调整。

5.1.3 系统功能模块处理过程的设计

进行系统功能模块处理过程设计的主要工具是HIPO图(Hierarchy PlusInput‐Processing‐Output)。HIPO图是IBM公司20世纪70年代建立并逐步完善的一种软件设计工具,可以描述系统的结构,也可以用来描述模块内部的处理功能。

HIPO图由一张H图和一组IPO图构成。H图(层次结构图,Hierarchy Chart)描述了自顶向下分解所得到的整个系统的设计结构及各模块之间的关系,H图中的每个模块均可用一张IPO图来详细描述。

我们以一个库存管理系统为例,对其中的“修改库存数据”这一功能,应用HIPO技术来进行模块结构的设计和表示。

首先,绘制H图。在H图中,用一个方形代表一个模块,方形内加入此模块的处理功能或模块名,用连结两模块的直线表示模块之间的调用关系。可采用自顶向下扩展的方法逐步画出模块的结构,直到每个模块的处理功能和规模符合前面讲到的模块设计的原则为止。对修改库存数据这个处理逻辑可以看成由一个模块来实现,画出第一层的一个模块。那么,这时的系统具备的数据处理过程为:①提取库房收发数据;②提取原有库存数据;③处理收发数据;④更新库存记录。

以上几个数据处理过程,如果用一个模块来实现,规模太大,结构不合理,可将这四个处理过程分解成四个模块。第一个模块成为第二层四个模块的总控制模块,负责调用它们,所以就可以得到第一轮的H图。

将处理收发数据这一模块根据实际情况可以分成四类处理过程:①当库房收货时要增加在库数;②当库房发货时要减少在库数;③在库房文件中增加一项新纪录;④从库房文件中删除一项旧记录。

IPO图描述在某个特定模块内部的输入、处理过程、输出三部分。IPO图是配合层次化的模块结构图来详细说明每个模块内部功能的一种工具。IPO图的设计可因人因具体情况而异,但必须包括输入(I)、处理(P)、输出(O),以及与之相应的数据库、文件,以及在总体结构中的位置等信息。IPO图的主体是处理说明部分,必须重点说明,可用自然语言、结构化语言、判定表、判定树等工具进行描述。IPO图实际上是一张图形化的表格。

库房收发数据

原有库存数据

(1)当库房收货时要增加在库数;

(2)当库房发货时要减少在库数;

(3)在库房文件中增加一项新纪录;

(4)从库房文件中删除一项旧记录。

修改后的库存信息

5.2 代码设计

物流信息系统中涉及大量的代码处理,如客户代码、作业代码、商品代码、储位代码、集装箱代码、车辆代码、货物状态代码、费用类别代码等。所以,非常有必要对物流信息系统进行代码设计。所谓物流信息系统的代码设计就是对大量的物流信息进行合理分类,然后用代码加以表示。将物流信息编码以标准的形式发布,就构成了物流信息的分类编码。统一的物流信息分类编码是物流信息系统正常运作的前提。

5.2.1 代码设计基础

物流信息系统设计阶段的代码设计主要是完成对数据类中的关键字段的码结构设计并形成编码库。

1.代码设计的原则

编码的目的是为了便于使用物流信息系统,因此,在编码时应考虑计算机处理物流信息使用方便的同时,还有兼顾手工处理物流信息的要求。代码设计时应遵循以下几个方面的基本原则:

(1)唯一性

实际中,一个物流处理对象可以有多个名称,也可以按照不同的方式对它进行描述,但是在一个物流信息系统的编码体系中,每一个代码仅代表唯一的实体或属性,反之,一个处理对象只能赋予它一个唯一的代码。

(2)适用性和可扩充性

代码要尽量反映编码对象的特点,代码结构要合理,并与事物分类体系相匹配,以便于识别和记忆。在设计代码时,应考虑物流信息系统的发展和变化,预留一定的空间,以便增加新的代码。

(3)标准化和规范化

国际、国家和行业的有关标准是代码设计的重要依据,应尽量采用已标准化的代码,使编码更通用和规范。在一个代码体系中,代码结构、类型和编写格式必须规范统一。

(4)简明性

在不影响系统代码的容量和可扩充性的前提下,代码应尽可能简单明了,容易识别,位数尽可能少,以降低差错率、减少计算机的存储空间和传输时间。

(5)稳定性

代码的定义和描述应能适应环境的变化,避免因频繁变动而造成人力和物力的浪费。

在代码设计的基本原则中,有些原则之间是有冲突的。例如,代码的可扩充性和代码的简明性。因此,在代码设计过程中,应综合考虑以上各原则,使设计出的代码更合理。

5.2.2 代码类型

1.顺序码

顺序码是用一连串的数字来表示物流信息系统中客观存在的实体或实体属性。顺序码是人们经常使用的一种代码,如物流部门内部员工的编号,从1开始依次往后编号。

再例如,可对运输方式进行编码,01表示航空运输,02表示铁路运输,03表示汽车运输,04表示管道运输。

顺序码的编制方法是将编码对象按一定次序给出顺序的编号。这种代码的优点是简单、易处理、容易学习和掌握,缺点是因为代码本身没有实际含义,所以不能反映编码对象的特点。此外,由于编码按顺序排列,新增加的数据只能排在最后,删除数据会造成空码,缺乏灵活性。所以,一般把此方法作为其他编码方法的补充或组成部分。

2.区间码

区间码是按编码对象的特点把代码分成若干个区间,每一个区间表示所编码对象的一类类别。它的编制方法就是按某种分类规则将编码对象分成若干个区间,给每个区间赋予相应的含义并进行顺序编码。典型的区间码如身份证号码、邮政编码。

同类推荐
  • 商业创意

    商业创意

    商业创意简单地说是可以实现商业价值的创意。商业创意的诞生通常是由企业或者相关机构推动,通过内部孵化或者外部获取,最终用于实现商业价值。商业创意理论开创了一种全新的研究视角,它重新定义了可以产生商业价值的创意范畴,同时细化和编排了商业创意对于企业影响的各环节。它通过研究各环节之间的关联,以及它跟最终商业价值产生的效率之间的关系,来指导企业在创意投入上,有有限的资源获得最大化的商业价值回报。
  • 全民社交

    全民社交

    1、本书用非常接地气的语言详细介绍了新媒体的是什么,新媒体如何用来赚钱。2、采取了使用新浪官方案例的模式,披露一些别人无法得知的数据。用政府的危机公关处理,用名企业的公关危机处理,来讲述如何把营销变成市场价值。3、其它讲述微信微博的畅销书,都是把案例当做唯一阐述品。而本书吸纳了新的新媒体盈利商业模式——数据引导淘宝店主。用权威性的数据和案例来阐述新媒体如何赚钱。
  • 科特勒营销微语录

    科特勒营销微语录

    菲利普·科特勒,现代营销学之父,世界级营销学泰斗。他一生致力于营销战略与规划、营销组织、国际市场营销及社会营销的研究,他创立的营销理论和思想改变了传统营销的格局,大大扩充了营销的内涵,使得营销上升为一门科学。他的著作被翻译为20多种语言,被全世界的营销人士视为营销圣经,影响了一代又一代世界企业家,帮助无数企业走出了销售困境。《科特勒营销微语录》集合了科特勒一生重要著作及其一些演讲的思想和语言精华,用观点加案例的形式深入浅出地阐释了科特勒的营销精义。“科特勒微语录”部分摘录了科特勒关于营销的核心观点和语句,让读者全面系统地了解科特勒的营销理论。
  • 家居建材这样卖

    家居建材这样卖

    这是一本简单、系统、实用的家居建材行业店员销售操作指导类书籍。本书包含了大量的实战案例,通过对实战案例的解析,为家居建材行业的店员,导购提供一套具体的解决方案。本书作为家居建材企业内训的完整教材,是家居建材销售中每天都会遇到,却又难以应对的问题系统解决方案,是根据家居建材行业完全量身定做,极具操作性。
  • 撬动地球的Google

    撬动地球的Google

    尊敬的书友,本书选载最精华部分供您阅读。留足悬念,同样精彩!Google凭借什么吸引全球最优秀的人才?据称Google是硅谷每平方米博士最密集的公司。一家能克服文化、语言和地域差异的公司,未花钱做广告或营销品牌,就成为人们心中挚爱,这样的成就堪称绝无仅有!《撬动地球的Google》便是有关这家平民媒体公司的权威性记录,描述这家公司如何在最先进的技术驱动下不断前进,以及如何在短短几年内便对信息世界来革命性影响,彻底改变人们获取各种信息的方式。
热门推荐
  • 爱之救赎

    爱之救赎

    酒店大亨张朗延有两个美丽的女儿,姐姐叫张欣妍,妹妹叫张婉玗。上一辈错综复杂的恩怨情仇导演出一场蓄意已久的阴谋,姐妹俩究竟谁才是真正的豪门千金,亦或是都不是。阴谋与爱情的角逐中,究竟谁才是最后的赢家?疑云重重,真相最后能否水落石出?亲情友情爱情阴差阳错,姐妹花该如何抉择,化身复仇女神的她们能否如愿以偿,浑浊的灵魂们最终能否被爱救赎。
  • 恶魔吃货缠上身

    恶魔吃货缠上身

    虽然人和妖已经是和平相处,但并不代表妖和人就可以恋爱。可这件事情却复复连起,还影响到了妖族的生命与妖力。最终妖族还是研发出了特殊的转世续缘法,可惜是狐妖这一族却不能使用!在他还未遇见她前……在爱情和亲情之间,他果断的选择了亲情……因狐妖是不可恋爱,他的奶奶一直问他有没有喜欢的人?!还是已经爱上了!他却对她摆了摆手,说:“我不会喜欢上谁,而且我根本就没有喜欢这个念头,更别说……爱上谁……”在他遇见她后…爱上她后…他顿时明白了什么。在他再次选择爱情和亲情时,他毅然的选择默默的离去……
  • 守护甜心之公主的泪

    守护甜心之公主的泪

    本文讲述的是新学期的第一天,有一位转校生,那位转校生对唯世一见钟情。当转校生得知唯世喜欢的人是亚梦时顿时对亚梦充满了憎恨,想要把她从唯世身边赶走,从守护者里面赶走。
  • 下一站幸福:幸福如沙漏

    下一站幸福:幸福如沙漏

    天王巨星,天才作家的终极PK!每个女孩子十八岁的时候都有梦,可是她的梦却早在她七岁的时候被人一起带走了。她的幸福是触不到的,她的爱是受过诅咒的。幸福就如沙漏般不断的从指缝间溜走。华丽的忧伤,沙漏般的爱情.....
  • 造灭主宰

    造灭主宰

    一个遗失之地的故事,一个少年的成长之路,两个主宰之间的碰撞。试炼之地燃战意战群雄灭灵之地看世界拜恩师造化殿中造化现系统出终焉之地血海流永恒出
  • 好莱坞演技派

    好莱坞演技派

    他在1998年的好莱坞仰望星空,凯特·温斯莱特、凯拉·奈特莉、艾米·亚当斯等一个个身影从他身边走过,奥斯卡向他轻轻招手,这一世他将带着曾经触不可及的梦想,向着好莱坞最顶峰前行。
  • 买一送一:嫁给亿万首席

    买一送一:嫁给亿万首席

    后妈策划着将她嫁给四十岁的老男人商业联姻,她手忙脚乱的在大街上抓住一个男人:“你敢跟我结婚吗?”恰好被女友放鸽子的景沥渊薄唇一抿:“正好,今天我带了户口簿,登记去。”二十三岁的殷笑笑就这样迅雷不及掩耳的和只见过两次面的男人闪婚了。产后。婆婆送了殷笑笑一个煮蛋器,告诉她每天都要吃一个蛋,补充蛋白质,景沥渊正好路过,正经脸道:“老婆,你不是每天都吃吗,还不止一个。”殷笑笑呆愣片刻,涨红了脸:“流……流氓!”景沥渊凤眼微挑:“我说了什么吗?”
  • 白珃

    白珃

    重生回到了年少时光,前世发生的许多遗憾好像都可以挽回了!可是已经沧桑的心灵能否重新变得稚嫩、无知、而充满活力呢?与周围的同学能够友好相处吗?走向了另一条路,会变得不一样吗?未来、人生,好像都不可能一帆风顺?前世的白珃只是个向往爱情纯粹,理想成真,并为此而积极奋斗的小小职员。有着一技之长支持着自己的生活及为梦想而奋斗。然而,长期的疲惫和多变的天气却将白珃打倒了,再醒来,已经是十二年前…
  • 朗杀三域

    朗杀三域

    这本书因为成绩不好,本人思考之后重写了一遍,新开了一本,和本书主人公以及各种设定是一样的,已经通过审核。《灭天神瞳》,求支持,保证完本。一刀在手,天下我有。一瞳在身,遇神杀神。我若成佛,天下无魔。我若成魔,佛奈我何。十二岁觉醒,黎朗从此踏上了强者的征程。在痛苦中保持着清醒,在变数中保持着坚定。练元炁,悟功法,杀破三域,强者无敌!
  • 魂道记

    魂道记

    沧蓝界,千年世家,宗门林立。帝国,王国纷争不断。圣地超然世外,屹立一切之上。内抗海族,外御妖魔。一个落魄的家族少年。一场突如其来的意外。