Auto-Generated and Randomized Assessments for Non-coding Concepts
Auto-generated and Randomized Assessments (ARA) help our students learn and practice non-coding database concepts. Students receive a new variant every time they attempt an ARA problem. These assessments allow instructors to assess students' understanding of core concepts related to database, and reduce the time instructors spend on question development, allowing instructors to focus on other essential course aspects.
My course staff and I have developed ARA assessments for several database topics,, including Database Design Theory (Functional Dependencies and Normal Forms), Indexing (B+ tree and Linear Hash Tables), Transaction Management (Isolation Levels and Two-Phase Locking Protocols), and Query Optimization (Join Ordering, and Size Estimation). Here are some example assessments.
Assessments with Scratch Canvas
Database indexing is an essential topic that introduces students to data structures used by the Database Management Systems to speed up access to records stored in secondary-storage devices (i.e., hard disks). We cover two highly used indexing data structures: B+ Trees and Hash Tables (Linear Hash Tables). In the past, students had to manually draw these structures for homework and exam assessments. So, we decided to develop ARA with a scratch canvas that allow students to work on the problem without having to manually draw the data structures. Below, we show B+ tree and hash tables examples.
B+ Tree Example:
Hash Tables Example
Database Design Theory involve learning complex (non-deterministic), multi-staged algorithms for enhancing the design of a database. We developed several algorithms that generate a random problem and explore all its possible solutions. These algorithms allowed us to provide students with auto-generated and randomized assessments that can be configured to increase or decrease the problem difficulty.
Functional Dependencies: Attribute Closure
Functional Dependencies: Finding the set of candidate keys
Boyce-Codd Normal Form (BCNF) and Third Normal Form (3NF)
BCNF Example:
3NF Example:
Transaction Management: Isolation Levels
Transaction Management: Two-Phase Locking Protocols
Learning query processing and optimization require a understanding of how the database evaluates query execution plans and select the most optimal one. To help students learn these concepts, we designed assessments with randomized variants to allow students to practice several variants of a questions. Here are some examples.