Tip: Choose Save as PDF in the print dialog to download. Use A4 paper size.
Shade in the A or B circle for each question.
Draw a line connecting each item on the left to its match on the right.
| Left column | Right column | |
|---|---|---|
| 1training.repeat(every = 'year') | ARefresher training repeats secure development lessons regularly so developers' skills and awareness stay current. | |
| 2if email.isSuspicious(): report() | Bdb.query('SELECT * FROM users WHERE id = ?', [id]) | |
| 3Secure coding training teaches developers to handle user input safely, so a lack of knowledge does not create vulnerabilities. | CThe code trusts a sender's claimed identity without verifying it. This is a social engineering weakness that awareness training teaches developers to avoid. | |
| 4Learning from incidents means turning the lessons of a past incident into new training for developers. | Dtraining.add(incident.lessonsLearned) | |
| 5training.completed = True # one-off, never repeated | ETraining is treated as a one-off task. Skills fade and new threats appear, so developer training must be ongoing with refreshers. | |
| 6if sender == 'IT Support': sendPassword() | FPhishing and social engineering awareness training teaches developers to spot suspicious messages and report them. |
Complete each line of code by filling in the missing parts.
Shade in the letter of the line that contains an error.
Developer training — Ongoing training that gives developers the skills and awareness to write secure code and spot threats such as phishing, which reduces human error.IF monthsSinceTraining > 12 THEN
SEND refresherCourse(developer)
END IFIF emailHasSuspiciousLink THEN
reportPhishing(email)
END IFIF developer.trained = FALSE THEN
enrol(developer, "secure coding")
END IFFUNCTION learnFromIncident(incident)
updateTraining(incident.cause)
END FUNCTIONrisk ← baseRisk - trainingEffect
DISPLAY risk