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

1.前言

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

2.内容理解随记

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

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

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

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

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

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

  • 未完待续
相关推荐
小bo波12 小时前
形式化方法 × UML
java·软件工程·uml·面向对象·形式化方法·tla+
lsyeei12 小时前
UML 状态机图
软件工程·uml
Warren2Lynch19 小时前
破局“伪敏捷”:UML诊断视角下的微服务转型与架构重构——以EcoStream为例
微服务·架构·uml
rolt19 小时前
[pdf]《软件方法》全流程引领AI-电子书共560页202606更新
产品经理·架构师·uml
rolt20 小时前
[pdf、epub]370道《软件方法》强化自测题业务建模需求分析共310页(202606更新)
产品经理·架构师·uml
lipengxs2 天前
PlantUML、Mermaid、SQL ER、OpenAPI 在线预览工具整理
ai·编辑器·流程图·uml
2603_954708313 天前
微电网协调控制系统柜的应用场景有哪些?
分布式·安全·架构·能源·需求分析
万岳科技程序员小赵4 天前
互联网医院系统开发全流程详解:从需求分析到正式上线
需求分析·互联网医院系统开发·互联网医院系统搭建·互联网医院app/小程序·ai智能问诊
ふり4 天前
测试的“三重境界”:黑盒、白盒、灰盒的对比与实践
网络·python·测试工具·需求分析
lsyeei4 天前
UML建模在软件生命周期中的应用
软件工程·uml