RGCA

  • Requirement:从利益相关者获取需求
  • Goal:将需求转化为目标(功能意图)
  • Concept:将目标扩展为完整概念
  • Architecture:将概念扩展为架构

目录

  • 从利益相关者获取需求
  • 将需求转化为目标
  • 将目标扩展为完整概念

从利益相关者获取需求

  • 有哪些类型的利益相关者
  • 利益相关者需求
  • 需求分类与排序
  • 需求的特征

有哪些类型的利益相关者

利益相关方 关注系统的事物和对象 -
投资方 有助于解决问题的利益相关者 投资人微软、微软股东等
受益者 从系统受益的利益相关方 客户、程序员
客户 订购系统或购卖系统的利益相关方 使用 ASP .NET Core 开发应该的组织
用户 直接操作使用系统的利益相关方 C# 程序员
供应商 开发、支持和管理系统或商品的利益相关方

利益相关者需求

利益相关方 投资人微软、微软股东等 -
受益者 投资人 通过框架吸引 C# 开发者,为开发工具 VisualStudio 和 Azure 云带去收入
客户 使用 ASP .NET Core 开发应用的组织 低成本,开发高质量、可靠的产品产生收入;可以快速开发 WEB 应用程序
用户 C# 程序员 提供尽可能多的基础功能支持(日志功能、配置功能、安全方功能);提供尽可能好的性能支持;支持通过容器部署
供应商 - 集成 EF Core

需求分类与排序

分类 -
总体的意愿 通过框架吸引 C# 开发者,为开发工具 VisualStudio 和 Azure 云带去收入
总体的意愿 通过框架提升开发人员效率、降低成本、开发高质量、可靠的产品产生收入
必需品 可以快速开发 WEB 应用程序
对缺失物品表现出的欲望 提供尽可能多的基础功能支持(日志功能、配置功能、安全方功能)
提供尽可能多的性能支持
支持在不同的操作系统平台上运行
支持通过容器部署

需求的特征

分类 - 受益强度 危害 重视程度 耦合度 选择能力 KANO分类
总体的意愿 通过框架吸引 C# 开发者,为开发工具 VisualStudio 和 Azure 云带去收入
总体的意愿 通过框架提升开发人员效率、降低成本、开发高质量、可靠的产品产生收入
必需品 可以快速开发 WEB 应用程序
对缺失物品表现出的欲望 提供尽可能多的基础功能支持(日志功能、配置功能、安全方功能)
提供尽可能多的性能支持
支持在不同的操作系统平台上运行
支持通过容器部署

KANO分类:基本型;期望型;兴奋型;无差异型;反向型

将需求转化为目标

To...By...Using

为了...通过...使用

ASP .NET Core:为了能够简单方便地输出响应信息给请求,通过写一段代码创建响应内容,使用 ASP .NET Core

目标陈述

- ASP .NET Core
与解决方案无关操作对象 网络请求
与利益相关属性 响应体
解决方案无关过程 改变
过程的属性 简易性

将目标扩展为完整概念

  • 扩充概念之特化
  • 扩充概念之向下放大
  • 扩充概念之向上整合

扩充概念之特化

- ASP .NET Core
与解决方案无关操作对象 网络请求
与利益相关属性 响应体
解决方案无关过程 改变
过程的属性 简易性
解决方案相关的操作对象 HTTP 请求;WebSocket 请求;Grpc 请求

扩充概念之向下放大

概念 概念描述 无关操作对象 利益相关属性 无关过程
监听 为了长时间接收网络请求,通过在服务端持续监听端口,在有请求进入时可以对其进行处理。使用网络监听器 原始网络请求 状态 建立连接
解析 为了让程序员写的代码能够简单访问网络请求中的信息,通过对原始网络请求进行协议格式转换,使用协议解析器 原始网络请求 格式 转换
处理 - 请求响应体 内容 写入
返回 - 原始网络请求 格式 转换

扩充概念之向上整合

作业

尝试在我们已经找到的1级4个子过程基础之上,挑一个过程进行向下推演直到类级别

课程链接

https://appsqsyiqlk5791.h5.xiaoeknow.com/v1/course/video/v_5f39bdb8e4b01187873136cf?type=2

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。

