00.软件工程之starUML绘制用例图,活动图,类图,顺序图,状态图,类图正向工程与逆向工程

00.starUML下载

链接:https://pan.baidu.com/s/1BoZ_mj_qnk7ZMSz8NqSPYw?pwd=ojtv 
提取码:ojtv 

starUML无需安装直接使用,内有教学视频

Ctrl+G:消去网格
一.创建工程与保存

(1)创建工程

(2)点击保存(CTRL+S),保存到指定位置

(3)解释四类视图

 <1>用例视图:use case view

        表明系统做什么

<2>逻辑视图:logical view 

        用于描述系统如何实现用例

        使用范围:类图,顺序图

<3>组件视图:componentview

        用来描述组件与组件之间的关系,一个组件就是一个物理的编码模块

<4>部署视图:deployment view

        用来显示系统中软件和硬件的物理架构,描述软件在硬件中的部署情况


二.第一类之用例图

2.1创建用例图

2.2常用器件

 2.3解释 泛化,关联,包含,扩展

(1)包含<<include>>

        调用A就一定调用B

        举例: (注册)---<<include>>--->(输入账号密码)

(2)扩展<<extends>>

        调用A不一定调用B,但是调用B一定调用A

        举例:(登录)<---<<extends>>---(忘记密码)

注意:箭头的反向

(3)泛化

        就是继承,详情看java/C++课

(4)关联

        不是上述的就是这个

举例:注册登录用例图

 三.第一类之活动图

3.1建立活动图

3.2使用活动图的技巧 

 综上:活动图就是用例图的详细解释,用例图就是活动图的具体体现


四.第二类之类图

4.1创建类图 注意:右键logical view,与后面顺序图区别

注意:会就写具体,不会就直接横线.

实例:

int queryTotal(Map<String, Object> map);修改成可以复制粘贴到类图里面的样子

queryTotal(Map<String, Object>):int   这样就可以复制


五.第二类之顺序图

5.1创建顺序图

5.2完善顺序图

(1)user case view下创建包

 (2)包上创建特定的类

插入:注意 

         此时应该打开 UML Standard Profile(v2)

 打开此就可以选择<<entity>><<boundary>><<control>>

 (3)拖动各种类图到顺序图即可

 (3)健全顺序图


六.状态图,类图正向工程与逆向工程

### 如何使用 PlantUML 绘制协作 PlantUML 支持多种 UML 表的绘制,其中包括协作(也称为通信)。这种表主要用于描述对象之间交互的过程。下面是一个简单的例子来说明如何创建一个协作。 #### 创建基础协作 为了定义参者及其相互作用的消息传递过程,在 PlantUML 中可以通过 `participant` 关键字指定参的对象,并利用箭头指向目标对象以及附带的消息标签完成消息发送的操作[^2]。 ```plantuml @startuml participant "First Object" as A participant "Second Object" as B A -> B : messageName() @enduml ``` 此代码片段展示了两个对象间的简单交流:第一个对象向第二个对象发送了一个名为 `messageName()` 的消息。 #### 添加更多细节到协作 当涉及到更加复杂的场景时,可以在协作中加入更多的元素,如条件判断、循环调用等逻辑结构。此外还可以设置激活期以显示特定时间段内某对象处于活动状态。 ```plantuml @startuml participant User participant AuthenticationService participant Database User -> AuthenticationService : login(username, password) activate AuthenticationService AuthenticationService -> Database : verifyCredentials(username, password) activate Database Database --> AuthenticationService : result deactivate Database alt successful authentication AuthenticationService --> User : success else failed authentication AuthenticationService --> User : failure(reason) end deactivate AuthenticationService @enduml ``` 这段脚本不仅描绘了用户登录过程中各组件间的信息交换情况,而且还包含了成功失败两种不同路径下的响应行为。 #### 使用分组增强可读性 对于大型项目中的复杂交互模式,适当运用分组可以帮助提高形表达清晰度。通过 `group` 或者 `opt/loop/par/crit` 等关键字实现这一点。 ```plantuml @startuml participant Client participant Server Client -> Server : request() group Processing Request loop multiple times Server -> Server : processChunk(data) end end Server --> Client : response() @enduml ``` 上述示例中,“Processing Request”部分被包裹在一个单独区域内,强调其作为一个整体的功能单元;内部存在多次自我调用模拟数据处理环节。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值