SDT September 2015 Marking Scheme Final

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 5

Unit:

Software Development Techniques


Assignment title:
Random Numbers
September 2015

Marking Scheme
Markers are advised that, unless a task specifies that an answer be provided in a
particular form, then an answer that is correct (factually or in practical terms) must be
given the available marks. If there is doubt as to the correctness of an answer, the relevant
NCC Education materials should be the first authority.

This marking scheme has been prepared as a guide only to markers and there will
frequently be many alternative responses which will provide a valid answer.

Each candidate’s script must be fully annotated with the marker’s comments (where
applicable) and the marks allocated for each part of the tasks.

Throughout the marking, please credit any valid alternative point.

Where markers award half marks in any part of a task, they should ensure that the
total mark recorded for the task is rounded up to a whole mark.

Marker's comments:

Moderator's comments:

Mark: Moderated mark: Final mark:

Penalties applied for academic malpractice:


Task Guide Maximum
Marks
1 The Algorithms

The program algorithms should make effective use of all the tools
students have available - at a bare minimum, it should involve
functions, loops, selections and either array or string manipulation. It
is not necessary for this section of the assignment that the program
does what is required - all that is required is that the structured
outlined below are properly implemented in pseudocode. The 25
marks for this section are broken down as follows:

Making appropriate use of variables


All variables should be properly typed (4 marks), and scope should 5
be honoured within their functions (1 mark)

Making appropriate use of selection


Selection should be used in every situation where it is appropriate (3 5
marks), and the format of that selection must match the format as
discussed within the module (2 marks)

Making appropriate use of iteration

Iteration should be used in every situation where it is appropriate (3 5


marks), and the format of that iteration must match the format as
discussed within the module (2 marks)

Making appropriate use of function


The program must be suitably modular - in the most basic example 5
of this, the main program should be broken away from the actual
algorithm itself (2 marks). Another 3 marks are available if further
modularisation occurs, such as having separate functions for data
validation, and separate functions for different steps in the calculation
process with a view to which parts could potentially be reused in
other programs.

Making appropriate use of strings or arrays 5


Each of the generated numbers should be stored in a distribution
array (2 marks), with a function that outputs the distribution at the
end (1 mark). This should be done in a loop that generates
approximately 1000 entries (2 marks). 25

2 Providing a Correctly Working Program

The marks for this deliverable are based on the program actually
meeting the requirements of the brief, regardless of how those
requirements are met. This will be based in large part on the desk-
checks that students provide - they should prove to you that their
programs work, you are not required to prove it for them. The 25
marks for this part of the assignment are broken down as follows:

Page 2 of 5
Software Development Techniques © NCC Education Limited 2015
Task Guide Maximum
Marks
Handles User Input and output

The program should allow for fact (1 mark) and cost (1 mark), mod (1 5
mark) and seed (1 mark) values to be provided using appropriate
data types (1 mark).

Program functionality
The program must meet the following functionality requirements:

 Correctly implement the random number generation as


outlined (5 marks) 5
 Generate 1000 random numbers within the specified range 5
marks) 5
 Generate a distribution array of the generated random
numbers (5 marks) 5
 Provide an overview of how often each of the numbers was
generated, as a percentage (5 marks) 5

25
3 Testing Data

Testing data should be sufficient to provide suitable coverage of all


equivalence classes, and should use black box and white box testing
to explore each function. The 25 marks allocated to this section of
the coursework is broken down as follows:

Identifying suitable equivalence cases


Award 1 mark for each equivalence case they find - these should 5
include at least some of the following (as well as any other valid
examples students come up with): random numbers with negative
seeds (1 mark), random numbers that are too large to represent (1
mark), seeds that contain alphabetic characters (1 mark), and the
same checks for the mod, const and fact variables (2 marks).

Identifying suitable boundary conditions


Award one mark for each boundary condition they find. The main
boundary conditions they should deal with are the boundaries 5
between valid and invalid numbers. They should cluster tests around
these boundaries. They should cluster tests around this, so award a
further two marks (up to the maximum of five) for them clustering test
cases around the condition.

Justifying the selection of testing data


Award one mark for each individual condition they have correctly 5
justified up to a maximum of 5 marks. Justifications should state why
the test case was chosen.

Page 3 of 5
Software Development Techniques © NCC Education Limited 2015
Task Guide Maximum
Marks
Choosing test cases appropriate for black box testing
Award the full five marks for a set of testing data that permits for all 5
combinations of equivalence and boundary conditions to be tested
(as outlined above)

Choosing test cases appropriate for white box testing


Award the full five marks for a set of testing data that permits for all
paths of execution through their program to be tested (this will be 5
highly dependent on the algorithms they provide). 25

4 Desk Checking

The desk checks that students provide should support your marking
of deliverable two, but the format of the desk-checks themselves is
also under examination regardless of whether they support the case
for a working program. The 25 marks for this deliverable then are
broken down as follows:

Providing appropriately formatted desk-checks 5


The desk-checks that they provide should be in the format as
outlined during the module. Award one mark for each correctly
formatted desk-check, up to the maximum of five.

Having a desk check for each black box test in deliverable three
10
Award two marks for each desk-check they produce that matches up
to their black-box testing cases in deliverable three, up to a
maximum of 10 marks.

Having a desk check for each white box test in deliverable three

Award two marks for each desk-check they produce that matches up
to their white-box testing cases in deliverable three, up to a 10
maximum of 10 marks.
25
Total: 100 Marks

Page 4 of 5
Software Development Techniques © NCC Education Limited 2015
Learning Outcomes matrix

Task Learning Outcomes Marker can differentiate


assessed between varying levels of
achievement
1 1, 2, 3, 4, 5, 7 Yes
2 1, 2, 3, 4, 5, 7 Yes
3 2, 6 Yes
4 2, 5, 6 Yes

Grade descriptors

Learning Pass Merit Distinction


Outcome
Identify and Provide adequate Provide detailed and Provide comprehensive,
explain the key ability to explain the coherent explanation lucid explanation of the
stages of subject matter of the subject matter subject matter
software
development
lifecycles
Express, design Demonstrate ability Demonstrate ability Demonstrate ability to
and evaluate to perform the task to perform the task perform the task to the
algorithms consistently well highest standard
Identify and use Demonstrate ability Demonstrate ability Demonstrate ability to
programming to perform the task to perform the task perform the task to the
language consistently well highest standard
constructs
Identify and use Demonstrate ability Demonstrate ability Demonstrate ability to
common data to perform the task to perform the task perform the task to the
structures consistently well highest standard
Explain and use Demonstrate Demonstrate Demonstrate
common adequate ability to detailed and comprehensive, lucid
algorithms explain the subject coherent explanation explanation of the
matter; of the subject matter; subject matter;
Demonstrate Demonstrate Demonstrate highly
adequate and appropriate and appropriate and
appropriate use effective use effective use
Explain and use Demonstrate Demonstrate Demonstrate
test strategies adequate ability to detailed and comprehensive, lucid
explain the subject coherent explanation explanation of the
matter; of the subject matter; subject matter;
Demonstrate Demonstrate Demonstrate highly
adequate and appropriate and appropriate and
appropriate use effective use effective use
Explain how Provide adequate Provide detailed and Provide comprehensive,
software is ability to explain the coherent explanation lucid explanation of the
modularised subject matter of the subject matter subject matter

Page 5 of 5
Software Development Techniques © NCC Education Limited 2015

You might also like