参数化转换规则的对象模型

时间:2012-01-18 01:11:30

标签: design-patterns uml object-model

我早些时候问了一个类似的问题,但是把它作为一个特定于语言的问题。我意识到我的问题是在建模层面。

我应该如何在对象模型中表示以下内容:

我有:

  • 数据对象
  • 参数对象
  • 规则对象

规则指定如何修改它接收的数据对象;它需要完全定义其他参数。规则可以使用其他规则(在内部引用它们,或者在参数对象中被告知这样做)。

规则不是用某人需要解析的自定义语言编写的;相反,它只是由应该执行的代码组成。这可能听起来像是设计之前的实现解决方案,但它实际上是需求之一(系统用户是希望能够编写自己的规则并将其轻松添加到系统中的程序员)。

当数据对象,参数对象和规则对象相遇时,会发生主要活动;那时,数据对象会被修改。

用户告诉系统他想要满足哪个规则,哪个参数和哪个数据对象,并期望获得修改后的数据对象。

更新:

数据对象示例:

所有数据对象都可以逻辑表示为SQL表。

数据对象ID#7:SQL表

数据对象ID#13:SQL表

参数对象示例:

所有参数对象都具有相同的布局:文本文件,其中每一行看起来像

  

<PARAMETER_NAME> = <VALUE>

参数对象ID#52:

  

RULE ='回归'

     

DATA ID = 7

     

Y ='费用'

     

X ='最高速度'

     

R ='成本估算错误'

参数对象#59:

  

RULE ='average'

     

DATA ID = 13

     

COLUMNS ='最低速度','最高速度'

     

AVERAGE ='平均速度'

规则对象的示例:

规则对象'回归':

执行线性回归;名为'Y'和'X'的参数指定要用作依赖变量和独立变量的列名;名为“R”的参数指定要添加到包含回归残差的表的列名。

规则对象'平均':

计算参数'COLUMNS'中列出的列中指定的数字的平均值,并将结果存储在参数'AVERAGE'中指定的列中。

1 个答案:

答案 0 :(得分:1)

将它们定义为UML构造型。为您的三种元类型创建元类。 DataObject,ParameteObject和RulesObject。将特定详细信息添加到元类,然后将该元类的构造型应用于模型中的实际项目对象。