Automated search for known weaknesses.

System whose components run across multiple machines.

Provides simplified interface to complex functionality.

Authorized simulated attack on a system.

Architecture dividing clients and servers.

Adds behavior without modifying the original object.

Testing software with unexpected or malformed inputs.

Architecture where nodes act as peers.

Objects receive notifications about state changes.

Targeted phishing attack.