Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-71516

Create new plugin type - Qbank

    XMLWordPrintable

    Details

    • Type: New Feature
    • Status: Waiting for integration review
    • Priority: Minor
    • Resolution: Unresolved
    • Affects Version/s: 4.0
    • Fix Version/s: 4.0
    • Component/s: Questions, Quiz
    • Testing Instructions:
      Hide

      Preparation: Install the code branch form this tracker and run the upgrade.

      Qbank plugin type

      • Login into the Moodle site as an administrator
      • Navigate to:  Site administration > Plugins > Plugins overview
      • Confirm:
        • That the “Question banks” plugin section appears
        • That there are no installed Question bank plugins
        • See screenshot: Question bank plugin types.png
      • Navigate to: Site administration > Plugins
      • Confirm:
        • That the “Question banks” plugin section appears
        • See screenshot: Question bank plugin menu.png
      • Navigate to:  Site administration > Plugins > Question banks > Manage question banks
      • Confirm
        • That the: Manage question banks page appears
        • That there are no installed Question bank plugins
        • See screenshot: Question bank installed plugins.png

      Some test plugins are added in the attachments.

      Quiz and Question bank operation

      As this patch provides the scaffolding for new qban_* plugins the existing quiz and question bank functionality should remain unchanged.

      Testing should involve running through all testing scenarios relating to adding questions to a quiz, but at a minimum:

      • Create a new quiz activity in a Moodle course with default settings
      • Edit the quiz to add questions
      • Add a new question of any type to the quiz
      • Choose the default course question bank for the question
      • Fill out the required details for the question.
      • Confirm the question is added to the quiz
      • Create a second quiz activity in the course
      • Edit the quiz to add questions
      • Add a question from a question bank
      • Choose the question that was created for the first quiz
      • Confirm the question is added to the quiz

       

      Show
      Preparation: Install the code branch form this tracker and run the upgrade. Qbank plugin type Login into the Moodle site as an administrator Navigate to:  Site administration > Plugins > Plugins overview Confirm: That the “Question banks” plugin section appears That there are no installed Question bank plugins See screenshot: Question bank plugin types.png Navigate to: Site administration > Plugins Confirm: That the “Question banks” plugin section appears See screenshot: Question bank plugin menu.png Navigate to:  Site administration > Plugins > Question banks > Manage question banks Confirm That the: Manage question banks page appears That there are no installed Question bank plugins See screenshot: Question bank installed plugins.png Some test plugins are added in the attachments. Quiz and Question bank operation As this patch provides the scaffolding for new qban_* plugins the existing quiz and question bank functionality should remain unchanged. Testing should involve running through all testing scenarios relating to adding questions to a quiz, but at a minimum: Create a new quiz activity in a Moodle course with default settings Edit the quiz to add questions Add a new question of any type to the quiz Choose the default course question bank for the question Fill out the required details for the question. Confirm the question is added to the quiz Create a second quiz activity in the course Edit the quiz to add questions Add a question from a question bank Choose the question that was created for the first quiz Confirm the question is added to the quiz  
    • Affected Branches:
      MOODLE_400_STABLE
    • Fixed Branches:
      MOODLE_400_STABLE
    • Pull Master Branch:
      master_MDL-71516-qbank

      Description

      Currently all Question bank features are "hard coded" in Moodle core and are not very extensible.

      This issue will introduce a new "Question bank" plugin type, with the `qbank_` prefix. It will also refactor core code to allow provide a straightforward interface to create plugins that provide question bank functionality. This means contributors can make their own qbank_* plugins to introduce new question bank functionality.

      NOTE: Existing question bank features will not be replaced by this tracker, and will still continue to function.  Each individual qbank_* plugin tracker issue will both introduce an existing core feature as a plugin and replace the current core functionality. This is so core Moodle wont be "broken" be the refactoring.

       

      Functionality qbank_* can plugins implement with this change:

      • Ability to define “action” items for questions. E.g. import/export, copy, delete, tag
      • Ability to define their own column/s to the question overview table. E.g. view author, last modified time.
      • Ability to add their own tabs to the question bank view
      • Ability define a navigation node if required
      • Ability to override or create new nodes and implement your own from the plugin or create a new one

       

        Attachments

        1. deletequestion.zip
          9 kB
        2. exporttoxml.zip
          9 kB
        3. importquestions.zip
          10 kB
        4. Question bank installed plugins.png
          Question bank installed plugins.png
          33 kB
        5. Question bank plugin menu.png
          Question bank plugin menu.png
          32 kB
        6. Question bank plugin types.png
          Question bank plugin types.png
          10 kB
        7. viewquestionname.zip
          9 kB

          Issue Links

            Activity

              People

              Assignee:
              safats Safat Shahin
              Reporter:
              safats Safat Shahin
              Peer reviewer:
              Tim Hunt Tim Hunt
              Participants:
              Component watchers:
              Tim Hunt, Andrew Lyons, Dongsheng Cai, Huong Nguyen, Jun Pataleta, Michael Hawkins, Shamim Rezaie, Simey Lameze, Tim Hunt, Andrew Lyons, Dongsheng Cai, Huong Nguyen, Jun Pataleta, Michael Hawkins, Shamim Rezaie, Simey Lameze
              Votes:
              0 Vote for this issue
              Watchers:
              11 Start watching this issue

                Dates

                Created:
                Updated:
                Fix Release Date:
                8/Nov/21