Formal Object Oriented Specification Using Object-Z door Gordon Rose & Roger Duke