Every component name consists of the following:

  1. Entity name;
  2. Entity functionality;
  3. Component type;
  4. Optional subtype.

1. Entity Name

Indicates the entity that the particular component is related to. Names of the entities are being conformed in such a way to be the same in the design document, the project and the code.

Naming examples:

2. Entity Functionality

Shows what part of entity behavior is being described by the component. If the component describes the entity in the whole, then "Overall" word is used. Generally, entity functionality denotes the action, but some exceptions are possible when it is necessary to clarify the described part of a big entity (e.g. MenuMainController), or to demonstrate the relation between two entities in the component name (e.g. CharacterVehicleController).

Examples: