Schema Progetto ↔ Teoria

Scopo

Per ogni fase del progetto CTAF, questo schema mostra: (1) la teoria collegata, (2) la documentazione prodotta, (3) il perché della scelta, (4) le alternative possibili. Usalo per ripasso rapido prima dell’orale.

Come leggere

Ogni sezione ha una tabella principale + note critiche. La colonna “Perché” è la risposta alla domanda d’esame “perché avete fatto così?” — la colonna “Alternative” risponde a “perché non avete fatto diversamente?“


0. Contesto del Progetto

Teoria

DimensioneDescrizione
ProgettoCTAF — Cardiac Traceability Agent Framework
ProblemaLLM black-box in ambito clinico: assenza di tracciabilità, spiegabilità, auditabilità
SoluzioneFramework multi-agente BDI (Jason) + LLM assistito (bozze revisionate da umano)
DominioMasse cardiache, basato su ESC Guidelines, golden case dimostrativi
VincoliBudget zero, free-tier, semestre accademico, human-in-the-loop obbligatorio

Documentazione

ArtefattoLinkContenuto
1-contesto.mdContestoProblema, stakeholder, architettura, scelta PMLC, vincoli
Architetturaimg/architecture.mmdDiagramma a 4 agenti + pipeline LLM + web console

Perché della scelta

SceltaMotivazione
BDI + LLM ibridoBDI dà tracciabilità per progettazione (justification tree); LLM dà flessibilità in authoring. Nessuno dei due da solo basta
Dominio cardiacoScelto dal committente (Cardiologia Forlì); abbastanza complesso per dimostrare il framework
Human-in-the-loopVincolo normativo (AI Act, MDR) e clinico: nessuna decisione automatica senza revisione umana

Alternative possibili

AlternativaPerché scartata
LLM puro (zero-shot)Black-box, non riproducibile, non auditabile — inaccettabile in clinica
Solo BDI simbolicoRegole scritte a mano: manutenzione costosa, non scalabile
Altro dominioAvrebbe richiesto altro committente e knowledge del dominio

1. Scoping Process Group

Teoria

Documentazione

ArtefattoLinkContenuto
CoSCoS6 Conditions of Satisfaction (C1-C6)
RBSRBS4 rami L1: Runtime BDI, LLM Pipeline, Web App, Tracciabilità + 7 NFR
SWOTSWOTStrengths, Weaknesses, Opportunities, Threats
POSPOSProblema, Goal, O1-O7, criteri IRACIS, rischi preliminari
2-scoping-initiating.mdScopingVerbali PSM #1 e #2, decisioni, azioni
Registro Rischi preliminarein 2-scoping-initiating.mdR1-R6 con P/I/PxI

Perché della scelta

SceltaMotivazione
CoS prima dei requisitiPer allineare committente e team su “cosa significa successo” prima di dettagliare. La tracciabilità 100% è emersa come CoS, non come requisito tecnico
RBS anziché semplice lista requisitiGerarchia L0→L3 mostra legame tra goal, funzioni e feature. Collega visione (L0) a implementazione (L3)
SWOT in fase di scopingPer far emergere rischi prima del planning: dipendenza API LLM, budget zero, competenze team
POS approvato in PSM #2Formalizza l’accordo prima di passare a pianificare
Project Scoping Meeting strutturatiDue incontri separati (visione → validazione) evitano di mescolare esplorazione e decisione

Alternative possibili

AlternativaPerché scartata
Raccolta requisiti informale (solo email/discord)Nessuna tracciabilità delle decisioni; rischio di ambiguità e scope creep
Project Charter PMBOK invece di POSTroppo formale per un progetto accademico; POS è più snello e sufficiente
Un solo scoping meetingTroppo compresso: la visione iniziale va separata dalla validazione per dare tempo di preparare RBS, SWOT, rischi
Non fare SWOTSWOT ha fatto emergere la debolezza “dipendenza API LLM”, poi gestita con fallback nel planning

