Skip to content

Sviluppo Iterativo e Sprint

Pur non essendo stato formalizzato come Scrum rigoroso, il progetto è stato chiaramente sviluppato per fasi incrementali.

Sprint/Fase Obiettivo Risultato Criticità Valore prodotto
Fase 1 modellazione dominio e DSL base presentazione, slide, testo, bullet, codice definizione dei vincoli base concettuale del sistema
Fase 2 renderer HTML e testo output multipli separazione fra modello e vista validazione del design multi-renderer
Fase 3 CLI e orchestrazione esecuzione da terminale gestione errori e bootstrap usabilità reale del progetto
Fase 4 refactor architetturali parser, factory, utility, error handling evitare opacità maggiore manutenibilità
Fase 5 immagini, footer, Markdown nuove estensioni funzionali mantenere coerenza del dominio dimostrazione di estendibilità
Fase 6 Documentazione pubblicazione su Pages coordinamento con release comunicazione e accessibilità del progetto

Tabella di dettaglio

Id Item Stima (h) Effettivo (h) S1 S2 S3 S4 S5
1 Setup repository e convenzioni di versionamento 2 3 3 0 0 0 0
2 Setup sbt, dipendenze e framework base 3 5 5 0 0 0 0
3 Setup CI multi-OS con GitHub Actions 3 5 4 1 0 0 0
4 Setup qualità: formatter, linter/scalafix, coverage e Codecov 3 5 3 2 0 0 0
5 Modellazione del dominio e regole di validazione 5 8 5 3 0 0 0
6 DSL base e modello di composizione delle slide 6 9 4 5 0 0 0
7 Application layer, bootstrap ed esecuzione con Scala CLI 5 8 0 6 2 0 0
8 CLI, parsing argomenti, gestione errori e UX da terminale 4 6 0 5 1 0 0
9 Renderer testuale 3 4 0 3 1 0 0
10 Renderer HTML e navigazione della presentazione 5 9 0 4 5 0 0
11 Renderer Markdown 3 4 0 0 4 0 0
12 Supporto a immagini e footer nel DSL e nei renderer 5 7 0 0 5 2 0
13 Refactor per estendibilità, pulizia package e separazione responsabilità 4 5 0 0 3 2 0
14 Estensione suite di test, TDD hardening e regressioni 4 6 0 0 0 5 1
15 Documentazione tecnica, sito di presentazione, Pages deploy e release automation 5 6 0 0 0 3 3
TOT 60 90 24 29 21 12 4
Fase Attività principali Stima (h) Effettivo (h) Scostamento
Analisi comprensione del dominio, definizione obiettivi, requisiti iniziali 8 12 +4
Progettazione architettura, organizzazione package, modellazione DSL e dominio 12 18 +6
Setup tecnico repository, sbt, framework, CI, coverage, formatter, linter 10 16 +6
Implementazione core DSL, dominio, application layer, CLI 14 20 +6
Rendering HTML, text, Markdown, immagini, footer 8 12 +4
Testing e refactor TDD, regressioni, pulizia architetturale, manutenzione 4 7 +3
Documentazione e presentazione Scaladoc, sito, immagini, relazione, deploy Pages 4 5 +1
TOT 60 90 +30