## Multi-choice
##### Question 1
#ValidationTechniques #Typechecking #U3-AOS1
Type checking is a validation technique that ensures that the
**A.** data entered falls within a certain range.
**B.** required field has data entered and is not empty or blank.
**C.** data entered has a minimum number of characters.
D. data entered is of a particular data type
|| Answer: D - 91%||
##### Question 2
#UsabilityTesting #U4-AOS1
Testing the usability of software solutions takes place in which stage of the problem-solving methodology?
**A.** analysis
**B.** design
**C.** development
**D.** evaluation
||Answer: C 46% ||
##### Use for Q3 and Q4
| 77 | 29 | 92 | 13 | 95 | 3 | 49 | 82 |
| --- | --- | --- | --- | --- | --- | --- | --- |
##### Question 3
#selectionSort #sorting #U3-AOS1
After the first pass of a selection sort algorithm, the contents of the array will be:
A. |3|13|29|49|77|82|92|95|
B. |3|13|92|29|95|77|49|82|
C. |3|29|92|13|95|77|49|82|
D. |29|13|3|49|77|92|95|82|
|| Answer: C - 64% ||
##### Question 4
#pseudocode #U3-AOS1
Which of the following sets of pseudocode could successfully swap the positions of the first two values in the array?
A.
```
temp <- variable 1
variable 1 <- variable 2
varible 2 <- temo
```
B.
```
variable 2 <- variable 1
variable 1 <- variable 2
```
C.
```
anarray[1] <- anarray[0]
anarray[0] <- anarray[1]
```
D.
```
temp <- anarray[0]
anarray[0] <- anarray[1]
anarray[1] <- temp
```
|| Answer: D - 65% ||
##### Question 5
#scope #srs #U3-AOS2
A factor that would relate to the scope of a new software solution would be
**A.** adding an Al chatbot to the help menu.
**B.** using software modules to allow for easier updates.
**C.** including both Apple and Microsoft operating systems.
**D.** increasing the budget to employ two more programmers.
||Answer: A - 38% ||
Solution scope describes the boundaries or parameters of the solution and identifies what will be and/or what will not be addressed by the solution. Portability (the operating systems that a solution will run on) is a non-functional requirement.
##### Question 6
#searching #binarySearch #U3-AOS1
How many iterations does the binary search algorithm need to find the value 9 in the array of integers below?
| 3 | 7 | 9 | 13 | 15 | 16 | 29 | 29 | 100 | 124 | 203 |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
**A.** 4
**B.** 3
**C.** 2
**D.** 1
||Answer: C - 58% ||
##### Question 7
#dataSecurity #U4-AOS2
Protection against data loss for an organisation can be best provided by
**A.** offsite backups.
**B.** user authentication.
**C.** asymmetrical encryption.
**D.** two-factor authentication.
||Answer: A - 91%||
##### Question 8
#organisationalGoalObjectives #U3-AOS2
What is a key consideration of organisations when developing software?
**A.** enhancing code readability
**B.** improving user authentication
**C.** streamlining software updates through automation
**D.** meeting the goals and objectives of the organisation
||Answer: D - 87 ||
##### Question 9
#gantt #projectplan #U3-AOS2
The initial stages of a project plan are shown in the diagram below.
![[Pasted image 20251120145846.png]]
Task 3 is delayed by two days. Assuming no other adjustments are made, which one of the following statements is true?
**A.** Both Task 5 and Task 7 finish as originally planned.
**B.** Both Task 5 and Task 7 finish later than originally planned.
**C.** Task 5 finishes as planned, but Task 7 finishes later than originally planned.
**D.** Task 5 finishes later than originally planned, but Task 7 still finishes as planned.
||Answer: B - 76%||
#### Question 10
#namingConventions #U3-AOS1
Task 3 is delayed by two days. Assuming no other adjustments are made, which one of the following statements is true?
**A.** Both Task 5 and Task 7 finish as originally planned.
**B.** Both Task 5 and Task 7 finish later than originally planned.
**C.** Task 5 finishes as planned, but Task 7 finishes later than originally planned.
**D.** Task 5 finishes later than originally planned, but Task 7 still finishes as planned.
||Answer: A - 61% ||
##### Question 11
#SRS #U3-AOS2
A local swimming school is planning to develop software to automatically pair students with teachers at the appropriate swimming level, and to create a timetable based on the availability of students, teachers and lanes of the pool. Which feature of the software requirements specification is the **most** relevant for determining which lane of the pool will be used for a lesson?
**A.** the technical constraints
**B.** the functional requirements
**C.** the assumptions of the solution
**D.** the non-functional requirements
||Answer: B - 76%||
##### Question 12
#dataCollection #efficientAndEffective #U3-AOS2
A software developer is identifying needs and requirements for an update to an application used by the police to check vehicle registration details. The developer believes that a good starting place is to analyse the existing application.
Which of the following data collection techniques would determine the efficiency of the existing application?
**A.** surveying police members about ways to make the updated application run more quickly
**B.** observing the number of errors police members make when using the existing application
**C.** reviewing the system logs printed as reports to determine the time taken for each check
**D.** interviewing police members to determine if they think updating their passwords every three months is too frequent
|| Answer: C- 70%||
##### Question 13
#manageFiles #U3-AOS2
Which of the following is **not** a technique to manage files effectively?
**A.** using version control
**B.** saving on a USB drive
**C.** using naming conventions
**D.** maintaining regular backups
||Answer: B - 61%||
##### Question 14
#pseudocode #U3-AOS1
What is the expected output from the following pseudocode?
```
Begin
x <- 1
y <- 1
While x < 5
x <- x + y
y <- x + y
End While
Print y
End
```
**A.** 5
**B.** 6
**C.** 7
**D.** 8
||Answer: D - 73% ||
##### Question 15
#Threats #U4-AOS2
A defining characteristic of a man-in-the-middle attack is
**A.** exploiting software vulnerabilities.
**B.** alteration of web application data.
**C.** unauthorised access to databases.
**D.** intercepting communication between two parties.
||Answer: D - 95% ||
##### Question 16
#RiskManagement #U4-AOS2
A technique that would **not** form part of a risk management strategy during software development is
**A.** a software audit.
**B.** secure coding training.
**C.** an internal documentation review.
**D.** a third-party software compliance check.
||Answer: C - 70%||
##### Question 17
#RiskManagement #U4-AOS2
In a security strategy, what is an effective technique for managing risks associated with third-party software?
**A.** ignoring software updates provided by third-party vendors
**B.** allowing third-party software to run with administrative privileges
**C.** using third-party software without reviewing its source or provider
**D.** conducting thorough security audits of third-party software before integration
||Answer: D - 96%||
##### Question 18
#efficientAndEffective #U3-AOS2
A criterion for evaluating the effectiveness of software development security strategies could be
**A.** assurance of data integrity.
**B.** meeting organisational goals.
**C.** compliance with legal constraints.
**D.** enhancing the attractiveness of the design.
||Answer: A - 55%||
##### Question 19
#efficientAndEffective #U3-AOS2
During an e-commerce checkout operation, the process of validating a credit card typically takes about five seconds. Which of the following statements is most likely to be true?
**A.** The process is not efficient because of the timeliness of the inputs.
**B.** The process is effective because the validation performed is correct.
**C.** The process is not effective because the validation operation is not clear.
D. The process is efficient because a slower process is likely to be cheaper
||Answer: B - 64%||
##### Question 20
#pseudocode #U3-AOS1
A development team for a holiday booking company is calculating discounts that will be provided to customers based on their purchase history. Customers who spent $1000 to $4999 will receive a
5% discount, customers who spent $5000 to $9999 will receive a 10% discount, and customers who spent $10000 or more will receive a 15% discount.
```
Begin
Input arrPurchases
Total <- 0
Discount <- 0%
For i <- 0 to arrPurchases.Length - 1
Total <- Total + arrPurchases[i]
End for
//line 8
Discount <- 5%
If Total >= 5000 Then
Discount <- 10%
If Total >= 1000 Then
Discount <- 15%
End If
End If
End If
End
```
The pseudocode that should appear on line 8 is
A. If Total > 1000 Then
B. If Total >= 1000 Then
C. If Total > 1000 AND Total < 5000 Then
D. If Total >= 1000 AND Total < 5000 Then
||Answer: B - 42%||
## Short Answer
#### Question 1 (3 marks)
#dataTypes #U3-AOS1
A Year 7 level coordinator is organising a function to be attended by students, parents and grandparents.
The coordinator is in the process of developing a data dictionary and needs to determine the data types for three variables.
From the list of data types provided, choose the best one for each of the variables in the table below. The following data types **may** be used more than once.
• integer
• Boolean
• string
| **Variable** | **Data type** | **Description** |
| ------------ | ------------- | ---------------------------------- |
| Var1 | | last name of student |
| Var2 | | number of family members attending |
| Var3 | | Paid - Yes or No |
##### Answer
| **Marks** | **0** | **1** | **2** | **3** | **Average** |
| --------- | ----- | ----- | ----- | ----- | ----------- |
| % | 1 | 1 | 5 | 93 | 2.9 |
| Variable | Data type | Description |
| -------- | --------- | ---------------------------------- |
| Var 1 | string | last name of student |
| Var 2 | integer | number of family members attending |
| Var 3 | Boolean | Paid – Yes or No |
Some students incorrectly chose string for Var 2 and Var 3, which was not appropriate, as Var 2 was a whole number and Var 3 was Yes/No.
#### Question 2 (2 Marks)
#updatesSoftware #U4-AOS2
Hanni is working in a team for a software development organisation.
One of her responsibilities is to provide regular software updates to customers using the organisation's software.
State two advantages of providing regular software updates to customers.
**a.** Advantage 1 1 mark
**b.** Advantage 2 1 mark
##### Answer
Question 2a.
| **Marks** | **0** | **1** | **Average** |
| --------- | ----- | ----- | ----------- |
| % | 33 | 67 | 0.7 |
Question 2b.
| **Marks** | **0** | **1** | **Average** |
| --------- | ----- | ----- | ----------- |
| % | 47 | 53 | 0.6 |
Most marks were awarded for the following advantages:
· updating security and fixing identified vulnerabilities
· fixing bugs in existing code
· updates to functionality.
Marks were also awarded for:
· fixing known bugs with security features
· improving the performance
· updates to third-party security frameworks/libraries/software.
Some students wrote two advantages that were synonymous and therefore were not awarded a second mark. Students were not awarded marks for generic statements such as ‘making the customer feel good’ or ‘increase customer trust’.
The following is an example of a high-scoring response:
*Advantage 1: Provides for security updates if the program has a vulnerability that needs to be addressed.*
*Advantage 2: Finds bugs and errors in the code that are later discovered.*
#### Question 3 (4 Marks)
#projectplan #U3-AOS2
When reviewing the development of a web-based application, a software company realised that they had spent too long designing the user interface and as a result ran out of time to develop a payment function.
**a.** Identify **one** tool that could be used to identify project tasks that are on the critical path.
1 Mark
**b.** Discuss how identifying tasks on the critical path and recording the progress of the project could have prevented this problem from occurring. 3 Marks
##### Answer
Question 3a.
|**Marks**|**0**|**1**|**Average**|
|---|---|---|---|
|%|29|71|0.7|
Students were awarded a mark for identifying a Gantt chart. Students were not awarded marks for project plan, log books, milestones, dependencies or critical path.
Question 3b.
|**Marks**|**0**|**1**|**2**|**3**|**Average**|
|---|---|---|---|---|---|
|%|26|38|29|7|1.2|
Students were awarded marks for:
· stating that recording the progress of a project identifies tasks on the critical path
· stating that delays to tasks on the critical path will delay the whole project
· a question-specific statement about allocating additional resources to either the design of the user interface or to the payment function so that the project can be completed on time.
Most students wrote generic statements about recording the progress of a project on a Gantt chart. Some responded that delays could be avoided by using a Gantt chart to monitor the critical path of a project. Few responses contained statements about reallocating resources specific to the scenario outlined in the question.
The following is an example of a high-scoring response:
*All tasks that are on a projects critical path by definition cannot be delayed without also delaying the completion of the project. Therefore, it is important to make sure that these delays do not occur. A way that the company could have done this would have been to record and monitor the progress of every task, especially those on the critical path. This way they could have predicted the delay when developing the user interface and reacted accordingly.*
#### Question 4 (4 Marks)
#organisationalGoalObjectives
The statements below can be categorised as goals or objectives, and can apply to organisations or information systems. Categorise each statement below by writing one of the following statement numbers into the appropriate cell in the table.
**Statement 1:** Users can donate $5 using a single tap on their phone.
**Statement 2:** Become a world-leading charity.
**Statement 3:** Allow users to make donations online quickly and easily.
**Statement 4:** Increase the number of donations each year by 10%.
| | **Organisation** | **Information system** |
| ------------- | ---------------- | ---------------------- |
| **Goal** | | |
| **Objective** | | |
##### Answer
Question 4
|**Marks**|**0**|**1**|**2**|**3**|**4**|**Average**|
|---|---|---|---|---|---|---|
|%|13|6|20|0.4|61|2.9|
Some students confused goals and objectives.
| | | |
|---|---|---|
||Organisation|Information system|
|Goal|2|3|
|Objective|4|1|
#### Question 5 (3 Marks)
#SRS #U3-AOS2 #designPrinciples
Mustafa is designing a software solution to enhance the resolution of satellite imagery of the Earth. The software solution allows users to zoom into any region of the world up to a distance of 1 metre. The software solution operates extremely quickly, producing an image at any zoom level in less than half a second.
**a.** State **one** functional requirement of this system. 1 Mark
**b.** Compare the following two magnification tools. 2 Marks
![[Pasted image 20251120152053.png]]
Magnification tool 1: When the user selects the magnifier tool, the cursor turns into a magnifying glass. Each left-click on the map will then zoom in by an additional 5%, while each right-click will zoom out by 5%.
Magnification tool 2: When the user types a zoom percentage into the text box, the map zooms in or out to that percentage.
Select **one** of the magnification tools, and state **one** reason why it has better affordance than the other magnification tool.
Magnification tool
Reason
##### Answer:
Question 5a.
|**Marks**|**0**|**1**|**Average**|
|---|---|---|---|
|%|27|73|0.8|
Most students were awarded marks for stating the ability to zoom in to a distance of 1 metre on any region of the world.
Some students incorrectly referenced load time or image quality.
Question 5b.
|**Marks**|**0**|**1**|**2**|**Average**|
|---|---|---|---|---|
|%|69|16|15|0.5|
Students were expected to select Magnification tool 1 and state that the use of the magnifying glass icon in Magnification tool 1 had better affordance than the textbox in Magnification tool 2 because the icon is a universally accepted symbol for zooming in, which makes it easier for users to interact without needing additional instructions. Only a few students specifically referred to the magnifying glass when answering this question.
Students who selected Magnification tool 2 were not awarded marks.
The following is an example of a high-scoring response:
Magnification tool: 1
*Reason: Using a magnifying glass allows the user to quickly identify its purpose. It is intuitive and is something that users should be very familiar with as it is a common method of zooming, making the user experience better.*
#### Question 6 (4 Marks)
#Threats #U4-AOS2
Toby is creating a new e-commerce website for his employer. Various issues need to be addressed around web application risks. Cross-site scripting is one example.
**a.** Describe cross-site scripting.
**b.** Suggest **one** technique that can be used to protect against cross-site scripting.
**C.** Describe how cross-site scripting can diminish the integrity of data entered by a user into the website, and the impact this will have on the **owner** of the website.
##### Answer
Question 6a.
|**Marks**|**0**|**1**|**Average**|
|---|---|---|---|
|%|60|40|0.4|
Students were awarded marks for describing cross-site scripting as the running of malicious script or third-party code by inserting it into a web app.
Question 6b.
|**Marks**|**0**|**1**|**Average**|
|---|---|---|---|
|%|70|30|0.3|
Students were awarded marks for suggesting that cross-site scripting can be protected against through the validation or sanitising of user input and the rejection of inputs containing tags, characters or symbols. Other suggestions such as the updating of code libraries relating to security were also accepted.
Question 6c.
|**Marks**|**0**|**1**|**2**|**Average**|
|---|---|---|---|---|
|%|73|13|14|0.4|
Students were awarded a mark for linking their response to either of the data integrity characteristics of authenticity or correctness (responses linking to other data integrity characteristics were not awarded marks).
A mark was also awarded for the impact of cross-site scripting on the owner of the website in the context of the identified data integrity characteristic.
For example:
· Cross-site scripting diminishes the authenticity of the owner of the website, as users lack confidence in who is actually authoring the material on the website.
· Cross-site scripting diminishes the correctness of the data on the website and financial losses are incurred by the owner.
Many students wrote generally about how the data would be modified and how the business’s reputation would suffer, without mentioning data integrity in their response. Some students incorrectly identified data integrity characteristics such as accuracy. Other students incorrectly referred to reliability as a characteristic of data integrity.
The following are examples of high-scoring responses:
Example 1
*XSS may compromise the correctness of user data should it be manipulated via a script, this causes confusion and diminishes trust of the website and its owner, leading to less visitors.*
Example 2
*Because cross-site scripting can be used to hijack another user’s account, data entered by the hijacked account loses it’s authenticity, as it is not entered by the actual user. If this is revealed, it may lead to a loss of reputation on the owner.*
## Case Study
## Case Study Handout