摘要:为了帮助读者进行考前训练,本节给出9道典型的试题,以及这些试题的分析与解答。请读者独立完成这些练习题,然后再去阅读试题分析与解答。根据自己所做试题的情况,查漏补缺。
为了帮助读者进行考前训练,本节给出9道典型的试题,以及这些试题的分析与解答。请读者独立完成这些练习题,然后再去阅读试题分析与解答。根据自己所做试题的情况,查漏补缺。
试题3
阅读以下说明和流程图,如图1至图4所示,回答问题1和问题2,将解答写在答卷的对应栏内。
【说明】
某供销系统接受顾客的订货单。当库存中某配件的数量小于订购量或库存量低于一定数量时,向供应商发出采货单;当某配件的库存量大于或等于订购量时,或者收到供应商的送货单并更新了库存后,向顾客发出提货单。该系统还可随时向总经理提供销售和库存情况表。该供销系统的分层数据流图中部分数据流和文件的组成如下:
文件:
配件库存=配件号+配件名+规格+数量+允许的最低库存量
数据流:
订货单=配件号+配件名+规格+数量+顾客名+地址
提货单=订货单+金额
采货单=配件号+配件名+规格+数量+供应商名+地址
送货单=配件号+配件名+规格+数量+金额
假定顶层图是正确的,"供应商"文件已由其他系统生成。
【问题1】
指出哪张图中的哪些文件可不必画出。
【问题2】
指出哪些图中遗漏了哪些数据流。回答时用如下形式之一:
(1)XX图中遗漏了XX加工(或文件)流向XX加工(或文件)的XX数据流。
(2)XX图中XX加工遗漏了XX输入(或输出)数据流。
试题3分析
供销系统是描述顾客、供应商、总经理与供销系统之间的数据的输入与输出的变换过程。试题明确指出了顶层图的正确性,可以根据试题说明与顶层图确定系统的基本功能:
(1)处理顾客的订货单,反馈不合法订货单给顾客,在一定的条件下向顾客发出提货单。
(2)在一定的条件下向供应商发送采购清单,处理供应商的送货单,反馈不合法的送货单。
(3)在一定条件下接受总经理的查询,向总经理提供销售及库存情况表。
根据试题的提问可以掌握如下的知识点:
首先,问题1的"不必画出"的含义,是指在某层数据流图中,只画流程图中各加工之间的公共数据文件,隐藏某加工的局部数据文件,这个规则只是为了使整个流程图的层次结构更为科学,更加清晰。当然画出那些"不必画出的数据文件"对流程图阅读不会造成理解错误。
其次,问题2指出各层流程图中可能遗漏了数据流,所以可以假定各层流程图的处理流程、加工分解,以及已有数据流的正确性。
【问题1】
理解"不必画出"的含义后,就可以进行问题1的解答与分析。
顶层图中没有涉及到数据文件,可以跳过不予考虑。
0层图中包含"配件库存"、"缺货订单"和"采购清单"3个文件。其中"采购清单"是加工2的局部数据文件。根据原则,"采购清单"应该是0层图中不必画出的数据文件,但现在不能保证采购清单是一个局部文件,还需要根据加工1子图来确定。
如果"采购清单"是加工1子图的一个数据文件,那么"采购清单"与哪些加工有关联呢?加工1.1是订单合法性检查,加工1.3是制定报表,加工1.4是更新库存,加工1.5是处理到货,这些加工都与采购无直接的联系,那么只有加工1.2可能与"采购清单"有数据联系。
加工1.2是接受送来的合法订单,首先根据配件库存来确定订单是否现在能发货,如果有货则进行"有货订单"处理,如果配件不够订单数,则需要产生一个采购请求。是否要填写采购清单呢?也就是加工1.2填写"采购清单",再由加工2来进行处理,是不是这样需要根据分析加工2来确定。从加工2子图的加工2.3到2.1再到2.2是用来产生"采购清单"的,因此以上的假设应该不正确,也就是采购清单不是由加工1生成,而是由加工2通过几个子加工生成的,所以采购清单是加工2的一个局部数据文件,在0层图中不应该出现,是一个不必画出的数据文件。
由于加工1子图与加工2子图只有一层细化图,因此没有局部文件和外部文件之分,可以不予考虑。
【问题2】
对于问题2要求指出哪些图中遗漏了哪些数据流,这需要从两个方面进行考虑。
一是父图与子图的平衡,即子图的输入输出数据流与父图相应的加工的输入输出数据流必须一致。
二是针对每个加工至少要有一个输入和输出,反映此加工的数据来源和结果。
顶层图中,供销系统有"订货单"、"送货单"与"销售及库存情况"3个输入数据流,"不合法的订货单"、"不合法的送货单"、"提货单"、"采购单"与"销售及库存情况表"5个输出数据流,在0层图中都得到反映,没有父图与子图的不平衡。
0层图中的加工1输入数据流有"订货单"、"到货通知"和"查询销售及库存情况",而在加工1子图中少了"到货通知",存在父图与子图的输入不平衡。输出数据流有"不合格订货单"、"销售及库存情况表"和"提货单与采购请求",而加工1子图中没有"提货单",存在父图与子图的输出不平衡。
试题说明提到"当某配件的库存量大于或等于订购量时,或者收到供应商的送货单并更新了库存后,向顾客发出提货单",所以在加工1.4更新库存后,应产生"提货单"输出数据流;且"到货通知"是加工1.4处理的前提条件,加工1.4处理的输入数据流"到货单",需经加工1.5完成,加工1.5也没有输入数据流,所以加工1.5处理的输入数据流为"到货通知".
加工1.3需要完成销售与库存有关情况,而输入的数据只有销售历史,很明显还缺少库存情况,所以遗漏了文件"配件库存"到子加工1.3的数据流。
0层图中的加工2有"采购单"、"不合格送货单"和"到货通知"3个输出数据流,在加工2子图中这3个输出数据流都有反映,所以没有遗漏输出数据流。
加工2有"送货单"、"采购请求"两个输入数据流,显然加工2子图中遗漏了输入数据流"采购请求".
从加工2子图的处理流程上来看,加工2.4是到货进行处理,与采购无直接关系。"采购请求"应该触发采购输入数据,数据处理流向是从加工2.3到加工2.1最后到加工2.2,产生采购清单文件和输出数据流采购单;且加工2.3没有输入数据流,所以"采购请求"应该作为加工2.3的输入数据流。
再一次分析整个数据流图,确保所有的输入与输出数据流的平衡。
试题3参考答案
【问题1】
0层中的"采购清单"不必画出。
【问题2】
加工1子图中遗漏了"配件库存"文件到1.3加工的数据流。
加工1子图中1.4加工遗漏了"提货单"输出数据流。
加工1子图中1.5加工遗漏了"到货通知"输入数据流。
加工2子图中2.3加工遗漏了"采购请求"输入数据流。
相关推荐:
软考备考资料免费领取
去领取