-
Notifications
You must be signed in to change notification settings - Fork 4
Constructing A Model
This is a brief introduction to the use of the '4D' theory on which the Magma Core code is based to model an apparently simple scenario. The scenario matches the example code so that there is a clear illustration of how the modelled objects relate to the things, in the 'real' world, that they represent.
The example is illustrated using space-time diagrams. These signify the distinct spatio-temporal existence of the 'real' world objects that need to represented as data. They are useful to show clearly what is being analysed, and subsequently modelled, and also to ensure that what is being recorded as data is meeting the needs of the information system that is holding the records. While it is outside the scope of this Wiki these diagrams are a useful place to start modelling and to work out what information is really required. For our example scenario we have a requirement to know when a particular person is at home (this could be as part of a smart energy management plan or as part of a new home delivery service*).
The first diagram shows the existence of two material things of interest that are relevant to our requirement; a particular house and a person who is an occupant of the house. They are materially separate but are associated with each other. The diagram, so far, just indicates a period of existence of these two 'real' objects. Importantly, for the period of interest, these two items both exist.
This next diagram shows how the association of a particular person being present 'in' the house can be represented. The state of the Person 'B' being associated with the state of the House 'B' when the person is 'in' the house is a temporal part of the whole-life of Person B (they are all present for the whole of their life, including the periods in which they are 'in' the house).
Now we have a basic pictorial representation of what is going on that is sufficient to construct a model of what is needed to create the records we need. The next step is to map each part of the diagram to the HQDM framework using the Magma Core data objects. The space-time diagram below is annotated with the data objects that are needed to completely capture the information in the diagram.
Instead of inspecting the diagram in detail it may be easier to continue to the next page and then return to the diagram after an introduction to the Magma Core code and its use.
Next: Code Introduction
* While hypothetical, these examples may also illustrate that while there may be good reasons to provide such data to other parties as part of an agreed service while expecting that these records are appropriately managed to agreed information management terms. The clarity provided by this modelling can provide grounding required for managing the data records relating the lifecycle of the participating 'real' world entities and the lifecycle of the information relating to them.