Under the prevailing rules, policies and requirements, the analyst uses a process of analysis based abstraction to identify groups of similar entities with similar characteristics and behaviour (such as the many Hot Water Tanks, Bank Accounts or Pipe Paths). These become classes in the Class Diagram being built at M1 (Class Models) if using xUML. In the same way, relationships are also classified and are documented as Associations of the Class Diagram.
The analyst concentrates solely on building Class Models at M1 and does not particularly seek to create anything at M0. There is simply no need, unless enumerating the Real World instances helps in the analysis. Later, when the system is built and working it will manipulate instances at M0 as part of its operation and impact in the Real World, though not necessary the same things that were originally analysed.
Metamodels at M2 are not usually of much concern to analysts. Instead, Software Architects, Model Compiler Writers and Tool Developers create models at M2 to specify how code generation is to be performed.
|