查看下图在SAP中关于Entity维度的设计,设计维的时候有所有者,审核者,查看者,H1,H2,H3和其他属性
对于其他属性我们暂且不管,看看所有者,审核者,查看者,H1,H2,H3这几个属性设计对系统的影响有下:
- 可以根据H1,H2,H3抽取不同角度的实体树
- 可以根据所有者,审核者,查看者几个属性轻松的实现权限的管理(控制不同的人在查询时对于不同实体的访问权限)
- 可以预设多个空字段,以能够动态的扩展
那么这几个设计对于我们在类似部门制机构和文档库之类的设计有什么启发呢?
先说文档库吧:假设我们在文档库表里添加所有者,审核者,查看者,H1,H2,H3几个属性字段
通常对于企业文档库的构建,我们是建立在组织架构基础上的,也就是岗位之上的,虽然我们能够通过角色来实现,但是通过角色没有层次结构(级别关系)的设计,不方便权限维护,也不方便赋权;所以以下的假设是说我们的文档库是基于岗位的;
- 一般我们想控制文档不同的访问权限,通过对所有者,审核者,查看者这些属性赋予不同的岗位角色,那么我们就可以轻松的控制文档的权限
- 不同角色的人对于文档库的查看视角是不同的,例如下图是开发类项目需要的部分文档,那么从项目管理角度,我们希望根据项目的阶段或过程类别,过程域查看,对于团队中的不同角色人员,我们系统只关心我自己的文档,例如PM关心项目管理的文档,测试人员关心,测试相关的文档,我们通过H1,H2,H3这些类似父节点的属性,可以轻松的实现该功能(同一个文档设置不同的父节点,就可以根据父节点拉出不同的树)
如果了解更过的BPC知识,可以访问http://www.cjcsc.cn/news/2132_60.shtml