领域分析:
· 将领域概念用专业术语进行建模
· 领域模型是对领域内的概念类或现实世界中对象的可视化表示。
领域模型:
· class diagram 类图 java
ClassName | Public class ClassName |
Attributes | Fields |
Behaviors | Methods |
可见性:+“public” -“private” #“protected”
类之间的关系relation:
依赖dependence:假设A类的变化引起了B类的变化,则说名B类依赖于A类
在UML中,依赖关系用带箭头的虚线表示,由依赖的一方指向被依赖的一方。
关联association:类之间的联系,如客户和订单,每个订单对应特定的客户,每个客户对应一些特定的订单,再如篮球队员与球队之间的关联(下图所示)。
1) 双向关联: 默认情况下,关联是双向的。
2 ) 单向关联:类的关联关系也可以是单向的,单向关联用带箭头的实线表示.
3) 自关联: 在系统中可能会存在一些类的属性对象类型为该类本身,这种特殊的关联关系称为自关联。
4) 重数性关联: 重数性关联关系又称为多重性关联关系(Multiplicity),表示一个类的对象与另一个类的对象连接的个数。在UML中多重性关系可以直接在关联直线上增加一个数字表示与之对应的另一个类的对象的个数。
表示方式 | 多重性说明 |
1..1 | 表示另一个类的一个对象只与一个该类对象有关系 |
0..* | 表示另一个类的一个对象与零个或多个该类对象有关系 |
1..* | 表示另一个类的一个对象与一个或多个该类对象有关系 |
0..1 | 表示另一个类的一个对象没有或只与一个该类对象有关系 |
m..n | 表示另一个类的一个对象与最少m、最多n个该类对象有关系 (m<=n) |
继承inheritance:描述父类与子类之间的关系,父类又称作基类或超类,子类又称作派生类
聚合aggression:表示的是整体和部分的关系,整体与部分可以分开.
在UML中,聚合关系用带空心菱形的直线表示。
Patron |
- tel_No: String - pwd: String
|
+ order Meal(payOption:int,delivery location:String,……):boolean
|
分析:
1.头脑风暴:通过用例做领域建模,按用例找名词n(域),动词v(关系)、num、has
,is-a
2.classfying分类
3.group 分组
4.draw CD 画类图
UC1 Order meals | Type |
Cafeteria Patron Company location PDS
Verified Delivered Picked up
|
C(CLASS) A(attribute)
V(value) AS(association)
|
Class Name | Fields | Super Class | Relevant Classes |
Patron |
| Employee | Order(patron 、meal) Pay(patron、meal order) |
Menu |
|
| Has-a(menu、food items) |
|
|
|
|
|
|
|
|