缩略语
如果我们针对同一类型采用相同的描述方法和变量(如果需要,可以用x1、x2… …),阅读模型就会更容易。
类型 变量
Copy(拷贝) c
Duration(期限) d
Fine(罚金) f
Member(会员) m
Notice(通知) n
Payment(支付) p
Rental(出租) r
Reservation(预订) v
Title(标题) t
VideoStore(录像店) vs
类型模型
接下来,类型模型并非在核心建模开始就进行。许多细节是在其它模型建立过程中出现的,如状态模型、不变性和操作说明。
在此,有些实例有助于说明模型为什么会是这样。
当一盘录像带返还并且有该录像带的预订,这个拷贝就会保留,然后通知预订该录像带的会员,告诉他可以租想要的录像带。因为我们只是为核心建模,所以如何给会员发通知超出了我们的研究范畴。在核心模型中,我们建立一个“通知”对象,留给其它领域考察核心并进行实现,比如,打印一封信。
有许多联想可以帮助我们谈论录像带拷贝保留以及针对预订出租。回忆一下出现在模型中事物的规范,实际项目中的人来确定这些事物。例如,如果我们的客户提到为特定的预订保留录像带,我们必须认真地考虑如何建模。我们必须仔细区分是针对每一个拷贝还是针对同一影片的一组拷贝进行预约保留。第一种情况(每一个拷贝进行预约保留)在没有计算机的情况下容易管理,(也就是说,将每个拷贝编个号,并且说明谁持有它即可)。第二种情况(同一影片的所有拷贝可以进行预约保留)需要计算机支持,拷贝可以放在按标题顺序的保留区中,计算机可以确定一个会员是否可以租借该影片的一个拷贝。