8.2.3 识别类之间的关系-案例研究
之前通过识别及审查类和属性,得到了如图8-112的类图。可以看到,经过前面的步骤,类图上已经有了所有要维护的关联关系,我们要做的仅仅是加上关联的细节。另外,没有泛化关系。
图8-112 识别及审查类和属性后得到的类图
加上关联细节后的类图如图8-113所示。
图8-113 加上关联细节后的类图
8.3 工具操作
【步骤1】展开“分析”包下的“实体类”包,双击“实体类”类图。单击工具箱中的,单击类图空白处,在弹出属性框中的“General”页签的左上角栏(即类名称)输入“公开课”。
图8-114 添加类
【步骤2】单击“Details”页签,单击“Attributes”按钮,在“Name”栏输入“开始日期”,“Type”栏输入“DateTime”。
图8-115 添加属性
【步骤3】单击 “开始日期”下面一格,用【步骤2】相同的操作添加以下属性
属性名
类型
结束日期
DateTime
费用
String
报名交费信息
String
添加完毕后,单击“Close”,单击“确定”。
图8-116 继续添加属性
【步骤4】同步骤1到步骤3的操作,继续添加类和属性,布局如图8-117。
图8-117 继续添加类和属性
【步骤5】右击类图空白处,从快捷菜单选择“Properties”,在“Features”页签的“Show Attribute Detail”栏,选择“Name Only”,单击“确定”。
图8-118 只显示属性名,不显示属性类型
【步骤6】在类图上选中“公开课”类,拖住快捷键头拉到“课程”类上,从快捷菜单选择“Association”。双击刚增加的关联,在关联属性框“General”页签的左上角一栏(即Name栏)输入“举办”,在“Role(s)”页签,设置“公开课”一侧的“Multiplicity”为“*”,“Access”为“private”,设置“课程”一侧的“Multiplicity”为“1”,“Access”为“private”。单击“确定”。
图8-119 设置关联的细节
【步骤7】右击关联线上的“举办”标签,在快捷菜单中选择“Direction|To Source”。
图8-120 设置关联的标签方向
【步骤8】同步骤6的操作,建立“联系人”和“城市”之间的关联。在关联属性框的“Role(s)”页签,设置“联系人”一侧的“Multiplicity”为“*”,“Access”为“private”,设置“城市”一侧的“Multiplicity”为“1”,“Access”为“private”,“Role”为“当前所在城市”。单击“确定”。
图8-121 设置关联的角色
【步骤9】同上操作,继续建立其他关联,结果如图8-122所示。
图8-122 继续添加其他关联
[1] 《软件方法》第六章已讨论过开发人员话语中“技术”一词的狭隘。
[2]当然,可以以Office为开发工具做二次开发,但此时使用的系统已经不是Office而是核心域的应用系统。
[3] ( a、b、c都大于时肯定成立)
[4] C#有一种实现套路是直接写Property,后文再评述这样的实现。
[5]有人提出一种改进的脑补方法——结对脑补,美其名曰“结对编程”。