Software Design and Development 2017 HSC exam pack (archive)
2017 Software Design and Development HSC exam paper
Marking guidelines
Marking guidelines are developed with the exam paper and are used by markers to guide their marking of a student's response. The table shows the criteria with each mark or mark range.
Sample answers may also be developed and included in the guidelines to make sure questions assess a student's knowledge and skills, and guide the Supervisor of Marking on the expected nature and scope of a student's response. They are not intended to be exemplary or even complete answers or responses.
Marking feedback
Select from the sections below to view feedback from HSC markers about how students performed in this year’s exam.
Use the feedback to guide preparation for future exams. Feedback includes an overview of the qualities of better responses. Feedback may not be provided for every question.
Feedback on written exam
Students should:
- resist rewriting the question
- be familiar with all parts of the syllabus
- be familiar with the HSC Software and Course Specifications document
- refer to the scenario if one is given in the question
- only answer questions on ONE option, which should be the one studied at school
- be familiar with the structure of standard algorithms and be able to produce one given a scenario
- be able to interpret and use all the symbols used in metalanguages
- ensure that they use pseudocode key words correctly
- clearly label answers written in extra writing booklets
- use terminology correctly
- use a table to perform a desk check
- be familiar with the details of each step in the fetch-execute cycle
- complete a desk check of algorithms to check for errors, particularly those relating to boundary values
- use appropriate terminology to describe the processing required in a system modelling diagram such as a data flow diagram or IPO chart
- refer to an array of records correctly, for example, Cartlist(CartIndex).NoRequired = Amount.
Students should expect:
- questions to be of varying difficulty
- to write an algorithm with a complex data type (such as array, record, array of records)
- to be given a range of scenarios
- to apply their knowledge in different ways.
Students can prepare for this examination by:
- using past HSC papers and their marking guidelines to practise responses
- referring to published sample answers to HSC exam questions
- writing a range of algorithms that contain arrays, records and arrays of records
- knowing the common errors that can occur when writing algorithms with loops
- preparing desk checks to identify and detect errors in algorithms
- designing context diagrams and data flow diagrams for systems they use every day.
Question 21
In better responses, students were able to:
- provide some detail about the contents of the test report.
Question 22
In better responses, students were able to:
- outline the purpose and describe characteristics of storyboards and screen designs to illustrate similarities and/or differences.
Question 23(a)
In better responses, students were able to:
- recognise that phased development lowers the burden on staff learning a new system because it occurs over time.
Question 23(b)
In better responses, students were able to:
- describe a benefit of system modelling tools with reference to the given scenario.
Question 23(c)
In better responses, students were able to:
- differentiate between management and development techniques and apply these techniques to the given scenario.
Question 24
In better responses, students were able to:
- provide examples of CASE tools.
Question 25
In better responses, students were able to:
- demonstrate knowledge of several programming paradigms
- describe situations in which a particular paradigm is more suitable than another.
Question 26
In better responses, students were able to:
- recognise that indenting and spacing improve maintenance
- demonstrate an understanding of the use of constants in code and how they make maintenance easier.
Question 27
In better responses, students were able to:
- indicate how both developers and users are affected, rather than describing how cloud computing works
- distinguish between users and developers.
Question 28(a)
In better responses, students were able to:
- identify that a desk check relates to the changing values of variables throughout the execution of a program
- present their desk check in a table using variable names as column headings
- indicate the point at which execution loops.
Question 28(b)
In better responses, students were able to:
- identify the two errors and write the correct algorithm in their response.
Question 28(c)
In better responses, students were able to:
- refer to the given scenario when explaining linear or binary searches.
Question 29
In better responses, students were able to:
- construct a context diagram with three external entities, a single process and data flows.
Question 30
In better responses, students were able to:
- identify the steps of the fetch-execute cycle and recognise that it refers to the CPU processing instructions
- use appropriate terminology such as ‘program counter’, ‘instruction register’, ‘accumulator’, ‘arithmetic logic unit’ and ‘control unit’.
Question 31
In better responses, students were able to:
- sequence the statements in the loop correctly and produce some syntactically correct ROBO statements
- avoid the use of EBNF symbols such as { } in the ROBO code.
Question 32
In better responses, students were able to:
- present sound logical expressions in order to determine divisibility
- use paired key words, for example ‘WHILE’ and ‘ENDWHILE’
- read data until a sentinel value was reached using a priming read and WHILE loop.
Question 33(a)
In better responses, students were able to:
- identify the responsibilities of the developer.
Question 33(b)(i)
In better responses, students were able to:
- produce a correctly formatted IPO chart with detail in the processing column and showing relationships between inputs, processes and outputs.
Question 33(b)(ii)
In better responses, students were able to:
- provide algorithms that addressed the main features of the purchase module
- use suitable control structures, with correct indentation and uppercase pseudocode keywords
- use specific assignment statements to populate elements of the Cartlist array.
In better responses, students were able to:
- demonstrate familiarity with specific terminology relating to the option topics
- apply their knowledge to the given scenarios.
Question 34(a)
In better responses, students were able to:
- outline in general terms the meaning of ‘polymorphism’.
Question 34(b)(i)
In better responses, students were able to:
- provide examples of private and public attributes from the code.
Question 34(b)(ii)
In better responses, students were able to:
- assign values to attributes from the ‘Dog’ subclass.
Question 34(b)(iii)
In better responses, students were able to:
- use the given code as a guide to the syntax required to extend the code to create a class and provide an attribute
- produce a partially correct calculation for the discount.
Question 34(c)
In better responses, students were able to:
- outline in general terms the different parts of the software that the logic and object oriented paradigms could be used for.
Question 34(d)(i)
In better responses, students were able to:
- make use of some of the given facts to extract information about Alice and Gemma and their relationship to other members of their families.
Question 34(d)(ii)
In better responses, students were able to:
- use the given code as a guide to the syntax required to create a rule and provide a correct second_cousin rule.
Question 35(a)
In better responses, students were able to:
- make links between the way arithmetic operations occur in the CPU and the need for a suitable binary representation to do it
- explain that subtraction is the same as adding a negative number and that this is how computers carry out subtraction
- clearly demonstrate how 2’s complement assists in arithmetic operations of negative numbers and how it is superior to other methods of representing negative numbers such as the sign and modulus method.
Question 35(b)
In better responses, students were able to:
- describe the purpose of the exponent and mantissa in a floating point number and recognise that higher numbers can be reached with a greater exponent
- make links between the effect of changes to the exponent and mantissa and the values that are being stored.
Question 35(c)(i)
In better responses, students were able to:
- create a suitable truth table for the given circuit including all the possible sets of inputs.
Question 35(c)(ii)
In better responses, students were able to:
- state how the inputs for an OR gate relate to the output and recognise when an overall carry is required
- recognise that ‘Carry in’ is also an input and that the Sum and Carry Out are essential parts of the table
- relate the purpose of an OR gate to the information given in the question, for example by referring to the carry of each half adder.
Question 35(d)
In better responses, students were able to:
- link the features of the flip-flop circuit to its purpose
- relate how the components of this circuit contribute to its operation rather than explaining how this circuit can be part of a larger circuit (such as a shift register)
- relate the loop structure to the bistable nature of the circuit and specify that the latch needs to be deliberately set or reset
- use correct terminology such as ‘stores a bit’ rather than ‘stores a value’.
Question 35(e)
In better responses, students were able to:
- use the correct circuit symbols for logic gates
- prove the circuit is correct by providing a truth table matching it to the logic presented in the question.
Question 35(f)
In better responses, students were able to:
- describe the general structure of data streams and provide typical contents of the header, body and trailer
- recognise that image data will require more space, time or length than simple coordinates
- deal with features of the data streams in this context, rather than focusing on the features of the hardware
- provide an explanation for the differences in the data streams, rather than just listing differences.
HSC exam resources
Search for more HSC standards materials and exam packs.
Software Engineering syllabus
Find out more about the Software Engineering syllabus.
Request accessible format of this publication.