Thinking in UML
第一章:为什么需要UML
1.为什么需要UML?
1.面向对象的兴起。
2.面向过程的可变性太差,只能针对的是某一个东西。
3.面向对象针对的是已乐意
2.RUP和UML
RUP译为统一过程,是一个采用了面向对象思想,使用UML作为软件分析设计语言,结合了项目管理等软件工程知识综合而成的一个软件方法。
- RUP将软件生产分为了四个阶段和九个核心工作流。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nWZySuDs-1656935242697)(https://img1.imgtp.com/2022/07/04/cQD9Ipxt.png)]
3.RUP带来的好处?
1.提高软件的成熟度(采用统一过程,已经可以达到CMM二级到三级的水平了)
2.提高软件技术水平和质量的需要。
3.统一过程适合于开发稳定的架构。
4.RUP和XP的区别
XP类似于小卖部的老板,可以进一批货,看买的好的,下次多进,卖的不好的下次不进。
RUP类似于造战斗机。不可随意更改,相对稳定。
第二章:建模基础
1.UML关键概念
1.1建模
建模:由特定的事物,在特定的条件下,产生一个特定的场景。
特定事物(物)+特定条件(规则)+特定动作(参与者驱动)= 特定场景(事件)
通俗来说,模就是人,事,物,规则。
1.2用例驱动
逻辑视图:建模中的人,事,物,规则事如何组织的。
进程视图:建模中的人,事,物,规则如何交互。
部署视图:建模中的人,事,物,规则如何部署在物理机。
实施视图:建模中的人,事,物,规则如何构成系统的零部件,我们事如何组装的。
1.3抽象层次
抽象层次:抽象层次越高,具体信息越少,但概括能力越强。抽象层次越高,表达能力越丰富,越容易理解。
抽象的两种形式:
自顶向下:适合从头认识一个事物。例如:汽车制造原理。
自底向上:适合于时间中改进和提高认识。例如:在工作中发现问题。
1.4视图
视图用于组织UML,表达出模型某一方面的含义。举例:一辆车的外观,性能。
视角:是针对某一个视图来说的。举例:侧面的外观和后面的外观。
- 建模的含义就是为不同干系的人,展示他们所关心的那部分视角。
- 建模的核心,为特点的信息选择合适的视图,为不同干系的人展示正确的视角。
1.5对象分析方法
1.一切都是对象。 举例:某业务流程
2.对象之间相关独立。 (只有在特定的场合下,才会联系在一起)
3.通过一个场景,我们仅能得到对象的一个侧面信息。
4.对象都具有原子性。(只要认为是一个对象,即使是商场,在与其他对象交互时也是不可再分的)
5.对象是可抽象的。(对象参与的场景越多,越具有抽象价值)
6.对象时有层次的。(从需求设计到是实现的过程中,可以分为几个不同的抽象层次,在同一个阶段,例如:需求设计阶段,也可以分为几个抽象层次)
使用UML建模的方法:分析某一个对象实例参与的多个场景,获取该对象的多个侧面信息,最后归纳整理这些对象实例,抽象出对象的一般特性。