Przejdź do treści
Cyberbezpieczeństwo

SDLC

SDLC (Software Development Life Cycle) — cykl życia oprogramowania, sformalizowana sekwencja faz wytwarzania: planowanie, analiza, projektowanie, implementacja, testowanie, wdrożenie, utrzymanie. Secure SDLC (SSDLC) uzupełnia cykl o kontrole bezpieczeństwa w każdej fazie.

Co to jest SDLC?

SDLC (Software Development Life Cycle) to cykl życia oprogramowania — sformalizowana sekwencja faz wytwarzania, testowania i utrzymania aplikacji. SDLC standaryzuje proces, umożliwia kontrolę jakości, przewidywalność budżetu i harmonogramu oraz spełnienie wymogów regulacyjnych (ISO 27001, PCI DSS, SOC 2, NIS2).

7 faz SDLC

  1. Planning — cele biznesowe, budżet, harmonogram, kickoff
  2. Requirements analysis — user stories, use cases, wymagania niefunkcjonalne (wydajność, bezpieczeństwo, zgodność)
  3. Design — architektura, UX/UI, model danych, wybór stosu technologicznego, threat modeling
  4. Implementation — kodowanie, code review, unit testy, SAST scanning
  5. Testing — integration, UAT, performance, security (DAST, pentest)
  6. Deployment — release plan, rollback plan, monitoring configuration
  7. Maintenance — patching, rozwój, incident response, deprecation

Modele SDLC

ModelCharakterystykaKiedy używać
WaterfallLiniowy, sztywne fazyWymagania znane, regulacyjne (MIL, aerospace)
V-ModelWaterfall + testy per fazaSafety-critical, medyczne
IncrementalPrzyrostowe dostarczanie modułówDuże projekty, fazowalne
SpiralIteracyjny z focus na ryzykuWysokie ryzyko, R&D
Agile/ScrumIteracje 2-4 tyg, adaptacyjneZmienność wymagań, startupy
DevOps/DevSecOpsContinuous delivery + securitySaaS, produkty cyfrowe

Secure SDLC (SSDLC) — security per faza

Requirements → bezpieczeństwo jako wymaganie niefunkcjonalne (OWASP ASVS levels) Design → threat modeling (STRIDE, PASTA, LINDDUN), security architecture review Implementation → secure coding standards (OWASP Top 10, CWE Top 25), SAST (SonarQube, Checkmarx), SCA (Snyk, Dependabot) Testing → DAST (OWASP ZAP, Burp), IAST, penetration testing, fuzz testing Deployment → secure CI/CD (signed artifacts, SBOM, policy-as-code, OPA), IaC scanning (Checkov, Terrascan) Maintenance → vulnerability management, patch management, security monitoring (SIEM), incident response

Dlaczego SSDLC?

Koszt naprawy podatności w zależności od fazy wykrycia:

Wykrycie w fazieKoszt względny
Requirements
Design5-10×
Implementation10-20×
Testing20-50×
Production100-1000×

Shift-left security = wykrywanie podatności jak najwcześniej → największa oszczędność.

Standardy Secure SDLC

  • OWASP SAMM — Software Assurance Maturity Model (ocena dojrzałości, 5 domen)
  • BSIMM — benchmark oparty na 130+ organizacjach
  • Microsoft SDL — 12 praktyk, historyczny lider
  • NIST SSDF (SP 800-218) — Secure Software Development Framework (obowiązkowy dla dostawców federalnych USA od 2024)
  • ISO/IEC 27034 — application security framework
  • PCI Secure SLC — dla aplikacji płatniczych

Sprawdź nasze usługi

Najczęściej zadawane pytania

+ Co to jest SDLC?

SDLC (Software Development Life Cycle) to sformalizowany cykl życia oprogramowania — sekwencja faz od pomysłu do utrzymania produkcyjnego: planowanie, analiza wymagań, projektowanie, implementacja, testowanie, wdrożenie, utrzymanie. SDLC standaryzuje proces, pozwala na kontrolę jakości i zgodność z wymogami regulacyjnymi (ISO 27001, PCI DSS, SOC 2).

+ Jakie są fazy SDLC?

Standardowy SDLC obejmuje 7 faz: (1) Planning — definicja celów, harmonogramu, budżetu, (2) Requirements analysis — zbieranie i formalizacja wymagań funkcjonalnych i niefunkcjonalnych, (3) Design — architektura, projekt techniczny, wybór technologii, (4) Implementation — pisanie kodu, (5) Testing — unit, integration, security, UAT, (6) Deployment — wdrożenie na produkcję, (7) Maintenance — utrzymanie, poprawki, rozwój.

+ Czym SDLC różni się od SSDLC?

SDLC opisuje sam proces wytwarzania, SSDLC (Secure SDLC) dodaje kontrole bezpieczeństwa w każdej fazie: threat modeling w design, security requirements w requirements, SAST/SCA w implementation, DAST i pentest w testing, security monitoring w maintenance. SSDLC wymusza shift-left security — wykrywanie podatności wcześniej kosztuje 10-100× mniej niż po wdrożeniu.

+ SDLC a Agile — czy się wykluczają?

Nie. SDLC to ramy (fazy i cele), Agile to metoda wykonywania (iteracje). W Agile każdy sprint to mini-SDLC: planning → design → implement → test → deploy → review. Nowoczesne SDLC (DevSecOps) łączą Agile sprinty z automatyzacją: CI/CD pipelines z bramkami jakości, Infrastructure-as-Code, continuous security testing. Model V, Waterfall to tradycyjne podejście — sztywne, ale wymagane w niektórych regulacjach (MIL-STD, DO-178C).

+ Jakie standardy opisują Secure SDLC?

Najważniejsze: (1) OWASP SAMM (Software Assurance Maturity Model) — ramy oceny dojrzałości security w SDLC, 5 domen, 4 poziomy, (2) BSIMM (Building Security In Maturity Model) — benchmark 100+ praktyk na podstawie 130+ organizacji, (3) Microsoft SDL — 12 praktyk bezpieczeństwa, (4) NIST SSDF (SP 800-218) — Secure Software Development Framework, wymóg ustawy Executive Order 14028 dla dostawców rządowych USA, (5) ISO/IEC 27034 — standard application security.

Tagi:

sdlc ssdlc devsecops secure-coding owasp compliance

Chcesz obniżyć ryzyko i koszty IT?

Umów bezpłatną konsultację - odpowiemy w ciągu 24h

Odpowiedź w 24h Bezpłatna wycena Bez zobowiązań

Lub pobierz bezpłatny przewodnik:

Pobierz checklistę NIS2