【发布时间】:2019-08-30 12:51:10
【问题描述】:
我正在模拟一个问题,其中有 学生 和 课程。 每门课程都有一些其他课程作为先决条件,我想对学生的“joinCourse()”操作进行 OCL 约束,以允许他们在完成必修课程时加入课程。
这是我制作的 uml 类图的草稿:
现在,我的问题是: 是否可以进行collection 操作,例如在finishedCourses 之类的“list 属性” 上进行“includeAll”?
我做了这个 ocl 约束:
context Student::joinCourse(c: Course)
pre: self.finishedCourses->includesAll(c.requiredCourses)
正确吗?
先谢谢了!
【问题讨论】:
-
不幸的是,您的“蓝图”(类图?)不可见,因为您问题中提供的网址需要注册。能不能换个方式分享一下?
-
我建议您使用 OCL 评估器,例如 Eclipse OCL Interactive Xtext OCL Console 来练习您的 OCL 评估。
标签: class collections uml software-design ocl