◆所有系统的存储数据需求必须说明为属性。 ◆出现在泛化-特化关系中的对象必须以与这 个泛化特化关系相一致的方式继承属性。 特化对象不能继承不是为该特化对象定义 的属性。所继承的属性必须在应用论城中 有意义。 ◆属性的定义必须是唯一的,且该定义不能 为其它属性共享 ◆每个属性应至少能被封装在该对象中的 个服务访问。其它对象中的服务不能访问 该对象中封装的任何属性。 ◆实例关系必须与应用论城的限制一致
◆所有系统的存储数据需求必须说明为属性。 ◆出现在泛化-特化关系中的对象必须以与这 个泛化-特化关系相一致的方式继承属性。 特化对象不能继承不是为该特化对象定义 的属性。所继承的属性必须在应用论域中 有意义。 ◆属性的定义必须是唯一的,且该定义不能 为其它属性共享。 ◆每个属性应至少能被封装在该对象中的一 个服务访问。其它对象中的服务不能访问 该对象中封装的任何属性。 ◆实例关系必须与应用论域的限制一致
◆参与实例连接关系的对象的属性必须与这 种关系相一致。 ◆所有基本的实例关系都必须出现在OOA模 型中。 风格约定:OOA模型中应当只出现基本的实 例关系。冗余的实例关系应当避免。 语法需求:类可能含有只应用于该类的属性。 这种属性的应用应前后一致,而且能够应用 于该类的所有实例
◆参与实例连接关系的对象的属性必须与这 种关系相一致。 ◆所有基本的实例关系都必须出现在OOA模 型中。 ❖风格约定:OOA模型中应当只出现基本的实 例关系。冗余的实例关系应当避免。 ❖语法需求:类可能含有只应用于该类的属性。 这种属性的应用应前后一致,而且能够应用 于该类的所有实例
服务层 命名约定:服务的命名必须合适。能代表 些与对象有关联的工作、功能或处理。服务 名在相关的对象中应是唯一的。服务名在应 用论域中必须有实际意义,不应用来表示实 现技术。通常名字应采用动词名词形式的 词组,避免使用其它结构。名字中不应出现 “与”和“或”之类的连接词。 令语法需求 每个对象都至少应当有一个类服务,还至 少应当有一个实例服务,从而能够访问 个或多个相关联的属性
服务层 ❖命名约定:服务的命名必须合适。能代表一 些与对象有关联的工作、功能或处理。服务 名在相关的对象中应是唯一的。服务名在应 用论域中必须有实际意义,不应用来表示实 现技术。通常名字应采用动词-名词形式的 词组,避免使用其它结构。名字中不应出现 “与”和“或”之类的连接词。 ❖语法需求: ◆每个对象都至少应当有一个类服务,还至 少应当有一个实例服务,从而能够访问一 个或多个相关联的属性
◆服务的定义必须与输入输出的消息,以及 封装在对象中的属性相一致。 ◆没有封装在对象中的属性,服务是访问不 到的。 风格约定 ◆服务应当精心设计,服务应当 亲只有单一的入口点; ※不涉及并发处理; 崇产生一个或一系列的输出; ※通过接收一个消息或其它精心定义的事件 (如时间触发器)来对其进行初始化 癥使用简短的过程性描述来说明,这种描述 与实现语言无关
◆服务的定义必须与输入输出的消息,以及 封装在对象中的属性相一致。 ◆没有封装在对象中的属性,服务是访问不 到的。 风格约定: ◆服务应当精心设计,服务应当 只有单一的入口点; 不涉及并发处理; 产生一个或一系列的输出; 通过接收一个消息或其它精心定义的事件 (如时间触发器)来对其进行初始化; 使用简短的过程性描述来说明,这种描述 与实现语言无关
※语法需求: ◆参与到泛化特化关系中的对象继承服务时, 必须与该泛化特化关系相一致。特化对象 不能继承不是为该特化对象定义的服务。 ◆参与到实例关系中的对象的服务必须与它 们的实例关系相一致。 ◆服务应当在对象的实例中应用。而服务在 类属类的实例关系中时,该类属类的每 个子类型都必须由这个服务定义。 ◆消息传递属性,这些属性必须与产生和接 收消息的服务相一致,即服务的所有输入、 输出都必须与该服务的规格说明相一致
语法需求: ◆参与到泛化-特化关系中的对象继承服务时, 必须与该泛化-特化关系相一致。特化对象 不能继承不是为该特化对象定义的服务。 ◆参与到实例关系中的对象的服务必须与它 们的实例关系相一致。 ◆服务应当在对象的实例中应用。而服务在 类属类的实例关系中时,该类属类的每一 个子类型都必须由这个服务定义。 ◆消息传递属性,这些属性必须与产生和接 收消息的服务相一致,即服务的所有输入、 输出都必须与该服务的规格说明相一致