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

1.前言

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

2.内容理解随记

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

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

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

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

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

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

  • 未完待续
相关推荐
holeer3 天前
【V3.0】「酒店 × 视觉AI」项目 | 需求分析说明书(软件工程概论 - 课程作业三)
人工智能·软件工程·需求分析·原型设计·总体设计·结构化设计
沪漂阿龙3 天前
大模型选型决策全流程:从需求分析到生产上线的六步法
人工智能·数据挖掘·需求分析
workflower3 天前
需求-需求分组
需求分析·软件需求·结对编程
workflower4 天前
需求-技术需求
python·测试用例·需求分析·软件需求
workflower4 天前
需求工作切分
数据分析·测试用例·需求分析·软件需求
小龙报4 天前
【Coze-AI智能体平台】Coze 工作流 = 智能体的 “流程管家”?一文解锁自动化落地新玩法
人工智能·语言模型·自然语言处理·性能优化·数据分析·知识图谱·需求分析
workflower5 天前
需求工作的范围
测试用例·集成测试·需求分析·模块测试·软件需求
rolt5 天前
二十四年前在UMLChina谈本体论-James Odell
产品经理·架构师·uml·本体论·palantir
workflower6 天前
发现原子需求
数据分析·测试用例·需求分析·软件需求
我爱cope7 天前
【从0开始学设计模式-1| 设计模式简介、UML图】
设计模式·uml