Molto buona domanda ... SDL e Agile sono spesso visti come ai ferri corti, anche se non hanno bisogno di esserlo.
In effetti, di recente ho dato un talk a OWASP su questo (Agile in generale, non necessariamente SCRUM), e incontrato con un certo scetticismo all'inizio ... ma alla fine la maggior parte era convinta della possibilità, almeno.
Sono d'accordo sulla SDL di MS, mentre penso che sia uno dei migliori modelli per le grandi aziende, è "pesante" (come ho detto in un'altra domanda SDL leggera ), e ha un sacco di spese generali. (anche se non penso che sia accademico, non si applica alla maggior parte di noi).
Senza impostare un SDL completo qui, e senza contesto di conoscere la tua org, direi che questi sono alcuni degli elementi importanti:
- Formazione (che è già una parte importante della maggior parte delle pratiche Agile)
- Mappare i requisiti SDL alle attività Agile e consentire al team di completarli autonomamente. Non si tratta di passare i checkpoint ...
- Storie non funzionali aggiunte al backlog
- Criteri di completamento (sprint / release)
- Requisiti di sicurezza del prodotto - > " ab utente" storie
- basato sulla frequenza " cunei " (non wedgies )
- Alcune attività sono requisiti unici, devono semplicemente essere completati come qualsiasi altro requisito
- Alcuni compiti sono per ogni sprint: questi sono designati "Criteri di completamento dello sprint"
- Alcuni sono solo per comunicati pubblici (alcune metodologie separate tra loro, alcune trattano ogni scatto come una versione pubblica) - "Criteri di completamento della versione"
- A volte potresti voler fare un "Security Spike" - un intero sprint incentrato su diversi aspetti della sicurezza
- L'idea di MS di "Bucket" sembra carina, anche se non l'ho mai implementata e dipenderebbe molto dalla cultura / dai bisogni dell'org. (Configura un gruppo di req con la stessa classificazione, o "bucket", e ogni volta che devi scegliere one da ciascun bucket).
Questo è solo lo schema generale ... Fammi sapere se vuoi maggiori dettagli. Ovviamente, ciò che entra in ogni cuneo e quali attività devono essere eseguite quando / come, dipende in realtà dalla conoscenza della tua organizzazione, cultura, esigenze, profilo di rischio, ecc. Ecc.
Trovo che il cambiamento imperativo del concetto da SDL "Classic" (o SDL "Waterfall") che deve essere accettato è:
"Classic” SDL was about control.
Agile SDL is about visibility