Question Planning#

Once you have your question (see Guide for Writers on how to write a good question) you can then begin to build your Numbas question.

This is a brief guide to help get you started. For more detailed instructions see the links in the navigation panel on the left.

Populate the “Statement” section#

Populate the “Statement” section with the numbers as given in the original problem (one set of numbers).

Add the values of any constants that are needed in the calculations. (e.g., the acceleration due to gravity (on Earth, unless you are going to enact the problem in, say, a Mars scenario), \(9.81\) m/s \(^2\).

Draft the “Prompt”#

Draft the “Prompt” for each part of the problem via Parts/Prompt. (The parts will automatically be labelled a., b., c. by the system and can be reordered by dragging.)

Unless a unit is sought, state the unit in which the answer should be calculated.

Where relevant, state the number of decimal places or significant figures to which the answer should be expressed. (Note that more parts might need to be added as the detail of the solution to the problem is developed.)

Go to the “Variables” section#

Assign a specific descriptive name to each quantity that you identify as a variable. For example:

  • D2 or D_2 for \(D_2\) (a diameter)

  • W_dot_electric for \(\dot{W}_{electric}\)

  • eta_motor_fraction for \(\eta_{motor}\), motor efficiency.

Adhere as closely as possible to (hopefully) standard symbols used in the particular discipline.

Don’t worry about quantities that are constants (or that are likely to remain so in future modifications of the problem).

Define the quantity in the Description field. For data variables that are given in the Statement, temporarily put their numerical values in the Value field.

Create variables that are to be calculated. In the Value field, give their formula in terms of variables that have already been defined.

Where you are going to give part marks for certain steps in a problem, create variables for those intermediate answers.

Check that the Generated Value of the calculated variables match the answers provided in the model solution (so that you can have some confidence that you have set up the calculated variables correctly).

Return to the “Statement” section#

Return to the Statement and replace the numerical values of the original data variables with their variable names.

Answers and Marking#

Copy the formula in the Value field for a Variable that is an answer to a question part.

Go to Parts/Marking settings and paste that formula against the ‘Minimum accepted value’ and ‘Maximum accepted value’ fields.

If required, select from ‘Precision restriction’, either ‘decimal places’ or ‘significant figures’. Then enter the number of decimal places or significant figures required.

In this testing phase, leave the default settings in place for ‘Show correct answer on reveal? And ‘Show score feedback icon?’

Consider setting ‘Partial credit for wrong precision’ to a value of greater than 0% if you invoked any precision restrictions.

Draft the “Advice”#

Draft a potentially long step-by-step explanation of how to arrive at the final answers. (Pretend you are explaining to a child or a grandma as this can expose steps of logic you might otherwise take for granted).

Divide the explanation to align with the key parts you have created. Might more parts, or parts of those parts be needed, for which you might ultimately apportion small portions of credit?

Add this draft to the Advice section.

Then refine the draft so that formulae are represented correctly, and their values display correctly (using \(\LaTeX\) code as appropriate).

Return to the “Variables” section#

For the data variables, replace the numerical value with a range together with the increment by which the value can increase and perhaps any values that must be avoided). In industrial settings, this should reflect the real world, e.g., by what sizes do the internal diameters of steel pipes increase?

Click on ‘Regenerate variables’ repeatedly and observe whether any values are generated that do not have real world relevance, e.g., efficiency values greater than 100%, or negative values for something that can only be positive.

Where there is an obvious ‘fix’ for ‘silly’ results, it may be possible to add a condition in the ‘Variable testing’ section in the ‘Condition to satisfy’ section.

Diagrams and Visuals#

Some questions can benefit from a diagram in the Statement section. If these are to reflect the data variables, the diagram will need to be created in .SVG format with any variables matching the names in the Variables section and enclosed in braces.