实体类 边界类 控制类

在ROSE建模里有一种划分类的方式“边界类”“实体类”“控制类”。

边界类:

边界对象的抽象,通常是用来完成参与者(用户、外部系统)与系统之间交互的对象,例如:From、对话框、菜单、接口等。

控制类:

控制对象的抽象,主要用来体现应用程序的执行逻辑,将其抽象出来,可以使变化不影响用户界面和数据库中的表。

实体类: 

实体对象的抽象,通常来自域模型(现实世界),用来描述具体的实体,通常映射到数据库表格与文件中。

分析模型实例:

类型:

边界类:

CommandWindow  负责接受用户输入的命令并向用户显示命令结果

控制类:

LightInductorControl  负责与“航标灯器”感应器通讯,获取航标灯器当前数据

RadarResponderInductorControl  负责与“雷达应答器”感应器通讯,获取雷达应答器当前数据

GPSDeviceControl  负责与“GPS定位设备”感应器通讯,获取当前位置

实体类:

LightState  负责存储航标灯器状态数据

RadarResponderState  负责存储雷达应答器状态数据

GPSState  负责GPS定位数据

设计模型实例:

将不同的Control抽象成一个工厂类,这样就可以根据用户输入的命令来创建相应的Control,同时有良好的扩展性,用JDBC来实现命令执行结果的存储。

用处:在RUP中,这三个版型用户帮助分析需求,起到帮助分析人员思考的作用,通过明确区分这三种分析类,有助于清楚地在分析模型中准确地描述需求。

我个人认为这种分法和我们之前了解的MVC相对应,MVC是一种架构模式,而这些类是这种架构的具体体现。

在ROSE建模里有一种划分类的方式“边界类”“实体类”“控制类”。

边界类:

边界对象的抽象,通常是用来完成参与者(用户、外部系统)与系统之间交互的对象,例如:From、对话框、菜单、接口等。

控制类:

控制对象的抽象,主要用来体现应用程序的执行逻辑,将其抽象出来,可以使变化不影响用户界面和数据库中的表。

实体类: 

实体对象的抽象,通常来自域模型(现实世界),用来描述具体的实体,通常映射到数据库表格与文件中。

分析模型实例:

类型:

边界类:

CommandWindow  负责接受用户输入的命令并向用户显示命令结果

控制类:

LightInductorControl  负责与“航标灯器”感应器通讯,获取航标灯器当前数据

RadarResponderInductorControl  负责与“雷达应答器”感应器通讯,获取雷达应答器当前数据

GPSDeviceControl  负责与“GPS定位设备”感应器通讯,获取当前位置

实体类:

LightState  负责存储航标灯器状态数据

RadarResponderState  负责存储雷达应答器状态数据

GPSState  负责GPS定位数据

设计模型实例:

将不同的Control抽象成一个工厂类,这样就可以根据用户输入的命令来创建相应的Control,同时有良好的扩展性,用JDBC来实现命令执行结果的存储。

用处:在RUP中,这三个版型用户帮助分析需求,起到帮助分析人员思考的作用,通过明确区分这三种分析类,有助于清楚地在分析模型中准确地描述需求。

我个人认为这种分法和我们之前了解的MVC相对应,MVC是一种架构模式,而这些类是这种架构的具体体现。

猜你喜欢

转载自blog.csdn.net/langshuibaren/article/details/126818642