U/C矩阵
U/C矩阵是用来表达过程与数据两者之间的关系。矩阵中的行表示数据类,列表示过程,并以字母U(Use)和C(Create)来表示过程对数据类的使用和产生。
U/C矩阵是MIS开发中用于系统分析阶段的一个重要工具。提出了一种用关系数据库实现U/C矩阵的方法,并对其存储、正确性检验、表上作业等做了分析,同时利用结果关系进行了子系统划分。
U/C矩阵是一张表格。它可以表数据/功能系统化分析的结果。它的左边第一列列出系统中各功能的名称,上面第一行列出系统中各数据类的名称。表中在各功能与数据类的交叉处,填写功能与数据类的关系。
U/C矩阵的正确性,可由三方面来检验:
(1) 完备性检验。这是指每一个数据类必须有一个产生者(即“C”) 和至少有一个使用者(即“U”) ;每个功能必须产生或者使用数据类。否则这个U/C矩阵是不完备的。
(2) 一致性检验。这是指每一个数据类仅有一个产生者,即在矩阵中每个数据类只有一个“C”。如果有多个产生者的情况出现,则会产生数据不一致的现象。
(3) 无冗余性检验。这是指每一行或每一列必须有“U” 或“C”,即不允许有空行空列。若存在空行空列,则说明该功能或数据的划分是没有必要的、冗余的。
将U/C矩阵进行整理,移动某些行或列,把字母“C” 尽量靠近U/C矩阵的对角线,可得到C符号的适当排列。
利用U/C矩阵方法划分子系统的步骤如下。
1.用表的行和列分别记录下企业住处系统的数据类和过程。表中功能与数据类交叉点上的符号C表示这类数据由相应功能产生,U表示这类功能使用相应的数据类。如下图
2.对表做重新排列,把功能按功能组排列。然后调换“数据类”的横向位置,使得矩阵中C最靠近对角线。如下图
3.将U和C最密集的地方框起来,给框起个名字,就构成了子系统。落在框外的U说明了子系统之间的数据流。这样就完成了划分系统的工作。如下图