背景:航空公司为了确保飞行路线不发生冲突,需要开发一款飞行路线管理软件。
过程:我们先去找这个领域的专家,自然是作为平时管理和维护机场飞行秩序的工作人员;我们第一个目标就是与他们沟通,也许我们并不能从中获取所有想要的知识,但至少可以筛选出主要的内容和元素。你可能会听到诸如“起飞”,“着陆”,“飞行冲突”,“延误”等领域名词。
建模:我们开始建模,从一个简单的模型示例开始:
起点
->飞机
->终点
这个模型很直接,我们可以继续优化,起点
和终点
两个领域名词都是某个具体的地点
。
优化后的模型:
飞机
-> 地点
(含起点
和终点
)
飞机
飞行的起点
和终点
成对出现,起点
和终点
构成一条飞行路线。
继续优化模型:
飞机
->路线
->地点
(含起点
和终点
)
这样我们就得到3个基本的领域对象:飞机
路线
地点
。
我们可以看出领域建模就是通过与领域专家沟通,从中提炼必要的领域元素,不断优化领域模型,建立领域知识的过程。