当前位置: 首页 > news >正文

StarUML的介绍与使用

文章目录

  • 简介
  • 视图
  • StarUML创建视图
    • 类图
    • 用例图
    • 时序图

简介

UML:统一建模语言,用模型元素组成的不同视图从各个维度来描述系统
StarUML为常用系统建模工具之一

视图

常见视图的概念可参考:UML常见的几种视图
包括:用例图、顺序图、状态图、类图、包图、协作图

StarUML创建视图

在右侧边框中鼠标右键单单击上面的工件,选择Add->Model(或使用左上角的
工具栏单击Model->Add->Model)创建模块
再右键单击模块,选择Add Diagram即可创建多种视图
(也可以直接跳过模块创建,直接在上方工具栏处Model->Add Diagram)
在这里插入图片描述

类图

选择Add Diagram中的Class Diagram

Tool Box中包含如下内容:
在这里插入图片描述
使用比较多的放在第一个Classes(Basic)

想为类或接口创建属性或方法,只需要在在右侧选中某一类单击右键,选择Add加入AttributeOperation对应属性和方法
同样的操作能为方法增加参数Parameter,并且参数属性中可以调整是出参还是入参,调整其direction属性即可(return表示该参数为返回值)
请添加图片描述
后续需要右键目标,然后调整Format其中的Surpass AttributesSurpass Opertions即可展现目标的这些属性的可见性
在这里插入图片描述

接口和类之间的连线:
在这里插入图片描述
使用Interface Realization表示实现,由实现类指向接口
在这里插入图片描述

常用的关系:

  • dependency:依赖关系,体现在代码中是:形参、局部变量
  • association:关联关系,体现在代码中是:成员变量,这种关系比较弱,如森林里面有老虎
  • aggregation:聚合关系,是关联关系的一种,体现在代码中是:成员变量,这种相关性强,如雁群与雁
  • composition:组合/复合/合成关系,是关联关系的一种,体现在代码中是:成员变量,这种相关性最强,如人与头. realization:实现,体现在代码中是:implements
  • generalization:泛化,表示继承,体现在代码中是:extends
    在这里插入图片描述

用例图

选择Add Diagram中的Use Case Diagram

然后可以在Tool Box中看到以下内容:
在这里插入图片描述

  • Actor可以理解为系统角色(不只是人,也可以是其他的第三方系统等)
  • Use Case可以理解为系统中的操作
  • Association:Actor和Use Case之间可以用Association进行连接
  • Include:包含,从包含用例指向被包含用例,例A->B,表明A包含B,代表B是执行A的前提(或B是公共用例)
  • Extend:扩展,从扩展用例指向被扩展用例,例如逾期归还书籍需要扩展交罚金(扩展需要一定条件触发)

时序图

选择Add Diagram中的Sequence Diagram
在这里插入图片描述
然后可以在Tool Box中看到以下内容:
在这里插入图片描述
使用Lifeline和Message即可实现时序了
在这里插入图片描述

http://www.lryc.cn/news/196766.html

相关文章:

  • GPT4 Advanced data analysis Code Interpreter 做行业数据分析、可视化处理图像、视频、音频等
  • 软考高级信息系统项目管理师系列论文五:论信息系统项目的质量管理
  • 多线程处理文件集合,先拆分,在执行
  • 将excel表中的英文自动翻译成中文
  • Junit 集成测试
  • Orleans的成员管理和故障检测故障检测
  • 分类选择,最多五级
  • ASP.NET framework升级core .NET 6.0
  • BootStrap-前端框架
  • 解读 | 自动驾驶系统中的多视点三维目标检测网络
  • C++ 用户学习 Python 的最佳方法
  • 使用docker搭建drogon windows10,linux,mac下开发环境
  • 【RKNN】YOLO V5中pytorch2onnx,pytorch和onnx模型输出不一致,精度降低
  • 六分科技CEO李阳:精准定位助力汽车智能化普及
  • 信号完整性分析基础知识之有损传输线、上升时间衰减和材料特性(六):衰减和dB
  • 吃鸡达人必备:分享顶级干货+作图工具推荐+账号安全查询!
  • 帆软报表解决单元格不显示问题
  • LeetCode讲解篇之138. 随机链表的复制
  • 主定理(简化版)
  • HTTP1.0和HTTP2.0的区别
  • ARM资源记录《AI嵌入式系统:算法优化与实现》第八章(暂时用不到)
  • 微信小程序2
  • G.711语音编解码器详解
  • 蓝桥杯每日一题2023.10.17
  • 16.SpringBoot前后端分离项目之简要配置一
  • Probability Calibration概率校准大比拼:性能、应用场景和可视化对比总结
  • PHP 球鞋在线商城系统mysql数据库web结构apache计算机软件工程网页wamp计算机毕业设计
  • 使用Apache和内网穿透实现私有服务公网远程访问——“cpolar内网穿透”
  • PreparedStatement
  • CSS3 新增属性-边框圆角-文字阴影-盒子阴影