VCE Software Development - Example Exam Questions

To help with your exam preparation, have a look at the example question types below and see if you would be able to answer them.


Quicksort is much more efficient thn selection sort. It sorts the data into two halves, one with values above a pivot value and one with values below the pivot value. Then it repeats this process on each half. Selection sort looks through the unsorted values repeatedly finding the value that is lowest in the sort order each time and moving it to the front of the unsorted values. This is a much less efficient process than Quicksort.

Binary search is much more efficient than linear search but the data must already be sorted for it to work. Binary search divides the data in half each time discarding the half that does not contain the search term. Linear search uses a brute force approach by looking through every item in a list.

Functional requirements relate to the input required, output developed and functions of the solution.

Non functional requirements relate to characteristics of the system such as usability, reliability, portability, robustness and maintainability.

Use Case Diagrams are used at the Analysis stage to… Describe the interfaces between users and the information system (which includes the software) Assist in determining solution requirements

Data Flow Diagrams show how data in a system is sourced, processed, stored and used. Like UCDs they can be useful in determining solution requirements.

A context diagram is a simple version of a Data Flow Diagram that represents the system as a single process and shows the external entities that provide data to the system and use data from the system.

A Software Requirements Specification is a document that summarises the findings of the Analysis stage including the functional and non-functional requirements, the constraints and the scope.

Example Responses:

Evaluation criteria are created at the design stage so that we know how the success of the solution will be judged and can create designs that achieve this. The evaluation criteria are then needed to choose between different designs and determine which one should be developed.

Functional testing ensures that a solution is logically correct and behaves as expected (according to functional requirements. Whereas usability testing focuses on user experience and any issues that arise within the client’s use of the solution, i.e. can they use it easily?

The effectiveness of a project plan can be determined by assessing the project plan against the project’s scope and timeline (as opposed to the effectiveness of a project, which can be determined by assessing the project against the evaluation criteria developed in the design stage).

Testing involves checking if a solution is working as it was designed to (giving correct output, working fast enough, responding to user inputs properly). Evaluation how well the solution meets the requirements of the client as identified during the analysis stage.

Key Knowledge:

Example Responses:

Design evaluation criteria can be developed based on the functional and non functional criteria, such as using the design principles for non functional aspect. These help determine a preferred design by giving a somewhat objective method of selecting a design, reducing indecision or subjective evaluation.

Key Knowledge:

An evaluation strategy must indicate when the evaluation should occur (eg 3-6 months after implementation) and how they would go about the evaluation (interview, survey or direct observations).

Example Responses:

3-6 months after the implementation of the solution, they should conduct interviews with the users. This data could be used to determine to what extent the solution meets both the functional and non-functional requirements.

Internal documentation is the notes and comments written by a programmer within the code itself. It includes information about the program as a whole, as well as about each of the classes, functions, methods, objects, algorithms, etc. within it. It is often combined with meaningful, well-named variables to create manageable and effective code.

Internal documentation makes the code easier for other developers to understand and helps to reduce errors and make the code easier to correct and maintain.

Software auditing involves an independent person checking code for errors and performance requirements or other issues such as compliance with the security standards or legal requirements.

Key Knowledge:

A recommended backup strategy could include:

Example Responses:

The organisation should complete a full back up once a week, with incremental back ups daily. These back ups should be stored on an SSD (solid state Drive) and should be locked securely in the store's office. In addition, a copy of the backup should be located off-site. The store could use a wifi connection to store a copy of the back up in a cloud service in addition to the SSD onsite.

Key Knowledge:

* The Privacy Act 1988 applies to Federal government agencies and contractors and private businesses with an annual turnover over $3 million
* The Health Records Act 2001 Applies to organisations in Victoria dealing with health related information
* The Privacy and Data Protection Act 2014 applies to Victorian government agencies and contractors.

Key Knowledge:


Example Response:

For an event based threat: To protect the organization from this threat, the organisation could apply a data backup strategy across all its stores, who should be assigned to take weekly full backups and daily incremental backups, and stores this off-site on the cloud, this way a power surge will not lead to permanent customer transaction data loss since a copy of data is located off-site to be retrieved.

Version control keeps track of changes to the solution documents and code ensuring the current version is easily identified and preventing mix-ups where new additions are made to outdated files.

Version control also makes it is possible to ‘roll back’ to any previous point in the development if issues develop with the current version.