1, 用例图设计

三个元素:角色 用例 描述

-------------------------1.如何发现角色(重点)

*使用软件的人是谁?(如本例的茶茶)

*谁管理系统(例如国防生管理的后台管理员)

*软件要控制哪些硬件,或者要调用哪些外部程序(如dll)

-------------------------2.发现用例(用例就是需求分析,细化的功能)

*角色需要从软件获取哪些功能

*角色需要读取或保存存储器中的某些信息吗?

------------------------- 3.描述(用例图是方便团队(一般4人团队)随时查阅的,所以描述不可以含糊)

*必需说明外部引发者(由哪个角色引发)

*必需详细描述用例的具体流程

*必需带有结束

2.类图元素

主要的5个:

Class

Abstract Class

Interface

继承

关联

含义介绍:

类----------实体对象

关联(关联的意义就是[使某个类拥有它应该拥有的资源])-------- A 关联了 B,就是说A拥有了B,[茶] 关联了 [套套]

就是说 茶 这个类 包含了 套套,茶可以随时使用,也可不使用套套的功能

用例图设计实例(UML)_UML

Public Class 车子

Public Property 轮子() As 轮子

Get

End Get

Set(ByVal value As 轮子)

End Set

End Property

End Class

车子有轮子了,有这个属性了。

继承-----------

Public Class 汽车

Inherits 车子

End Class

接口-----------

接口是一个规范

它里面只有说明,没有实现的代码

Public Class 车子

Implements 启动方法

Private whll As 轮子

Public Property 轮子() As 轮子

Get

Return whll

End Get

Set(ByVal value As 轮子)

End Set

End Property

Public Sub 启动() Implements 启动方法.启动

End Sub

End Class

用例图设计实例(UML)_设计_02

 

老板给【我】下达了制作 车子类的任务并规定了接口 I启动方法

于是我实现了车子类,并写出了启动方法,继承了接口

鸟人你,要做的的任务是【写怎么开车的程序】

于是需要我给你一个DLL

所以不能给你.而你为了测试你的代码正常了没,你就可以自己 实现同样的接口去测试

到正式合并项目时,只要把你的实现代码的dll换成我的,就完成了

一次测试:

视图-其他窗口—对象测试台

Public Sub 启动() Implements 启动方法.启动

'MsgBox("启动啦")

MessageBox.Show("启动啦")

End Sub

右键点 汽车类 -> 创建实例

调用它:

用例图设计实例(UML)_实例_03

Public Class 马车

Inherits 车子

Public Property 缰绳() As Integer

Get

End Get

Set(ByVal value As Integer)

End Set

End Property

Public Overloads Sub 启动()

MsgBox("快跑啊")

End Sub

Public Sub 用马拉()

End Sub

End Class

设计模式(UML的应用就是为设计模式服务)

Facade 外观模式 向外部提供一个【外观】,这个外观相当于多个类合起来提供出的一个接口

Composite 完成模式 描述一个或者多个对象集,可以调用一组公共方法

一个项目中可能应用各种 各样的设计模式,最终制作 出一个

既易用(因为对外部封装了接口 Facade)

又容易维护和重用 (内部细分了功能块)