The term is closely coupled with object-oriented programming. Programming means that we are talking about the compile-time or design-time stage of the program. Objects are instantiated at run-time using reference types. The term model refers rather to the design time. Finally, I am not sure if it is design time or run-time term. I would appreciate any help.