Software Development Lifecycle

SDLC is really about managing change. No matter which SDLC you use to manage your software releases, there are some common strategies to ensure a successful release cycle.

Watch out for scope creep.

Managing Change

Change management for software consists of carefully considering what code is being committed to the codebase.

Ensure only high-quality code is coming into your codebase.

  • Hire the best. Continually train them.

  • Implement GitFlow branching strategy

  • Implement Pull Requests

  • Implement CI/CD

Even with PRs, low quality code can slip into the release cycle. If that happens, additional measures can be taken.

  • Protect your main and develop branches to prevent code merges without a pull request.

  • Require 2 reviewers for each PR. The issuing coder will assign the first reviewer, then the first reviewer will assign the second. This helps prevent "rubber stamp" PRs.

  • Require only trusted senior team members to merge code.

Slow down the number of changes as your release date approaches. This is critical to stabilizing the software.

Use Frameworks to share code between projects, but be wary of too many nested dependencies.