Restructure Eval Rel-links and Test Bank Questions to be More in Synch
Description of development task:
In order to ensure uniqueness and accuracy in the MTTL, it's necessary to perform some cleanup & synchronization between the MTTL eval rel-links and the Test Bank question files.
Rational:
- As of today, the MTTL uses the question name as a unique identifier to the Test Bank question files but this attribute isn't guaranteed to be unique; there are currently 7 question names with duplicate ObjectIds.
- The MTTL is storing disabled, provisioned, attempts, passes, and failures attributes that really belong to the Test Bank.
- The language attribute within the MTTL Eval Rel-links seem to have gotten mixed up with the version attribute in the Test Bank. Additionally, this attribute really belongs to the Test Bank rather than the MTTL.
Tasks:
- Restructure the Test Bank question files to use an attribute, that is the same as the
_idgenerated within the MTTL for its corresponding Rel-link metadata; perhaps calledrel-link_ID. This Id could be used as the question's_idor a completely separate_idcould be used (thinking ahead to a mongoDB implementation for the Test Bank). - Add a
question_pathattribute to the MTTL Eval Rel-links that contains the relative path to the question, from the Test Bank repository's root directory. This would be just the directory names up to the question's *.json file. - Ensure the disabled, provisioned, attempts, passes, and failures attributes are retained in the Test Bank question files and remove these attributes from MTTL Eval Rel-links.
- Remove the
languageattribute from MTTL Eval Rel-links and add it to the Test Bank question files but update the language information to reflect the programming language being used instead of the version. - Ensure the
versionattribute in the Test Bank reflects the programming language version in use.
Acceptance Criteria:
-
The Test Bank question files contain an attribute that stores the corresponding MTTL Eval Rel-link _id. -
The MTTL Eval Rel-link data contain a question_pathattribute that stores the relative path to the question's *.json file, from its Test Bank repository's root directory. -
The disabled, provisioned, attempts, passes, and failures attributes are removed from MTTL Eval Rel-links and retained in Test Bank question files. -
The languageattribute is removed from MTTL Eval Rel-links and added to Test Bank question files with the correct language used for the question. Work-roles not using a language wouldn't have this attribute. -
The versionattribute in the Test Bank reflects the correct version for the question's language. Work-roles not using a version wouldn't have this attribute.