Regardless of our individual technical contexts, I am currently thinking about the general workflow of data entry.
Since all our data entries are technically realized via "Event Sourcing", each individual entry can be traced (who entered which data and when?). In addition, I had planned right from the start to use this technical procedure to "undo" or "reject" entries, because we will use some kind of verification process to keep the quality of our data high. Now the time has come to elaborate this general idea in detail.
What exactly can happen?
A relatively simple case could be when someone adds a single detail to an existing record (e.g. the first release year of a video game system). The user then makes no further entries. Within our review process, this change will be reviewed by an "expert" to assess whether the information is correct and whether the data entered should really remain in the system. If the data should be "deleted" again for any reason, the last event in the chain of all entries could technically be deleted and the publicly viewable data would then be updated. So far, so good.
But what if someone makes several entries directly one after the other and the data of one or more later steps depend existentially on the entries of the previous steps? It might then not be possible to simply remove one or more of the "middle" inputs from the chain of all unchecked inputs. This is because the subsequent events might not be "imported" without errors to update the public data.
Unfortunately, this discussion is currently somewhat theoretical, as we have not yet worked out many concrete input processes. But we should already think about it now, because how we want to tackle such problems is quite central for all technical areas.
But perhaps we should look at the whole issue from a different angle, namely from a technical point of view, i.e. abstracted from technology. Questions that arise here: Is it really absolutely necessary for a user to enter several data consecutively? Or is it legitimate that he has to wait for an activation after each data entry? Assuming that the answers to these two questions are "Yes" and "No", one should think about the fact that there must be two different views of all data: a view that contains all entered data and a view that contains only the unlocked data. Is that what we need?
Who makes a proposal for our input process? Any thought is welcome!
Since all our data entries are technically realized via "Event Sourcing", each individual entry can be traced (who entered which data and when?). In addition, I had planned right from the start to use this technical procedure to "undo" or "reject" entries, because we will use some kind of verification process to keep the quality of our data high. Now the time has come to elaborate this general idea in detail.
What exactly can happen?
A relatively simple case could be when someone adds a single detail to an existing record (e.g. the first release year of a video game system). The user then makes no further entries. Within our review process, this change will be reviewed by an "expert" to assess whether the information is correct and whether the data entered should really remain in the system. If the data should be "deleted" again for any reason, the last event in the chain of all entries could technically be deleted and the publicly viewable data would then be updated. So far, so good.
But what if someone makes several entries directly one after the other and the data of one or more later steps depend existentially on the entries of the previous steps? It might then not be possible to simply remove one or more of the "middle" inputs from the chain of all unchecked inputs. This is because the subsequent events might not be "imported" without errors to update the public data.
Unfortunately, this discussion is currently somewhat theoretical, as we have not yet worked out many concrete input processes. But we should already think about it now, because how we want to tackle such problems is quite central for all technical areas.
But perhaps we should look at the whole issue from a different angle, namely from a technical point of view, i.e. abstracted from technology. Questions that arise here: Is it really absolutely necessary for a user to enter several data consecutively? Or is it legitimate that he has to wait for an activation after each data entry? Assuming that the answers to these two questions are "Yes" and "No", one should think about the fact that there must be two different views of all data: a view that contains all entered data and a view that contains only the unlocked data. Is that what we need?
Who makes a proposal for our input process? Any thought is welcome!