What are question snapshots and why would I update them?

Every time an assessment is published, the question list used for that assessment is snapshotted. In other words, a point-in-time copy of the included question objects is made. Question objects include not only the question text, but all of the question attributes such as weight value, the possible answers along with their multipliers, and relationships between questions (such as parent-child relationships).

Why do we need to snapshot questions?

Questions are persistent objects that may be edited at any time. Without snapshotting, someone could edit a question to impact the meaning of the answers. For example, the least desirable answer could be evaluated as the best answer. This would cause the score for the question to be invalid. Someone could maliciously or erroneously manipulate the data of a running assessment. Snapshotting the questions protects the integrity of the assessment process.

What are the issues with snapshotting?

Because of snapshotting, when you edit the question tree, it doesn’t affect running assessments. This is a problem if there is actually a mistake with your question set. For example, perhaps you have a logical error where the child of a parent does not display under the correct conditions. Or there is a typo in the question itself. Without the ability to update question snapshots, you would not be able to fix this problem in the running assessment. You would have to manually cancel the running assessment, create a new assessment, and start over. This would undoubtedly create a lot of confusion, especially if large numbers of people are involved and need to be notified.

The Solution: Question Snapshot Updating

A new feature is being rolled out that allows a superuser to update the question snapshots on a running assessment. This will sync the questions in the assessment with any changes that have been made since the assessment was published. ALL changes to questions in the assessment will be sync’ed. Any changes to questions that are not part of the assessment will have no impact.

When you update question snapshots, all surveys included in the assessment that have already been finalized are automatically unlocked. All questions in all surveys are unlocked, whether they have actually changed or not. This is necessary because some of the changes that were made may have to do with question parent-child or category relationships, not only the questions themselves. Or changes might have been made to the answer response groups that were used in the questions.

For any questions that have already been answered, the saved answers will likely remain intact. However, someone with access to the survey will still need to log into Isora GRC and look at the questions and lock them again.

When you update question snapshots, all assessment managers involved in the assessment will be notified that they need to go and look at their surveys again. You may want to inform your users of what was changed and why. You can use the Update notification type to do this (see: https://saltycloud.atlassian.net/wiki/spaces/TES/pages/1275463904 )

Why Don’t Question Snapshots Automatically Update?

A superuser may edit question objects at any time. You might have an ongoing assessment with open surveys but need to make changes to questions that will be used in a future assessment. For example, laws may have changed and questions need to be updated, but you don’t want to create all new questions because managing large numbers of questions can become cumbersome.

If question snapshots were automatically updated, then it would be impossible to edit the question objects in Isora GRC without affecting running assessments. You would have to wait until all current assessments were completed before you could edit any questions that are used in them. The question snapshots updating feature gives superusers the flexibility to be able to edit questions and choose whether they want those changes to impact running assessments or not.


See also: https://saltycloud.atlassian.net/wiki/spaces/TES/pages/1901330441 https://saltycloud.atlassian.net/wiki/spaces/TES/pages/1275463904