# Sdlc Processes

> Covers the complete software development lifecycle (SDLC) including analysis, design, development, testing, deployment, and maintenance.

- Skill: `paulpas/sdlc-processes` (Agent Skill)
- Install (CLI): `npx skillmds@latest add paulpas/sdlc-processes`
- Raw SKILL.md: https://api.skillmd.com/api/skills/paulpas/sdlc-processes/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- License: MIT
- Author: paulpas (https://skillmd.com/u/paulpas)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/paulpas/sdlc-processes

---






# Software Development Lifecycle

This skill provides a detailed overview of the Software Development Lifecycle (SDLC), detailing the various phases and methodologies involved in software development.

## When to Use
- When initiating a new software project.
- For continuous integration and continuous deployment (CI/CD) implementations.
- In scenarios requiring project management and coordination of teams.

## Core Workflow

1. **Requirement Analysis**  
   Gather and analyze requirements using stakeholder interviews, surveys, and documentation.

2. **Planning**  
   Develop a project plan including timelines, resource allocation, and risk assessment. Make use of tools like Gantt charts or Kanban boards to visualize tasks.

3. **Design**  
   Create detailed architectural and design documents outlining how the software meets specifications. Consider using UML diagrams or flowcharts for clarity.

4. **Development**  
   Begin coding based on design specifications. Adopt coding standards and best practices, and integrate version control to manage changes effectively.

5. **Testing**  
   Implement multiple levels of testing such as unit, integration, system, and acceptance testing. Use CI/CD tools like Jenkins to automate testing processes.
   Example command for running tests in a Node.js application:
   ```bash
   npm test
   ```

6. **Deployment**  
   Prepare the application for deployment to the production environment. Ensure rollback strategies and health checks are in place. Example command for deploying to AWS using the AWS CLI:
   ```bash
   aws s3 cp myapp s3://mybucket/myapp --recursive
   ```

7. **Maintenance**  
   Continuously monitor the application for issues and gather user feedback for improvements. Schedule regular updates and enhancements to keep the software relevant.

## Implementation Patterns

### Example of CI/CD Pipeline Structure
```yaml
# Sample pipeline configuration
name: CI/CD Pipeline
on:
  push:
    branches:
      - main
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: Set up Node.js
        uses: actions/setup-node@v2
        with:
          node-version: '14'
      - run: npm install
      - run: npm test
```  

## Constraints

### MUST DO
- Ensure thorough documentation is maintained throughout all phases of the SDLC.
- Implement continuous feedback loops at each phase to allow for quick corrections and adaptations.

### MUST NOT DO
- Skip important documentation as it is crucial for future reference and onboarding new team members.
- Rush through any stage of the lifecycle; each phase must be given its appropriate attention to ensure quality and success of the project.

---

## Live References

> Authoritative documentation links for this skill's domain. The model follows markdown links to resolve external references and inline content.

- [IBM — Software Development Lifecycle](https://www.ibm.com/topics/software-development-lifecycle)
- [IEEE 12207 — Systems & Software Engineering Life Cycle Processes](https://standards.ieee.org/standard/12207-2008.html)
- [Agile Alliance — Agile Methodology Guide](https://www.agilealliance.org/glossary/agile/)
- [GitFlow Workflow (Atlassian)](https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow)
- [Continuous Integration & Delivery (Martin Fowler)](https://martinfowler.com/articles/continuousIntegration.html)