欢迎转载、使用、重新发布,但务必保留文章署名 郑子铭 (包含链接: http://www.cnblogs.com/MingsonZheng/ ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。

如有任何疑问,请与我联系 (MingsonZheng@outlook.com) 。

.NET 云原生架构师训练营(RGCA 四步架构法)--学习笔记的更多相关文章

  1. .NET 云原生架构师训练营(建立系统观)--学习笔记

    目录 目标 ASP .NET Core 什么是系统 什么是系统思维 系统分解 什么是复杂系统 作业 目标 通过整体定义去认识系统 通过分解去简化对系统的认识 ASP .NET Core ASP .NE ...

  2. .NET 云原生架构师训练营(对象过程建模)--学习笔记

    目录 UML OPM OPM优化 UML 1997年发布UML标准 主要域 视图 图 主要概念 结构 静态视图 类图 类.关联.泛化.依赖关系.实现.接口 用例视图 用例图 用例.参与者.关联.扩展. ...

  3. .NET 云原生架构师训练营(设计原则&&设计模式)--学习笔记

    目录 设计原则 设计模式 设计原则 DRY (Don't repeat yourself 不要重复) KISS (Keep it stupid simple 简单到傻子都能看懂) YAGNI (You ...

  4. .NET 云原生架构师训练营(责任链模式)--学习笔记

    目录 责任链模式 源码 责任链模式 职责链上的处理者负责处理请求,客户只需要将请求发送到职责链上即可,无需关心请求的处理细节和请求的传递,所以职责链将请求的发送者和请求的处理者解耦了 何时使用:在处理 ...

  5. .NET 云原生架构师训练营(模块一 架构师与云原生)--学习笔记

    目录 什么是软件架构 软件架构的基本思路 单体向分布式演进.云原生.技术中台 1.1 什么是软件架构 1.1.1 什么是架构? Software architecture = {Elements, F ...

  6. .NET 云原生架构师训练营(权限系统 RGCA 架构设计)--学习笔记

    目录 项目核心内容 实战目标 RGCA 四步架构法 项目核心内容 无代码埋点实现对所有 API Action 访问控制管理 对 EF Core 实体新增.删除.字段级读写控制管理 与 Identity ...

  7. App架构师实践指南四之性能优化一

    App架构师实践指南四之性能优化一     1.性能维度常见用来衡量App性能的维度如图9-1所示.其中,性能指标包括电池(电量/温度).流量(上行流量/下行流量等).CPU(平均/最大/最小).内存 ...

  8. 看阿里P9架构师如何向你定义架构及架构师

    架构的定义 先来看看软件架构的普遍定义吧. 一个程序和计算系统软件体系结构是指系统的一个或多个结构.结构中包括软件的构建,构建的外部可见属性以及它们之间的相互关系. 体系结构并非可运行软件.确切的说, ...

  9. 0003.5-20180422-自动化第四章-python基础学习笔记--脚本

    0003.5-20180422-自动化第四章-python基础学习笔记--脚本 1-shopping """ v = [ {"name": " ...

  10. .NET 云原生架构师训练营(系统架构)--学习笔记

    目录 对外展现的功能 内部功能 功能交互与价值通路 系统架构 目标 认识系统的价值通路 认识功能架构,通过把功能结构与形式结构结合来描述系统架构 受益原则 好的架构必须使人受益,要想把架构做好,就要专 ...

随机推荐

  1. C:\Keil_v5\ARM\ARMCC\include\stdint.h contains an incorrect path.

    1.问题 在使用Keil uvison5打开例程代码进行学习时,发现部分.h文件无法读取 2.解决方法 1.找到如图的设置按钮(小锤子) 2.根据自己所用的是C/C++还是ARM选择(我这里是C/C+ ...

  2. 【译】Visual Studio 2013 退役 :旧版本 Visual Studio 的支持提醒

    新年到了,也是提醒我们 Visual Studio 支持生命周期中即将到来的日期的好时机.对 Visual Studio 2013 的支持将于今年4月9日结束.如果您使用的是旧版本的Visual St ...

  3. 2023年度总结,互联网寒冬是躺平OR寻找风口

    一.前言 又到了年底,这一年过的真的好快,犹如白驹过隙. 身体快跃过去了,灵魂还没有. 拿起键盘却迟迟无法下手,经过三天终于完成了! 这是很颓很丧的一年,很难看到自己的成长,就像登山卡在半山腰,开车堵 ...

  4. 【FreeRTOS】堆内存管理

    动态内存分配及其与FreeRTOS的相关性 为了使FreeRTOS更易用,内核对象(如任务.队列.信号量.事件组)不在编译期静态分配,而是在运行时动态分配,FreeRTOS在内核对象创建时分配RAM, ...

  5. 青少年CTF训练平台 — CRYPTO通关WP

    A2-Crypto Caesar vxshyk{g9g9g099-hg33-4f60-90gk-ikff1f36953j} 凯撒解码 qsnctf{b9b9b099-cb33-4a60-90bf-df ...

  6. [转帖]Sqlserver数据库中char、varchar、nchar、nvarchar的区别及查询表结构

    https://www.cnblogs.com/liuqifeng/p/10405121.html varchar 和 nvarchar区别: varchar(n)长度为 n 个字节的可变长度且非 U ...

  7. [转帖]python print如何格式化输出变量长度固定某个长度

    https://zhuanlan.zhihu.com/p/595778735 在 Python 中,可以使用格式化字符串的方法来格式化输出变量. 例如,要将一个字符串变量 s 输出为 10 个字符长度 ...

  8. [转帖]设置kafka 数据保留时间

    https://www.cnblogs.com/gao88/p/12539112.html kafka 单独设置某个topic的数据过期时间kafka 默认存放7天的临时数据,如果遇到磁盘空间小,存放 ...

  9. [转帖]Jmeter中线程组和setUP线程组、tearDown线程组的区别

    JMETER: setUP线程组:在测试任务ThreadGroup 运行前先被运行.通常用在运行测试任务前,做初始化工作.例如建立数据库连接初始分化工作.用户登录 tearDown线程组:在测试任务线 ...

  10. 【转帖】Docker容器四种网络模式

    https://blog.whsir.com/post-5268.html docker自身默认提供了四种网络模式:none.bridge.container.host.除了这四种网络模式外,还可以通 ...