[架构之路-97]:《软件架构设计:程序员向架构师转型必备》-7-需求分析与业务需求领域建模

news2024/12/23 18:22:37

前言:

需求分析工程师工作中业务领域,而业务领域有很多业务领域专有的概念;

程序员主要工作在计算机领域,他们没有足够的业务领域的知识识别业务领域的过于专业化的业务需求。

为了确保业务需求能够被软件工程师正确无误地实现,就需要需求分析工程师或架构师为业务领域建立计算机领域的抽象模型,这个模型称为业务领域模型

第7章 业务需求领域建模

7.1 什么是领域模型

业务领域模型是需求分析人员的职责,以便于更好使用相同的“语言”与面向对象的程序员之间沟通业务需求,这就是业务领域模型的价值与意义。

7.1.1 业务领域模型的定义?

备注:

所以领域,就是业务领域,如5G移动通信、数据通信、医疗、金融、交通、电力这些都是业务领域。

每个的领域都拥有大量的专业化的专有名词和业务流程,然而,无论这些领域的专业知识如何变化,实际上都可以通过面向对象的编程,如C++或Java等编程语言实现。

为了平缓业务领域的专业性和面向对象编程语言的通用性之间的差别,业务领域模型应运而生。

7.1.2 业务领域模型是什么?

备注:

类图:使用面向对象的方法抽象业务领域中存在的各种静态概念。

状态图:使用状态机描述业务领域特有的各种业务状态轮转。

业务领域模型已经具备一定的架构设计,因此通常有需求分析工程师或架构师,而不是程序员来完成此任务。

架构师或需求分析工程师:根据对需求的理解和面向对象的理解,对需求领域的概念和业务状态进行抽象。有了这些模型,程序员就很容易根据领域模型和面向对象编程的技能,对目标系统进行编程实现了。

7.1.3 业务领域模型“为什么”

7.2 需求人员视角——促进用户沟通、解决分析瘫痪

7.2.1 领域建模与需求分析的关系

7.2.2 沟通不足

7.2.3 分析瘫痪

7.2.4 案例:多步领域建模,熟悉陌生领域

7.3 开发人员视角——破解“领域知识不足”死结

7.3.1 领域模型作为“理解领域的手段”

7.3.2 案例:从词汇表到领域模型

7.4 实际应用(5)——功能决定如何建模,模型决定功能扩展

7.4.1 案例:模型决定功能扩展

备注:领域模型是专业业务领域与通用的计算机领域的桥梁。

7.4.2 实践:功能决定如何建模

7.4.3 PM Suite领域建模实录(1)——类图

类图是领域建模师(架构师或需求分析人员)同专业领域专家逐步讨论、逐步细化出来的!!!

请看如下案例:

7.4.4 PM Suite领域建模实录(2)——状态图

7.4.5 PM Suite领域建模实录(3)——可扩展性

结束语:

至此,需求领域的任务就完成了......

后续就是就架构设计领域的任务了.......

本章既是专业业务领域的需求,也是计算机领域的设计,是有架构师或业务分析人员与业务领域的专家共同确定的、用面向对象的方法表达的业务领域的需求,同时也是对计算机软件的需求。

业务领域模型在专业的业务领域与计算机领域架起的一座桥梁!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/193655.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

《MFC编程》:第一个MFC程序

《MFC编程》&#xff1a;第一个MFC程序《MFC编程》&#xff1a;第一个MFC程序设置开发环境如何把一个win32程序改成MFC程序&#xff1f;代码书写《MFC编程》&#xff1a;第一个MFC程序 设置开发环境 头文件为<afxwin.h>&#xff1b;在设置中勾选“使用MFC库”。 注&…

53.Isaac教程--ZED相机

ZED相机 ISAAC教程合集地址文章目录ZED相机Codelets支持的固件下载出厂校准文件通过本地校准提高相机精度为相机校准文件指定自定义位置Isaac SDK 支持 StereoLabs ZED 和 ZED Mini (ZED-M) 以及 ZED2 立体相机。 使用本节中的程序下载出厂校准文件或在相机上执行本地校准。 …

看涨期权与看跌期权

目录 1. 看涨期权多头 2. 看涨期权空头 3. 看跌期权多头 4. 看跌期权空头 买进期货合约者称为多头&#xff0c;卖出股指期货合约者称为空头。 1. 看涨期权多头 买入沪深 300 指数的看涨期权&#xff0c;行权价 2000 点&#xff0c;期限 1 个月期权费 100 点1 点 100 元初…

PMP和ACP哪个更有用?

PMP证书和ACP证书都是项目管理类的证书&#xff0c;但是方向不一样&#xff0c;ACP特别验证了从业者在项目工作中理解及实施敏捷管理原则与实践的能力&#xff0c;PMP则认证了从业者所表现出的领导和引导项目团队的能力。 PMP是传统的项目管理模式&#xff0c;适合各行各业&am…

日常小工具之:不花一分钱,不限制视频大小,用 python 和 ffmpeg 批量视频转格式,并保存到 iphone / ipad

应用背景 2008 年左右买的一个系列视频&#xff0c;全都是 .rmvb 的格式&#xff0c;想移到 iphone 里面&#xff0c;但是显示解码格式不支持上 知乎 看格式转换的工具发现这些工具需要把视频上传上去处理&#xff0c;而且很慢&#xff0c;而且有些还限制视频大小 我觉得有必要…

规则引擎-drools-3.4-drl文件构成-rule部分-结果部分Action

文章目录drl文件构成-rule部分结果部分 RHSsetinsert && insertLogicalmodify && updatedeletedrl文件构成-rule部分 drl文件构成&#xff0c;位于官网的第5章位置&#xff0c;也是drools作为规则引擎应用的最核心部分。 其中rule模块&#xff0c;包括属性&am…

Linux命令使用错误记录

问题描述 今天在使用jenkins自动部署的时候&#xff0c;查看日志也是打印成功的&#xff0c;如下图&#xff1a; 自以为是成功&#xff0c;没有看项目启动日志。当访问接口的时候&#xff0c;返回的还是原有数据&#xff0c;没有更新数据接口。 解决思路 首先&#xff0c;打…

春晚背后的“新技术”,腾讯技术助力央视频春晚“新看法”

伴随着《难忘今宵》音乐的响起&#xff0c;兔年春晚圆满落幕。今年&#xff0c;我们和中央广播电视总台一起打造了“竖屏春晚HDR及菁彩声”技术方案&#xff0c;并在“央视频”客户端上线。让你“听”得更沉浸&#xff0c;“看”得更清晰。三维菁彩声&#xff0c;观看春晚“如临…

【Flume】Flume原理简述及示例实践

文章目录1. Flume是什么2. Flume三大组件3. Flume高级应用场景3.1 多路复用3.2 整合4. 示例实践4.1 配置4.2 运行4.2.1 运行结果输出4.2.2 设置后台运行1. Flume是什么 Flume是一个高可用&#xff0c;高可靠&#xff0c;分布式的海量日志采集、聚合和传输的系统&#xff0c;能够…

低代码:让企业“活”起来,赋能企业数字转型

低代码作为一种无需或只需少量代码即可快速生成应用程序的开发方式&#xff0c;广义的低代码可以分为低代码和无代码两种&#xff0c;两者面向的群体和场景不同&#xff0c;分别定位于服务IT人员和业务人员。两者都可以降低开发成本和门槛&#xff0c;有助于业务人员和开发人员…

自动驾驶感知——红外传感器

文章目录1. 红外线基本概念1.1 红外线探测的优缺点1.2 红外线相关基础知识1.3 红外辐射的基本知识1.4 黑体、白体和透明体1.5 相关物理定律1.5.1 基尔霍夫定律1.5.2 斯特藩-玻耳兹曼定律1.5.3 维恩位移定律2. 红外线传感器分类2.1 主动式与被动式2.2 光子式红外传感器2.3 热释电…

