Series of checks and balances to make sure the entire system is secured from multiple perspectives The breaking down of larger tasks into smaller, more manageable tasks 1. Encapsulation 2. Fail-Safe Defaults/Fail Secure 3. Isolation 4. Layering 5. Least Privilege 6. Modularity