基于耦合度的分布问题研究
RF(ui,uj)= RFd (ui,uj) +RFc (ui,uj) +RFs (ui,uj)+…
第二步,求用户二元关系Ru。
Ru={<ui, uj > " ui, uj ? U 且 RF(ui, uj)3 Lu }
第三步,求Ru的等价关系Ru挕?
Ru? t(Ru)
第四步,客户端划分C。
C=U/ Ru?/P>
分布是一个权衡的过程,不存在唯一正确的方案。必须兼顾目标与限制,综合考虑所有方面的因素。
四、分布的自动生成工具
我们设计和实现了一个MIS系统辅助开发环境NDTool(Node Distributed Tool),这是一个基于耦合度和领域知识的用户、功能和数据分布的自动生成工具。该系统设计过程贯穿了我们所提出的思想和方法。
ECSL(Enterprise Concept Structure description Language)是一个企业概念结构描述语言,主要用于获取最终用户所提供的企业的需求信息。采用中文的类自然语言形式,面向最终用户。
DKDL(Domain KnowledgeDescription Language)是一个领域知识描述语言,主要用于获取领域专家在MIS系统开发上所积累的经验,并将所得到的领域知识存放于领域知识库中。该语言面向领域软件专家。
领域知识库用于存放领域知识。由DKDL获取的领域专家的开发经验,经过分析、组织,所得到的结果保存在领域知识库中。我们提供一组领域知识库的操作接口,用于领域知识库的存取和维护工作。
MADL(MIS System Architecture Description Language)是一个分布式MIS系统体系结构描述语言,主要用于描述MIS系统中的用户、数据和功能的分布情况。它是NDTool系统最后生成的结果。该语言面向软件开发人员。
NDTool系统的工作流程。首先,将领域软件专家所掌握的领域知识,描述成DKDL文本,经过DKDL编译器的编译,并调用领域知识库的接口将所分析的结果存入领域知识库中。当需要开发MIS系统时,企业最终用户将他的需求信息用ECSL语言描述出来。通过ECSL编译器进行编译,参考领域知识库的有关领域知识,计算用户、功能和数据耦合度,再根据耦合度进行网络节点的划分,最后将结果用MADL语言描述出来。提供给开发人员进行数据模型和模块设计。
五、 结束语
本文围绕基于耦合度的Client/Server结构应用程序的分布过程及其自动生成工具的实现进行了讨论。分布问题具有一个不确定性的特点,同时分布将耗费开发者大量的精力。如何合理地设计分布构造方法以及设计分布的自动生成工具是Client/Server系统开发过程中一个重要问题。
参考文献:
[1] 陆汝钤,金芝,万荣林,夏幼明 基于领域知识的需求信息获取软件学报,Vol.7,No. 3,1996
[2] 赵洪彪,周立柱 Client/Server结构系统中的处理分布计算机科学,Vol. 24,No.5,1997
[3] 张左梁 C/S应用系统设计的新概念和新技术计算机科学,Vol.24,No.1,1997