一、基本定义
用户 User
泛指使用系统的人 (具体的某人,或者某群体/某组织)
举例:小明是个用户;好劲公司也是个用户 (组织用户)
帐户 Account
围绕对象的成套数据 (对象的实例不同,帐户不同)
举例:小明的个人资料是一套帐户,小娟的个人资料是另一套帐户;好劲公司在电商平台拥有一套帐户,好劲公司在支付系统有另一套帐户
(请不要纠结“帐户、账户、账号”的汉字争议,总之英文都是Account)
二、关系的初步认知
用户和帐户,有时候是同一件事(1:1)
举例:小明注册了一个微信 (这个微信,是用户也是个人帐户)
三、关系的进阶认知
用户往往关联多个帐户(1:N)
举例:小明用微信申请了一个宠物公众号 (微信是个人帐户,公众号是另外一个帐户)
四、关系的突破认知
用户与帐户之间可以任意关联(N:N)
举例:小娟用微信申请了一个珠宝公众号,邀请小明成为管理员 (珠宝公众号是一套账户,关联两个用户;小明作为用户,关联了两个公众号)。
五、用户和帐户为什么要分开?
保证用户永远是主体
用户是主体,帐户是客体 (对象);用户的帐户,还是客体 (对象)
举例:小明注销了宠物公众号,小明是主体,宠物公众号是客体
举例:小娟邀请小明成为珠宝公众号的管理员,小娟是主体,小明的个人账户是客体
保证用户与系统对等
主体未必是用户,主体也许是系统
举例:系统在清晨6点提醒小明,系统是主体,小明的收件箱是客体 (对象)
用户相对抽象,帐户相对具体
用户区别系统,产生主观影响;帐户面向数据,承载各种资源;用户比帐户更抽象,更高级。
举例:小明是用户,他的头像、昵称、手机号码都是个人帐户中的数据,无论如何修改头像、昵称、手机号码,小明都是小明 (用户)
举例:小明可以通过微信与小娟聊天,小明与小娟是用户,小明与小娟的聊天记录是双方个人帐户的数据交集
举例:小明与小娟可以私下聊天,也可以在某个群组聊天;群组数据是帐户,群组可以是一种组织用户。
六、用户与组织用户
用户未必来自注册
内置用户,或者系统创建用户
举例:初始化的数据库系统即存在Root用户
组织是一种主体
组织不等于若干个体的集合,组织等于若干个体的关系
举例:宠物公众号有多个管理员,但并非是组织用户,仅仅是帐户;小明是宠物公众号的管理员,这是用户与帐户之间的关系。
举例:好劲公司虽然只有一个员工,但它是组织用户,并拥有企业帐户;小明是好劲公司的员工,这是用户与组织用户之间的关系。
举例:宠物公众号认证成为好劲公司的企业号;好劲公司是组织用户,宠物公众号是好劲公司关联的帐户。
组织应由个体创建,组织最少有一个个体
先有用户,后有组织用户,建立关联
举例:好劲公司的创始人是小明,先存在小明 (用户),才会有好劲公司 (组织)
举例:小明可以把好劲公司转让给其他人,也可以解散好劲公司,但如果好劲公司只有创始人自己,那么小明不允许退出公司 (禁止取消关联)。
七、帐户与数据资源
相同对象的帐户之间互斥
围绕某类实例,互不干扰,独立成套的数据
举例:小明修改微信头像,并不会影响小娟的微信头像,因为是两套完全不同的个人帐户。
相同用户关联不同对象的帐户
影响不同客体,且客体类型不同,产生的一系列互斥记录
举例:小明拥有微信个人帐户,小明还拥有宠物公众号账户
相同用户关联相同对象的不同帐户
影响不同客体,但客体类型相同,产生的一系列互斥记录
举例:小明拥有宠物公众号帐户,又申请了一个健身公众号
相同数据资源可以关联不同帐户
关联关系也拥有独立性,互不干扰
举例:小明在微信中收藏了百度首页,小娟在微信中也收藏了百度首页,小明不再收藏百度首页,相当于取消了关联关系,并不影响百度首页继续存在,也没有影响小娟在微信中继续收藏百度首页
八、常见误区
混淆用户和帐户
忽略了抽象关联,把井口当成天空
错例:注册微信与注册公众号独立进行 (正例:基于某个微信用户,创建公众号帐户)
九、应用案例
空组织的玄机
默认一个隐形用户,让组织具有扩展性
举例:某个部门是组织用户,默认会拥有一个隐形用户,保证组织内永远至少有一个个体;某个事务会关联到这个部门,虽然这个部门看起来没有员工,实际上这个事务关联到那个默认的隐身用户 (保证事务落实到用户);部门事务分配到某个员工,相当于从隐身用户转移到这个员工
多人对话与群组的区别
基于帐户包含的关系数据,创建组织用户
举例:某些IM软件中,私聊可以加入其他用户,形成多人对话 (关系),产生对话记录;一些多人对话永远都是临时状态;另一些多人对话可以升级为群组 (组织用户),这个群组可能会有管理员、公告、群共享 (组织用户对应的帐户)
存在帐户,但没有用户的系统
系统之间相互影响,在事件中扮演主体和客体,客体系统以账户的形式关联主体系统。
案例:某集团,有两条业务线,分别拥有独立的域名和邮件系统A和B;集团想要打通各个业务线的客服邮箱,于是设计了一个新系统C;系统C可以自动的根据邮件内容,把来自客户端邮件自动的分发到A和B俩个业务线对应的邮箱系统中。那么,在系统C中就分别有授权A和B使用的两套数据,也就是两个帐户C.A和C.B (这两个账户,并没有对应的具体用户,而是对应了两个系统A和B)

网友评论
最新评论