...
There is no difference between a “survey” and an “assessment” as far as the Bridge services model is concerned. How it is handled depends on the platform:
Researcher UI - “surveys” are local and “assessments” are shared
Mobile device - use the assessment identifier to query loaded frameworks and then fallback to decoding the JSON config using AssessmentModelKMM (surveys)
In the Researcher UI
“Survey Builder” = Local Assessments (app scoped)
“Assessment Library” = Shared Assessments (all apps) - visible to a given app using a hardcoded list of tags
Assessment Components
all assessments include
model object service https://developer.sagebridge.org/model-browser.html#Assessment
json config for every assessments. This is used by surveys to build and render specific to the assessment.
complex json schema URL = schema for assessmentResult.json
simplified json schema = schema for answers.json
individual exported archive
assessmentResult.json = with all data points collected, timing, processing path through client etc for one assessment
answers.json = summarized results (KVP) assessment summary
metadata.json = all the things
aggregated results summary csv file = aggregated answers and metadata for all participants in study
csv file generated using answers.json, simplified json schema, and metadata.json
Need: human-readable “assessment identifier” to include in the CSV file for surveys
The identifier
field was originally designed to be human-readable, but it is scoped to the app-id so for surveys, the work-around was to make the identifier a read-only random 5-letter code so it wouldn't conflict. The identifier
is also restricted as read-only once an assessment is created. Changing the identifier requires making a copy of the assessment.
Proposed fixes:
Add the
title
field to the CSVAdd a mapping file to the CSV archive with the information about each assessment
Add the JSON config for the assessment to each CSV archive (if not empty)
Copy the Assessment
title
andsummary
to the simplified generated schema as the “title” and “description” keys and then include that in the CSV archive.
Assessment Name + CSV
csv file study ID plus
Proposed fix:
CSV filename =studyID AND study name AND assessment ID and assessment name
Need: Redefine “publish” to mean “make the survey read-only”
...
The “publish” button in the Researcher UI needs to mark a survey as read-only somehow.
When transitioning a study from “design” to “recruitment”, any included local assessments would also need to be marked as “published” (if not already).
Proposed fixes:
Add a nullable
publishedDate
field to the Assessment model . If non-null then the given revision is read-only. Add a “published” tag
Need: Surveys need to be study and/or owner scoped rather than app id scoped
...
Rules for scoping a survey are as-yet undefined. TODO: discuss on Wednesday, Sept. 27
Proposed fixes:
...
Continue to use Orgs to scope what is visible based on organization with rights to see all surveys constrained to the organization.
If survey is in draft form it will be editable until a study is launched into recruitment.
When study is launched, the attached survey(s) will be published as well with a specific revision. The survey will be visible to copy for additional studies within the organization.