2. Planning Process Group

Teoria

Documentazione

ArtefattoLinkContenuto
PDSPDSPOS esteso: stakeholder, O1-O7 dettagliati, vincoli, risk response plan
WBSWBS8 rami verb-type, da requisiti a gestione progetto
Project Network DiagramNetworkDiagramma, critical path, slack
Risk AnalysisRiskR1-R10 con P/I/PxI/strategia/trigger/owner
Cost EstimateCostBudget zero: effort 200h
Sprint PlanSprint4 sprint + riserva, SP, DoD, RACI
GanttGanttTimeline visiva
3-planning.mdPlanningVerbali JPPS #1 e #2, WBS, stime, network, rischi, budget, sprint, RACI

Perché della scelta

SceltaMotivazione
JPPS in due sessioni#1 tecnica (WBS, stime) → #2 con committente (validazione). Separa costruzione e validazione
WBS verb-typeCoerente con Scrum (attività per sprint). Noun-type sarebbe stato meno utile per schedulare
PERT (three-point)Incertezza R&D: una stima secca sarebbe stata falsamente precisa. Tripla stima cattura variabilità
MoSCoWMeccanico di protezione della consegna: 11 SP non fatti = 0 Must. Senza priorità esplicita sarebbero stati tagli casuali
Critical path = BDI → LLM → E2EHa guidato l’ordine degli sprint: prima il core stabile, poi l’incognita LLM, poi l’integrazione
Management reserve 10%Visibile e formale, non “buffer nascosto”. Necessaria per R&D
RACITeam piccolo: senza matrice, “tutti fanno tutto” crea ambiguità. PM Accountable coerentemente con lo scenario
Budget zero ma cost estimateAnche senza soldi, l’effort va stimato e controllato. 200h aggregate

Alternative possibili

AlternativaPerché scartata
Pianificazione Waterfall (tutto upfront)Incompatibile con Scrum. L’incertezza LLM non permetteva un piano definitivo
Stime a giudizio esperto senza PERTMeno accurate: PERT dà E = (O+4M+P)/6 e σ, catturando incertezza
WBS noun-type (per componenti)Meno utile per Scrum: non dice “cosa fare” in ogni sprint
Nessun buffer / reserveIrrealistico per R&D: senza reserve, R4 avrebbe spostato la consegna
MS Project per diagrammiA pagamento, non versionabile. Mermaid dà diagrammi in testo, diff-abili
Jira per backlogRidondante con GitHub Projects, non integrato con codice

3. Execution / Launching Process Group

Teoria

Documentazione

ArtefattoLinkContenuto
Sprint PlanSprint PlanDoD, DoR, backlog per sprint
Meeting MinutesMinutesVerbali planning, review, retrospective per ogni sprint
4-execution.mdExecutionSprint 1-4: goal, storie, blocchi, review, retrospettiva, velocity

Perché della scelta

SceltaMotivazione
Sprint 2 settimaneAbbastanza brevi per ispezione frequente, abbastanza lunghi per produrre incrementi significativi
Sprint Planning + Daily + Review + RetroIl ciclo completo Scrum dà ritmo, visibilità, feedback e miglioramento continuo
DoD a 6 criteriImpedisce di dichiarare “fatto” lavoro non verificabile. Include review, test, demo
Sprint Review con demoNon una riunione informativa: il committente vede il funzionamento e dà feedback
Technical spike in Sprint 1Bridge Jason-Python prototipato prima dell’implementazione: ha prevenuto R2
R1 gestito con fallbackRate limit Groq → OpenRouter. Mitigazione prevista nel risk response plan
R4 gestito con management reserveAmbiguità claim → post-processore. Non improvvisato, ma previsto e budgettato

Esecuzione per sprint — schema rapido

