试题二(25 分)阅读以下关于结构化软件系统建模的叙述,在答题纸上回答问题1 至问题3。某公司拟开发一个商业情报处理系统,使公司能够及时针对市场环境的变化及时调整发展战略,以获取最大的商业利益。项目组经过讨论,决定采用结构化分析和设计方法。在系统分析阶段,为了更好地对情报数据处理流程及其外部角色的关联进行建模,项目组成员分别给出了自己的设计思路:(1)小张提出先构建系统流程图(System Flowcharts ),以便更精确地反映系统的业务处理过程及数据的输入和输出;(2)小李提出先构建系统数据流图(Data Flow Diagrams),来展现系统的处理过程和定义业务功能边界,并给出了情报分类子系统的0 层和1 层数据流图,后者如图2-1 所示。
图2-1 情报分类子系统的1 层数据流图项目级经过讨论以数据流图作为本阶段的建模手段。工程师老王详细说明了流程图和数据流图之间的区别与联系,并指出了图2-1 的数据流图中存在的错误。
【问题2】(8 分)请分析指出图2-1 所示的数据流图中存在的错误及其原因,并针对图2-1 的1 层数据流图绘制出情报分类子系统的0 层数据流图。
参考答案:如图所示的数据流图中存在的错误有以下4 种:(1)“分类训练”加工:只有输入没有输出,产生数据黑洞;(2)“分类处理”加工:只有输出没有输入,无中生有;(3)“规则文件”数据流:外部实体没有经过加工处理,直接到数据存储。(4)“配置信息”数据流:外部实体之间没有加工处理,存在直接数据流。