惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Jina AI
Jina AI
T
The Blog of Author Tim Ferriss
B
Blog
L
LangChain Blog
Y
Y Combinator Blog
美团技术团队
博客园 - 三生石上(FineUI控件)
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
G
Google Developers Blog
量子位
博客园_首页
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
C
Check Point Blog
D
Docker
小众软件
小众软件
The Cloudflare Blog
大猫的无限游戏
大猫的无限游戏
T
Tailwind CSS Blog
Apple Machine Learning Research
Apple Machine Learning Research
博客园 - 聂微东
Blog — PlanetScale
Blog — PlanetScale
GbyAI
GbyAI
Google DeepMind News
Google DeepMind News
IT之家
IT之家

博客园 - bobmazelin

Microsoft Robotics Developer Studio基础(一):前言 Microsoft Robotics Developer Studio beta4的大bug Microsoft Robotics Developer Studio4 Beta随想 最近动态记录 走入Microsoft Robotics Developer Studio世界 【工作流】工作流结构模式整理 【工作流】PE中的资源模式的实现方式 【PE】流程图对象以及事件驱动机制的介绍 【讨论】WF中的异常(错误)处理 【讨论】基于WF的流程结构 建立基于WF工作流模式库的设想 2008:再战Business Process Management System(BPMs) bobmazelin的流程管理系统介绍和概念性设计(三) bobmazelin的流程管理系统介绍和概念性设计(二) bobmazelin的流程管理系统介绍和概念性设计(一) AspectNet功能介绍(二) AspectNet功能介绍(一) 在(开发)流程系统之前 在Sequence模式中思考流程资源(数据)问题
【讨论】【工作流】由资源模式中的“权限分配”想到资源结构
bobmazelin · 2008-10-17 · via 博客园 - bobmazelin

最近正在向PE中加入资源模式的控制,在测试权限分配模式时,发现了资源结构的问题,在此和大家分享、讨论。

首先简单解释一下权限分配模式:即参与活动的人,由其权限决定。

比如:审批流程中的审批活动必须由经理来完成,其中经理是“权限”概念的一种。

这个模式本身不复杂,大部分工作流系统都支持,PE当然不能不支持...^_^.....

但是,如果连带思考资源的结构时,就会发现问题。

关键是,参与者和权限之前的关系并不是多对一这么简单的关系,不同企业定义他们之间的关系不同,一般来讲,至少是多对多的关系;

即某个参与者拥有多重权限,而每种权限可以分配给多个参与者。把这种关系映射到数据库模式中,大家都知道需要3个表来维护,比如:User,RoleOfUser,Role。

这样,RoleOfUser就成为了User和Role之间的连接者。既然RoleOfUser在数据库中实际存在的,那么它在流程资源中存在吗?这个问题很重要.

如果不存在,RoleOfUser就不在流程系统的控制中,这样Role和User之间的关系对于流程系统等于是没有;那么它就应该存在。

有了RoleOfUser这个资源,上面的这个模式就不那么简单了。试想,流程设计者想表达的是,只有经理级别的参与者才能审批,但是经理和参与者之间还有个中间人,即RoleOfUser。如此,流程设计者就必须把表达方式改为:只有RoleOfUser的Role是经理,同时RoleOfUser的User是某某时,才能审批。

虽然,通过这种方式的确可以实现权限分配模式;但从优雅和简洁的角度看,这个解决方案并不理想。如果哪位有更好的想法,请不吝赐教。