UML软件工程组织

数据模型:找到最合适的设计(2)
2001-03-31· ·QQ新人类 ··yesky

 

属性

  在你确定一个实体后,你将可以使用术语或者通过它的属性来描述它。一个属性可以是表示一个实体发生事件的识别、限制、数量、分类的状态,或者一种关系。属性是一些特别需要了解或者保持的信息。

  一个属性可以是必要的或者可选的。在必要的时候,我们必须得到它的一个值,这个值必须为每个实体产生时了解。在可选的时候,它未必会有值。例如,植物的一些属性有:种类、入库的日期、是否开花,还有罐的大小。种类对于每种植物都是必需的。罐的大小则是可选的,因为一些植物并不装在罐中,而淋水的一些属性是:淋水的日期、水量和水的问题,对于每次淋水来说,日期和时间是必需的。水的温度是可选的,因为我们无需在每次淋水前测定水的温度。

  由属性我们可以知道它们提供的信息。在分析时,参与者应该列出尽可能多的属性。然后他们就可以清除那些对应用没用或者客户不关心的属性。参与者还要确定实体有哪些属性,以及哪些属性是必要的,哪些是可选的。

  可唯一定义实体产生的属性被称为主键(primary keys)。如果没有这样的属性,就必需为此定义一个新的属性,例如一个ID号码或者编码。

关系

  在定义出两个或者更多的实体以及它们的属性后,参与者就必须决定在两个实体之间是否存在着一种关系。关系是指业务中感兴趣实体之间任何的联合、联接或者连接。它是实体之间或者一个实体和自身之间双向的、重要的联系。每个关系都应该有一个名字、一个可选性(可选或者是强制)和一个程度(多少)。一个关系可使用现有的术语来描述。

  在一个应用中,每个实体之间都有关系是很少见的。如果只有两个或者三个实体,那么它们之间可能都存在着关系。但在一个大的应用中,通常一个实体和其它所有的实体都有关系是不常见的。

  为关系指定一个名字、可选性和程度有助于确定该关系的有效性。如果你不能为一个关系找出这些东西,很可能它们之间就没有任何关系。例如,在植物和淋水之间存在一个关系。每棵植物可能得到一次或者更多的淋水,而每次淋水必定是对于一棵植物而言。

实体关系的图表

  为了可视化地记下实体和他们之间的关系,可画出一个实体关系图(an entity relationship diagram,简称为ERD)。一个ERD是实体和它们之间关系的图示化表示。它可令参与者很容易地看出应用的信息结构。以后项目组就可以使用ERD来设计数据库和表。懂得如何读一个ERD是很重要的。如果有任何的错误或者少了一些关系,该应用的开发都会失败。



版权所有:UML软件工程组织