Skip to content

The Software Development Lifecycle (SDLC) at Planet Argon

The Software Development Lifecycle (SDLC) is a well-established methodology for producing high-quality software that fulfills client needs both on time and within budget. At Planet Argon, our approach generally leans on Agile/Scrum and Waterfall methodologies, or a hybrid of the two.

  1. Requirements Gathering
  2. Planning
  3. Design
  4. Development
  5. Testing
  6. Deployment

SDLC Flowchart

Note: SDLC is often iterative, especially in Agile environments, meaning phases can overlap or be revisited as the project evolves.


The Requirements Gathering phase is all about understanding what stakeholders consider successful for the project. It often involves multiple high-level, user-centric discussions to pinpoint exactly what the software should accomplish.

  • Stakeholder
  • Requirement
  • User story
  • Definition of done

Imagine a healthcare provider needs a system to manage patient records. Stakeholders might require functionalities like secure login, search functionality, and compliance with health data regulations.

Phase 2: Planning (Also Known as “Defining”)

Section titled “Phase 2: Planning (Also Known as “Defining”)”

Here, the focus is on how best to achieve the gathered requirements, identifying risks, and planning mitigation strategies. Budget and timeline constraints are also evaluated, as well as potential tools and technologies.

  • Feasibility
  • Risk

Consider factors like:

  • Technical Debt
  • Security Risks
  • Market Risks

Budget and schedule can impact the scope and quality. It’s crucial to align the team’s capabilities and deadlines with stakeholder expectations.

Technical leads and developers use insights from the Planning phase to formulate the software’s high-level architecture, specifying how data storage, security, and API integrations will work.

  • Architecture
  • Design document
  • System
  • Component
  • Language vs framework vs library
  • API
  • Databases
  • SQL
  • Relational vs non-relational

This is where the actual code is written. Developers use code style guidelines and commit and merge best practices to ensure code quality.

  • Local/staging/production
  • Commit
  • Merge
  • Pull/push
  • Git
  • Bitbucket/Github
  • Repo
  • Merge conflicts
  • Front End
  • Back End

The Testing phase ensures that the software meets the requirements outlined during the Planning phase. Different types of tests like unit tests, integration tests, and user acceptance tests are performed.

  • Tests/test suites
  • Testing frameworks (Rspec, Cypress, Jest)
  • Edge case
  • Happy path
  • Passing/Failing
  • Mock
  • Continuous Integration tools like CircleCI or GitHub Actions

The software is moved to a production environment, making it accessible for end-users. Before this, it often passes through staging and testing environments.

  • CI/CD
  • Repo
  • Staging
  • Production
  • Environment
  • Push
  • Launch/deploy/go live

After deployment, the software often enters a Maintenance phase where it’s continually updated based on user feedback and performance analytics.

Quality Assurance (QA) is an ongoing activity that spans multiple phases of the SDLC to ensure that the software meets the desired quality standards.