SprintGoalSP doneBlocchi principaliRisultato
Sprint 1 (23/3-5/4)Runtime BDI18/20 (90%)Jason su Windows → Docker; dipendenza ciclica → redesign4 agenti, gc04 ok, 12/12 test
Sprint 2 (6/4-19/4)Pipeline LLM18/22 (82%)Python 3.11+, formato LLM inconsistente, rate limit GroqDSPy + Groq/OpenRouter, 8/10 claim ok
Sprint 3 (20/4-3/5)Web App Review16/18 (89%)Scelta libreria grafica, parsing JSON tracceConsole React/Vite completa
Sprint 4 (4/5-17/5)Integrazione & test15/18 (83%)Discrepanza formato, R4 ambiguità claim, esamiE2E, gc04, 9/10 test, deliverable
Totale67/78 (86%)0 Must persiConsegna accettata

Alternative possibili

AlternativaPerché scartata
Sprint 1 settimanaTroppo corto per produrre incrementi significativi con setup e apprendimento
Sprint 4 settimaneRiduce frequenza ispezione: rischi scoperti tardi
Senza technical spikeR2 (PxI=9) si sarebbe attivato durante l’implementazione, con ritardo maggiore
Senza MoSCoWTagli sarebbero stati casuali; possibile perdita di Must-have
Sprint Review solo per PMIl feedback del committente è essenziale per la direzione iterativa
Waterfall executionNon avrebbe permesso di adattare il backlog dopo i blocchi

4. Monitoring & Controlling Process Group

Teoria

Documentazione

ArtefattoLinkContenuto
Status ReportsStatusReport a stoplight per ogni sprint
5-monitoring.mdMonitoringBurndown per sprint, EVM, issue log, risk monitoring, scope bank, change management
EVM foglioEVM_SPI_CPI.xlsxCalcolo PV, EV, AC, SPI, CPI con formule live

Perché della scelta

SceltaMotivazione
Burndown chart giornalieroVisibilità immediata su avanzamento sprint. Mostra trend, non solo stato puntuale
Status report a stoplightComunicazione chiara a committente e team. Verde/giallo/rosso è immediato
EVM in story pointBudget zero → EVM monetario non significativo. Misurare in SP dà SPI = 0.86 reale
SPI come indicatore principaleCPI = 1.00 è poco informativo (budget zero). SPI mostra la vera performance
Scope bank 10% (8 SP)Riserva formale per assorbire R4. 2 SP usati per post-processore
Issue log (9 issue)Traccia storica per analisi a posteriori: la maggior parte sono problemi di integrazione
Risk monitoring continuo3 rischi attivati (R1, R3, R4), tutti con mitigazione prevista e attuata
SPOC = PMSingolo punto di contatto per committente: evita comunicazioni disperse

EVM in sintesi

SprintPVEVACSPICPIStato
Sprint 12018180.901.00Verde
Sprint 22218180.821.00Verde
Sprint 31816160.891.00Verde
Sprint 41815150.831.00Giallo
Cumulativo7867670.861.00

Alternative possibili

AlternativaPerché scartata
EVM monetario classicoNon applicabile: budget zero. Misurare in SP è la corretta trasposizione
Solo report testualiMeno efficaci: stoplight + burndown danno impatto visivo immediato
Nessuno scope bankR4 non avrebbe avuto budget per post-processore; ritardo non assorbibile
Issue log tenuto a mentePerdita di tracciabilità. Il log ha permesso analisi post-progetto
Jira per monitoringSovraccarico per team di 4 persone. GitHub Projects è sufficiente

5. Closing Process Group

Teoria

Documentazione

ArtefattoLinkContenuto
Final ReportFinal ReportExecutive summary, risultati, lessons learned, raccomandazioni
6-closing.mdClosingVerifica O1-O7, accettazione, deliverable, audit, lessons learned
Meeting MinutesMinutesIncluso verbale Sprint Review #4 con accettazione

Perché della scelta

