【问题标题】:Designing the Quiz module for an LMS为 LMS 设计测验模块
【发布时间】:2017-09-27 10:46:33
【问题描述】:

不确定这个问题是属于这个网站还是属于其他一些问题(如果不是,请指出正确的问题)。

我正在尝试为 LMS 类型的系统设计测验模块。本题与数据库设计有关。

我目前的设计:

数据库

1) 问题:多项选择 [id, question_text]

2) 答案:以上问题的可能选项[question_id, answer_text, correct?]

3) 测验:测验由问题组成。它们还与各种主题相关。某些测验类似于阅读理解(一个段落,然后是一组问题),其他只是带有问题的简单测验[id, questions, description, topic]

4) 主题:测验所属的主题。目前每个测验只属于一个主题。 [id, topic_name]

5) 测验响应:它们存储 quiz_id、问题响应、收到的分数和所用时间。 [id, quiz_id, user_id, correct, time_taken]

应用逻辑

1) 测验、问答是存储信息的通用结构

2) 要显示测验,我们获取问题集,查看其关联标签并运行基于标签的显示逻辑(所有与阅读理解相关的测验等显示测验描述,其中包含段落,然后问题;其他测验只显示问题和答案)

问题

1) 这是设计应用程序的正确方法吗?或者有没有更好的方法我能想到(将测验分成各种类型的子表等)

2) 我想为网站添加书签。用户将问题添加为书签,然后可以在单个屏幕上查看这些问题。这里的问题是与 RC 测验相关的问题也应该获取测验段落以供显示。在这种情况下,最好的方法是什么?

我能想到的选项

将段落详细信息放入单独的表格中,并将其 ID 存储在测验和相关问题中。这里的问题是浪费了空间(因为只有一小部分问题是 RC)。

专门为 RC 重新创建上述表格集(测验、问题)。大量重复:/

任何有此主题的经验或知道像moodle这样的组织如何处理这些情况的人?

【问题讨论】:

    标签: database-design architecture moodle application-design


    【解决方案1】:

    我想你想要这样的东西:

    注意QUESTIONs 被组织成QUESTION_GROUPs。对于阅读理解问题,问题组可以记录问题所适用的阅读细节。对于某些测验,可能只有一个问题组,而对于其他测验,可能有很多。

    【讨论】:

    • 但是对于阅读理解问题的书签,我需要段落文本。您是否建议保持从问题到问题组的反向映射(因为问题引用了他们所在的组)?
    • @sudshekhar - 是的,这在数据模型中是隐含的。它被称为外键。这是关系数据库的基础。
    猜你喜欢
    • 1970-01-01
    • 2017-05-15
    • 1970-01-01
    • 2015-04-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多