本文和大家重点讨论一下UML类图建模技术的概念,主要包括对简单协作建模,对逻辑数据库模式建模,正向工程和逆向工程等几部分内容,相信通过过本文的学习你对UML类图建模技术一定会有深刻的认识。
UML类图建模技术
一、对简单协作建模
类不是单独存在的,而是要与其他类协同工作。协作是动态交互在静态视图上的映射,协作的静态结构通过类图来描述。
对协作进行UML类图建模要遵循如下策略
1、识别要建模的机制。一个机制描述了正在建模的部分系统的一些功能和行为,这些功能和行为是由类、接口和一些其他元素的相互作用产生的。
2、对每种机制,识别参与协作的类、接口和其他协作,并识别这些事物之间的关系。
3、用协作的脚本检测事物,通过这种方法可以发现模型中被遗漏的部分和有明显语义错误的部分。
4、把元素和它们的内容聚合在一起。对于类,首先平衡好职责,随着时间的推移,将它们转换成具有的属性和操作。
二、对逻辑数据库模式建模
通用的逻辑数据库建模工具是“实体-关系(E-R)”图,传统的E-R图只针对数据,而UML的类图还允许对行为建模。在物理数据库中,类图一般要把逻辑操作转化成触发器或存储过程。
对模式进行UML类图建模建模要遵循如下策略:
1、在模型中识别的类,其状态必须超过其应用系统的生命周期。
2、创建包含这些类的类图,并把它们标记为永久(persistent)。对于特定的数据库细节,可以定义自己的标记值集合。
3、展开这些类的结构性细节,即详细描述属性的细节,并注重于关联和构造类的基数。
4、观察系统中的公共模式(如循环关联、一对一关联和n元关联),它们常常造成物理数据库设计的复杂化。
5、考虑这些类的行为,扩展对数据库存储和数据完整性来说重要的操作。一般情况下,与对象集的操作相关的业务规则应该被封装在永久类的上一层。
三、UML类图建模中的正向工程和逆向工程
1、正向工程(ForwardEngineering)
正向工程是通过实现语言的映射把模型转换为代码的过程。由于UML中描述的模型在语义上比当前的任何面向对象语言要丰富,所以正向工程会导致一定信息的损失,这也是需要模型的原因。
对类图进行正向工程,要遵循如下的策略
(1)、识别映射到所选择的实现语言的规则
(2)、根据所选择的语言的语义,可能会限定一些对UML特性的使用
(3)、用标记值详细描述目标语言,若需要精确的控制,该操作可以在单个类的层次上进行,也可以在较高的层次(如协作或包)上进行
(4)、使用工具对模型进行正向工程
2、逆向工程(ReverseEngineering)
UML类图建模中逆向工程是通过从特定实现语言的映射,把代码转换为模型的过程。逆向工程会导致大量的冗余信息同时逆向工程又是不完整的。
对类图进行逆向工程,要遵循如下的策略
(1)、识别从实现语言或所选的语言进行映射的规则
(2)、使用工具,指向要进行逆向工程的代码,用工具生成新的模型或修改以前进行正向工程时已有的模型。
(3)、使用工具,通过查询模型创建类图。
【编辑推荐】