to recognize the threats to software, how those threats are realized (as attacks)
during development or deployment, or how to leverage their understanding of
threats and common exploitable weaknesses and faults (i.e., vulnerabilities) when
specifying requirements for their software’s functionality, functional constraints,