【阅读】火球UML大战需求分析

1.前言

为什么要看这本书呢,因为很多人推荐这本书。自己对UML的学习也没有很系统,所以拿来看看。阅读一番后,发现其风格偏白话,比较容易理解。现在不讲人话的八股文太多,必须全部下架,否则会严重阻碍我国科学技术发展。

2.内容理解随记

  • UML主要分为静态的结构图和动态的行为图两大类。结构图之所以是静态的是因为其描述的是事物间结构关系,很少变化。动态图之所以是动态的,是因为动态图描述了某类事物的变化过程,反之如果没有变化就不需要动态图。我们知道变化是永恒的,静止是相对的。世界运行过程符合动静结合的特点,所以用UML图来描述世界,从理论上是合理的。

  • UML可以用来干嘛?只有弄懂UML可以用来干嘛,才能把UML在软件工程中的功效发挥出来。UML的功能就一句话:UML图用来做软件需求分析与设计,便于人员沟通与工程文档化 。我们知道盖房子需要画图纸,软件开发也需要画图纸,UML就是用来画软件图纸的。我们知道软件工程分为很多阶段,在每一个阶段,都可以用UML图来进行文档化描述。前期的需求分析,中期的软件设计与开发,后期的部署,全都可以用UML进行描述,相关人员通过阅读UML图明确双方意图,同时相关文档也可以长期保存,以供审查。

  • 这里有一个误区,我之前认为UML中所有的图,我都必须用上,否则不完整,不专业,这是错误的理解。UML中不同的图适用于不同的软件开发阶段,比如说软件需求分析阶段,最好是使用用例图,活动图等描述工具,这样方便和客户交流,客户很容易就能看懂。结果你非得要用类图去画,客户根本看不懂,导致沟通不顺,这是很不专业的做法。因为类图是在软件设计阶段给技术人员看的,不同的设计阶段,要用不同的图。不同的图描述的内容的侧重点不一样,对应的读者也不一样。UML是一个工具箱,按需使用即可,不可生搬硬套。参考下表:

开发阶段 UML图
需求分析 主要用例图,活动图,时序图
概要设计 主要包图,构件图,(概要性)类图,部署图
详细设计 主要静态:包图(细化),构件图(细化),部署图(细化),类图(细化)。动态:活动图,顺序图,状态图,时序图
软件开发 主要同详细设计
软件部署 主要部署图

静态4种,动态5种,一共9钟常用的,学会就行了。

还有一些图(对象图,通信图),几乎不会用到,可以忽略。

  • 未完待续
相关推荐
麦哲思科技任甲林14 天前
Vibe Coding实战(下篇):AI 需求分析师 , 让需求收集变得智能、高效且完整
需求分析·vibe coding·需求工程
黄焖鸡能干四碗16 天前
软件系统概要设计说明书模版(Word)
大数据·运维·数据库·架构·需求分析
米核AI易山16 天前
扣子工作流设计模式:5 种可复用的架构模板
人工智能·架构·需求分析·coze·扣子工作流·米核ai易山
测试开发技术17 天前
AI 测试赋能全流程实战 | Agent Skill + AI 赋能「需求分析」
自动化测试·人工智能·自动化·需求分析·ai编程·ai测试
IT大白鼠17 天前
网络安全领域企业人才需求分析(2026年度)
安全·web安全·需求分析
米核AI易山17 天前
扣子工作流项目交付全流程:从需求分析到上线维护的实战方法论
人工智能·需求分析·coze·扣子工作流·米核ai易山
rolt18 天前
[pdf]406页《分析模式》漫谈文集202606更新
ddd·架构师·uml·领域驱动设计
rolt19 天前
EA17.1和PlantUML操作 -202606更新《软件方法》第3章
产品经理·架构师·uml
小bo波21 天前
形式化方法 × UML
java·软件工程·uml·面向对象·形式化方法·tla+