-
面向对象=对象+类+继承+通过消息进行通信
-
类建模
- 类模型:描述系统内部对象的特征、对象之间的相互关系以及对象所属的每个类的属性和操作,捕获系统的静态特征。
- 类图:对类及其关系进行建模。
- 对象图:显示了单独的对象及其关系。
- 类图相当于对象图的无限集合。
- 类写法(类名:每个单词的首字母均大写):
- 对象写法(与类写法相似,有下划线):
- 链接(link):是对象间物理上或概念上的连接
- 关联(association):描述了有共同结构和语义的一组链接;
- 多重性(multiplicity):指定了一个类与关联类的单个实例可能相关的实例数目。
- 对于同一个类的两个对象之间的关联来说,关联终端名是必需的。关联终端名也可以区分同一对类之间的多重关联。
- 关联类:
- 限定关联:
- 泛化和继承
- 聚合
- 组合(一个部件至多属于一个装配件; 一个部件一旦被指定给一个装配件,它就与装配件有着共同的生存期。)
- 依赖关系(留心一下箭头方向,线是虚线)
- 抽象类:
- 抽象类(abstract class):是指没有直接的实例的类,但其子孙类有直接的实例。
- 具体类(concrete class):是指可以实例化的类,可以有直接的实例。
-
状态建模
- 状态模型刻画了对象及其关系随着时间的变化,描述响应外部激励而发生的操作序列。
- 状态模型由多个状态机图组成。
- 每个类对应一个状态机图。
- 事件:
- 信号事件(signal event):信号是指从一个对象到另一个对象的明确的单向信息流动
- 变更事件(change event):是指由满足布尔表达式而引起的事件。
- 时间事件(time event):是指在绝对时间上或在某个时间间隔内发生的事情所引起的事件。
- 迁移(transition)是指从一个状态到另一个状态的瞬时变化。从源状态到目标状态一发生变化,就说触发(fire)了迁移。
- 当事件发生时,迁移就会触发
- 警戒条件(guard condition)是指为了让迁移发生而必须为真的布尔表达式。
- 当事件发生时,警戒条件就会触发,但只有在条件为真的时候才会发生迁移
- 单触发状态图
- 有限生存期
- 发生的时间 [ 需要满足的条件 ] / 产生的效果
- 嵌套:右面大方框的每个小方框下一步都可以是【取消】
- 历史状态:代表上次离开复合状态时的最后一个活动子状态
- 有限生存期
-
用例图
- 用例+参与者+关系+边界
- include(方便复用)
- extend
- generalization(父亲的用例可以继承给孩子)
- include(方便复用)
-
构造型:指在已有的模型元素基础上建立一种新的模型元素。它与现有元素要相差不多,只是多一些特别的语义。
-
4+1视图(以用例视图为核心)
-
分析类
- 实体类:系统要记录和维护的信息;边界类:系统和外部要素间交互的边界;控制类:Use Case中行为的协调
- 图形表示
- 实体类:描述必须存储的信息,以及与这些信息直接相关的操作;实体类与系统外部环境以及特定Use Case的控制逻辑要弱耦合。
- 边界类:注意这是概念层,不是要做具体界面
- 控制类:把Use Case特有的行为与系统其他部分(实体类、边界类)隔离开来;实体类和边界类有可能跨越多个Use Case
吉林大学软件工程UML+OOA
sweet_Mary2024-05-27 8:54
相关推荐
「QT(C++)开发工程师」20 小时前
UML | 最好的类图设计工具结合CSDN天启呈现-领路架构师小鱼儿LY20 小时前
软考系统架构设计师之UML统一建模语言爱思德学术1 天前
中国计算机学会(CCF)推荐学术会议-C(软件工程/系统软件/程序设计语言):MSR 2026郝学胜-神的一滴2 天前
深入探索 C++ 元组:从基础到高级应用健康有益科技2 天前
家庭健康智能终端:解锁智能家居时代的健康管理1candobetter2 天前
软考中级习题与解答——第六章_计算机硬件基础(2)深圳行云创新3 天前
BizDevOps 是什么?如何建设企业 BizDevOps 体系NMGWAP3 天前
AI辅助编程:软件工程的终结还是进化新阶段?疯狂的Alex5 天前
2010-2022 同等学力申硕国考:软件工程简答题真题汇总中电金信6 天前
中电金信:AI重构测试体系·智能化时代的软件工程新范式