SceltaMotivazione
Verifica O1-O7 vs POS/PDSChiude il ciclo iniziato nello scoping: ciò che era stato promesso è stato controllato
Accettazione formale in Sprint ReviewNon “auto-dichiarata”: il committente ha verbalizzato l’accettazione
Post-Implementation AuditValutazione critica, non solo celebrazione. 7 dimensioni, da 4/5 a 5/5
Lessons Learned strutturate6 lezioni in 3 aree (metodologia, stime, documentazione). Trasformano esperienza in conoscenza
Project Notebook su GitHubDocs-as-code: tutto versionato, tracciato, navigabile
Tag v1.0.0-finalCongela il deliverable: sapere esattamente cosa è stato consegnato
Cut-Over accademicoCoerente con prototipo: non c’è produzione da migrare, ma la consegna è netta e documentata

Verifica obiettivi

ObiettivoRisultatoStato
O1 — Runtime BDI4 agenti Jason su gc04Raggiunto
O2 — Pipeline LLMDSPy + Groq/OpenRouterRaggiunto
O3 — Console WebReact/Vite + FastAPIRaggiunto
O4 — TracciabilitàJustification Tree per ogni decisioneRaggiunto
O5 — Golden casegc00, gc04, gc_gray_zoneRaggiunto
O6 — CLIctaf run scenario.jsonRaggiunto
O7 — Open sourceGitHub + MITRaggiunto

Alternative possibili

AlternativaPerché scartata
Nessuna accettazione formaleAmbiguità su “il progetto è finito o no?“. L’accettazione chiude il ciclo
Solo Final Report senza auditAuto-valutazione senza struttura. L’audit dà dimensioni oggettive
Project Notebook ricostruito alla fineMeno accurato, perde dettagli. Docs-as-code è più affidabile
Phased approach per installazioneNon c’è produzione: Cut-Over è la scelta più semplice e chiara
Senza lessons learnedLe stesse esperienze sarebbero state perse per progetti futuri

6. Strumenti — Trasversale

CategoriaStrumento sceltoPerchéAlternativa scartata
RepositoryGitHubDocs-as-code, versionato, integrato con issue/PRGitLab (stessa cosa, meno usato accademicamente)
BacklogGitHub ProjectsBoard kanban integrata col codiceJira (ridondante, non integrato), Trello (non versionabile)
DiagrammiMermaid (.mmd)Testuali, diff-abili, versionatiMS Project (plan-driven, a pagamento), draw.io (binario)
DocumentazioneMarkdown + QuartzPortabile, versionabile, pubblicabileWord/PDF (binario, non diff-abile)
StimeExcel (.xlsx)Formule live, PERT/EVM calcolatiMS Project (troppo pesante)
ComunicazioneDiscordAsincrono, canali tematici, daily standupSlack (pagamento per storico), Teams (pesante)
KnowledgeObsidianProject Notebook a grafo, wikilinkNotion (non versionato)

Tabella riassuntiva — Tutte le fasi

FaseTeoria (appunti)Documento (pm-project)Perché chiaveAlternativa principale
Contesto04. Definizione di Project Management1-contestoBDI+LLM ibrido per tracciabilitàLLM puro (black-box)
Scoping06. Scoping Process Group2-scopingCoS ~ bisogno reale, non wantRaccolta requisiti informale
Planning07. Planning Process Group3-planningPERT per incertezza, MoSCoW per protezioneWaterfall upfront, stima singola
Execution05. Definizione dei Processi4-executionSprint 2 settimane, DoD, technical spikeSprint lunghi, nessuno spike
Monitoring09. Monitoring and Controlling Process Group5-monitoringEVM in SP, scope bank 10%, stoplightSolo report testuali
Closing10. Closing Process Group6-closingAudit, lessons learned, Project NotebookNessuna accettazione formale
Strumenti7-strumentiLeggeri, open-source, versionatiJira, MS Project, Word

Collegamenti rapidi