Modeling¶
All base server development starts with modeling. All the changes you do to the model is reflected in your code by the code generation. The framework uses the model in order to manage the code and it is important that the model is correct.
The Entity model is the main type of model, used for modeling the business objects. The Enumeration model is used for keeping a list of values to be used for a certain attribute. The Utility model is used as a place holder for own written code, that can be used by several different entities. The Search Domain model is used in order to find a business object using free text search. Overview model is used to see the interactions between different entities.
Naming¶
It is important to select a good name for your model. The names for most kinds of models share a global namespace. Entities, utilities, enumerations, projections, and client models are examples of models that share the global namespace. Select a name that describes the purpose of the model well, and which is not too general. For example, avoid naming any kind of model "Part", because there are many different kinds of part concepts in the application. Instead, prefix the model name with the name of the domain in which the part is relevant. For example, EngineeringPart, InventoryPart, PurchasePart, etc. In general, if you are not sure if you need a domain prefix or not, it's better to add it than to not add it. Sometimes it can be hard to come up with a good prefix that is not too long or verbose. In those cases the component name can be used. For example, there is an entity in the GISINT component named GisintConnections. In the Work Order area there are a number of entities prefixed with "Jt" (short for for "Job and Task"), to make them more specific.