Redis -- 过期删除策略和内存淘汰策略

1. 过期删除策略 1.1 redis支持三种过期删除策略&#xff1a; 定时删除&#xff1a;在设置键的过期时间的同时&#xff0c;创建一个定时器&#xff0c;让定时器在键的过期时间来临时&#xff0c;立即执行对键的删除操作惰性删除&#xff1a;放任键过期不管&#xff0c;但是每…

Day2 CF713 div3 vp A-G

Dashboard - Codeforces Round #713 (Div. 3) - Codeforces感觉中规中矩&#xff0c;rk4k确实是我现在的水平&#xff0c;一直徘徊在绿灰边缘23333&#xff0c;其实很大原因在于不补题&#xff0c;看了CF Analytics的题目rating&#xff0c;几乎只写1200-的题&#xff0c;1600的…

Qt中的网络编程(TCP)

在Qt中网络编程主要由Qt Network模块来编写基于TCP/Ip的网络程序&#xff0c;其中提供了许多的类&#xff1a; 可以点击该链接查看&#xff1a;Qt网络C类|Qt网络 5.15.12 常见的有&#xff1a; QTcpServer基于 TCP 的服务器QTcpSocketTCP 套接字QUdpSocketUDP 套接字QDtls此类…

End-to-End Entity Resolution for Big Data: A Survey Matching部分学习笔记

Matching ER的核心是匹配任务&#xff0c;它接收一个块集合作为输入&#xff0c;对于一个块中的每一对候选匹配&#xff0c;它决定它们是否指向相同的真实世界实体。 Preliminaries 匹配决策通常由匹配函数MMM做出&#xff0c;它将每一对实体描述(ei,ej)(e_{i}, e_{j})(ei​…

全网最详细的手把手模拟实现Cache

前言&#xff1a;本文内容较多&#xff08;字数1w&#xff09;&#xff0c;不仅包含理论知识&#xff0c;还进行了全面实践。本文对前三章理论内容粗略解释&#xff0c;建议去b站观看哈工大和王道考研的操作系统中虚拟存储相关章节&#xff0c;然后对于设计实现就游刃有余了。 …

C++数论————质数筛法(单独判断一个数,判断N个数) 埃氏筛法

质数想必大家都不陌生从小学到大质数的概念&#xff1a;一个数如果除了1和本身之外没有其他的因子&#xff0c;那么这个数被称为质数今天要讲两个知识点&#xff1a;在C中如何判断一个数是否为质数在C中如何判断1-N之间哪些数为整数在C中如何判断一个数是否为质数这个知识点较为…

当湖北《汉川》遇到湖南《早安隆回》,杨语莲会是下一个袁树雄吗

古有花木兰&#xff0c;替父去从军。如今在中国华语乐坛&#xff0c;继《早安隆回》袁树雄之后&#xff0c;又出现了《汉川》杨语莲。之所以把这两首歌曲&#xff0c;以及这两位音乐人&#xff0c;放在一起来做对比&#xff0c;是因为这两首歌曲&#xff0c;甚至这两位音乐人&a…

Java中weekOfYear和weekOfWeekBasedYear的区别

这其实是计算一年中的周数&#xff08;某日属于一年中的第几周&#xff09;的两种算法。 简单来说&#xff0c;前者保证了1周不会跨越自然年的边界&#xff1b;后者保证了1周一定有7天&#xff0c;一定从某个DayOfWeek&#xff08;如周一&#xff09;开始&#xff0c;并且1周只…

时序预测 | MATLAB实现GWO-BiLSTM灰狼算法优化双向长短期记忆神经网络时间序列预测

时序预测 | MATLAB实现GWO-BiLSTM灰狼算法优化双向长短期记忆神经网络时间序列预测 目录时序预测 | MATLAB实现GWO-BiLSTM灰狼算法优化双向长短期记忆神经网络时间序列预测预测效果基本介绍模型描述程序设计参考资料预测效果 基本介绍 MATLAB实现GWO-BiLSTM灰狼算法优化双向长短…