Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Security risks—and the need to mitigate them—arise throughout the software development lifecycle. A secure approach must therefore be applied end-to-end:

  1. Design – Ensure the architecture does not inherently expose systems, data, or business assets to unauthorised access.

  2. Code – Write and reuse code securely to prevent exploitation. Developers must also operate in secure environments that protect against tampering or compromise.

  3. Build and Deploy – Protect CI/CD pipelines from unauthorised changes and ensure the integrity of builds and releases.

  4. Run – Operate systems securely across all environments (cloud, servers, mobile), applying best practices in people, process, and technology.

  5. Zero Trust and Governance – Apply Zero Trust principles throughout: assume breach, verify explicitly, and enforce least privilege for all identities and components.

Core practices for securing the SDLC:

  1. Define security standards, metrics, and governance

  2. Use proven secure languages, frameworks, and features

  3. Conduct design reviews and threat modelling

  4. Apply consistent cryptographic standards

  5. Secure the software supply chain

  6. Protect the engineering environment

  7. Perform regular security testing

  8. Ensure secure platform operations

  9. Implement monitoring and incident response

  10. Provide ongoing security training