本文介绍了 RGCA 四步架构法的思路,通过 RGCA 四步架构法设计一个无代码埋点通用权限管理系统。
RGCA 四步架构法
- Requirement:从利益相关者获取需求
- Goal:将需求转化为目标(功能意图)
- Concept:将目标扩展为完整概念
- Architecture:将概念扩展为架构
从利益相关者获取需求 ▌受益原则
好的架构必须使人受益,要想把架构做好,就要专注于功能的涌现,使得系统把它的主要功能通过跨越系统边界的接口对外展示出来
▌痛点对于企业内部的管理系统而言基本上都会有一个权限管理系统,产品经理在进行产品设计的时候需要先确定每一个菜单,每一个按钮的 key 是什么,再将 key 与权限进行匹配、绑定
但是产品经理无法确定未来所有需要权限管理的地方,所以需要开发人员提前为所有地方设置 key
由于需要设置的 key 有很多,所以可能命名不规范,也有可能会有缺漏,未来涉及到遗漏的地方就需要开发人员重新编码、发布才能满足需求,这是开发企业内部权限管理功能的痛点▌利益相关者
- 甲方:开发人员,架构师,投资人
- 客户方:开发人员,产品经理,系统运营人员,老板
受益人
需求
开发者
1、集成简单,少写代码; 2、功能灵活,可以扩展; 3、不要绑死,可以插拔; 4、低代码侵入性,不影响业务代码
产品经理
1、随时可以增加对系统里面功能和数据的权限控制
系统管理员
1、希望能灵活对系统的权限进行配置,适合角色与员工结构,依照通用行业标准进行配置
开发者所属公司
1、低成本(划算); 2、不要绑死
投资人
1、通过该项目的完整演示 RGCA 的架构设计过程; 2、将此系统开源回馈到社区,以获得更多开发者的支持; 3、进一步搜集开发者和企业用户的需求以进行下一步的开发
▌需求分类、排序、特征
将需求转化为目标(功能意图)
从系统的顶层角度:定义系统的形式和功能
确定功能意图(功能意图是由主要受益者,主要需求而推导出来的)
形式:通用的权限管理系统
to..by..using
为了...通过...使用
功能:无需代码埋点,通过UI配置改变资源(页面、按钮、数据、API)的可访问性,达到权限控制的目的
过程 + 操作
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?