《软件方法》2023版第1章(10)应用UML的建模工作流-大图

DDD领域驱动设计批评文集

做强化自测题获得"软件方法建模师"称号

《软件方法》各章合集


1.4 应用UML的建模工作流

1.4.1 概念

我用类图表示建模工作流相关概念如图1-16。

图1-16 建模工作流相关概念

图1-16左侧灰色部分定义了"游戏规则",右侧则是在"游戏规则"上"玩游戏"的结果。

显然,只是看这个类图不能很好理解相关概念。我用对象图展示本书推荐的"游戏规则"如图1-17。

图1-17 建模工作流相关概念的对象图(图形较大,点开看或访问原图http://www.umlchina.com/book/1pics/fig1_017.png)

图1-17中,除了最左侧的"工作流类型"之外,都是可以变化的。

可以替换"表示元素"。例如,系统用例规约改为用活动图表达,则图1-17的相应部分可以改为图1-18。

图1-18 系统用例规约改为用活动图表达

可以替换"表示法"。例如,把UML换成其他表示法或自创的表示法,那么图1-17左起3到5列都要修改。

可以替换"方法学",例如,受"少林功夫+唱歌跳舞"启发,创造出"浑元形意太极+革命性创造划时代洞见领域驱动设计敏捷精益方法学",但仍然使用UML表示法,那么图1-17左起2、3列需要修改。

1.4.2 工具箱

从图1-17可以看出,本书重点使用的UML图形只有4种:用例图、类图、序列图和状态机图。

UML 2.5包含的图形一共有14种,如图1-19所示的树上的叶结点。

图1-19 UML图形(根据UML2.5规范绘制)

经常会有人有意无意地误导,让人以为使用UML建模需要画这么多图,顺势攻击"UML笨重"。其实,应该把UML看作一个工具箱。工具箱里面有各种工具,建模人员只需要根据当前所开发系统的特点,从这个工具箱中选择合适的工具就可以,并不需要"完整地"使用UML。

这和编程语言类似。很多人说"我用Java",其实只是用Java的一小部分,而且很长时间内也只会用这一小部分。

经常有学员问:潘老师,能不能给一个案例,完完整整地实施了整套UML?这是一种误解,这样的案例不应该有。这相当于问:有没有一本经典的小说,把字典里所有的单词都用上了?有一些建模工具自带的案例模型会造成误解,一个模型里把所有的UML图都给用上了,但这是工具厂商出于展示其工具建模能力的目的而提供的,不可当真。

相关推荐
JJJennie77737 分钟前
MAI Gateway技术揭秘:大模型网关有哪些功能?从原理到落地
大数据·人工智能·大模型·gateway·软件工程·ai网关
DsirNg20 小时前
把 AI 放进一次合并请求:一个批量归档功能的交付闭环
软件工程·测试·代码审查·开发效率·pull request·ai辅助编程·需求拆解
树欲静而风不止861 天前
制造企业研发数字化|APQP+QMS 一体化
软件工程
老郑聊AI业财智造2 天前
Transformer 技术架构与源码分析
人工智能·python·深度学习·语言模型·架构·transformer·软件工程
深维AI随笔3 天前
《构建之法》| 第一章概论:软件工程的“第一性原理“,一线交付工程师的读书笔记
大数据·软件工程
东莞市永盛电气4 天前
2026年三相440V转380V变压器行业测评,厂家产品解析
uml
嘟哩DuliDuli4 天前
AI 短剧生成为什么要有角色库、场景库和镜头卡
android·人工智能·安全·ai·软件工程
老郑聊AI业财智造4 天前
Qwen技术架构与源码深度剖析
人工智能·语言模型·架构·系统架构·软件工程
老郑聊AI业财智造4 天前
DeepSeek技术架构与源码分析
人工智能·语言模型·架构·系统架构·软件工程
梁辰兴4 天前
软件工程:面向对象分析的基本任务与分析过程
软件工程·分析工具·面向对象分析·分析方法·梁辰兴·基本任务·分析过程