From b7374ffab5b862c09a6bc87101181caec48f4078 Mon Sep 17 00:00:00 2001 From: Davide Grilli Date: Sun, 27 Sep 2026 19:41:16 +0200 Subject: [PATCH] Orienta B1.10 su Django e allinea versioni MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Davide conosce Python: architettura.md §6 documenta l'orientamento su Django (non ancora decisione formale) con le librerie da aggiungere per coda/pianificatore e notifiche in-app; domande- cliente.md e indice-documenti.md allineati. Co-Authored-By: Claude Sonnet 5 --- architettura.md | 11 ++++++----- domande-cliente.md | 9 +++++---- indice-documenti.md | 5 +++-- 3 files changed, 14 insertions(+), 11 deletions(-) diff --git a/architettura.md b/architettura.md index ee009b9..a3b8e04 100644 --- a/architettura.md +++ b/architettura.md @@ -1,7 +1,7 @@ # Architettura del software **Progetto:** Gestionale per enti del Terzo Settore **Documento:** `architettura.md` -**Versione:** 0.4.4 · **Data:** 27/09/2026 · **Stato:** Bozza, proposta da confermare; uso interno +**Versione:** 0.4.5 · **Data:** 27/09/2026 · **Stato:** Bozza, proposta da confermare; uso interno **Allineato a:** `richiesta.md` v0.4 · **Schema di versione:** vedi `indice-documenti.md` **Cosa contiene:** come si costruisce il software: forma dell'applicazione, componenti, dati, permessi, stack, sicurezza, infrastruttura e rilascio. I requisiti non si ripetono: si citano con il codice. Servizi e prezzi di riferimento sono in `costi-ricorrenti.md`, le scelte ancora aperte (B) in `domande-cliente.md` §3, l'ordine di realizzazione in `blueprint.md`. @@ -144,7 +144,7 @@ Linguaggio e framework non sono ancora scelti. Qui ci sono i criteri, ricavati d Rails, .NET e Node.js possono coprire gli stessi requisiti; il confronto si limita alle due opzioni più aderenti ai criteri del §6.1 e si estende se Davide conosce uno di questi stack. -**Orientamento 🔸:** sui requisiti Laravel e Django si equivalgono; decide la **conoscenza di Davide**, perché nel controllo del codice conta più di qualunque differenza tecnica. A parità di conoscenza, Laravel ha un piccolo vantaggio: coda, pianificatore e notifiche con stato di lettura sono inclusi, quindi ci sono meno componenti da scegliere, aggiornare e consegnare. +**Orientamento 🔸 (B1.10):** sui requisiti Laravel e Django si equivalgono; decide la **conoscenza di Davide**, perché nel controllo del codice conta più di qualunque differenza tecnica. Davide conosce Python, non PHP: **Django è l'orientamento attuale**, non ancora deciso (D). I pezzi che Django non include di serie restano piccoli da colmare: coda e pianificatore con Django-Q2 (su PostgreSQL, senza Redis, coerente con il punto sotto) e notifiche con stato di lettura con un modello dedicato o django-notifications-hq; i permessi a livello di singolo record restano comunque affidati alla row-level security di PostgreSQL (D12), non al framework. **In entrambi i casi:** - 🔸 **niente Redis:** con circa 100 utenti coda e cache sul database bastano, e c'è un servizio in meno da gestire, salvare e trasferire (RT-15). Si aggiunge solo se le misure in produzione lo richiedono; @@ -264,10 +264,11 @@ Per evitare aggiunte non richieste durante lo sviluppo: | 0.4.2 | 27/09/2026 | `richiesta.md` v0.4 | Nome di M3 allineato a `richiesta.md` v0.4.4 ("Anagrafica stakeholder", da [X]) | | 0.4.3 | 27/09/2026 | `richiesta.md` v0.4 | §1: il vincolo "un solo sviluppatore" non indica più chi segue la manutenzione dal secondo anno (richiesta di Davide) | | 0.4.4 | 27/09/2026 | `richiesta.md` v0.4 | §7: tolta l'indicazione che D11 decida le "ore di manutenzione" dal secondo anno; D11 decide solo che la gestione tecnica resta a Davide con contratto separato, non termini e ore, ancora aperti | +| 0.4.5 | 27/09/2026 | `richiesta.md` v0.4 | §6: B1.10 orientata su Django (conoscenza di Davide), non ancora decisione (D); indicate le librerie per colmare coda/pianificatore e notifiche | --- ## Stato -- **Fase corrente:** analisi dei requisiti; architettura in bozza v0.4.4. -- **Decisioni prese:** D12 (PostgreSQL, migrazioni, row-level security); firma simulata in sviluppo (`costi-ricorrenti.md`). Il resto è proposta 🔸. -- **Prossimo passo:** Davide sceglie lo stack (B1.10) e conferma le proposte 🔸; quelle approvate diventano decisioni in `richiesta.md` §7 (versione 0.5, con allineamento dei documenti derivati). +- **Fase corrente:** analisi dei requisiti; architettura in bozza v0.4.5. +- **Decisioni prese:** D12 (PostgreSQL, migrazioni, row-level security); firma simulata in sviluppo (`costi-ricorrenti.md`). B1.10 orientata su Django, non ancora decisione. Il resto è proposta 🔸. +- **Prossimo passo:** Davide conferma B1.10 (Django) come decisione formale e le proposte 🔸; quelle approvate diventano decisioni in `richiesta.md` §7 (versione 0.5, con allineamento dei documenti derivati). diff --git a/domande-cliente.md b/domande-cliente.md index 06b9031..d1d43f9 100644 --- a/domande-cliente.md +++ b/domande-cliente.md @@ -1,7 +1,7 @@ # Domande per il cliente **Progetto:** Gestionale per enti del Terzo Settore **Documento:** `domande-cliente.md` -**Versione:** 0.4.6 · **Data:** 27/09/2026 · **Stato:** Bozza +**Versione:** 0.4.7 · **Data:** 27/09/2026 · **Stato:** Bozza **Allineato a:** `richiesta.md` v0.4 · **Schema di versione:** vedi `indice-documenti.md` Al cliente arrivano la sezione 1.1 e la sezione 2 con il documento `invii/2026-09-27_domande-cliente_v0.4.md` (`indice-documenti.md` §1.3). La sezione 3 è solo per Davide. @@ -78,7 +78,7 @@ Sono nel documento per il cliente, §2: | B1.4 | Fornitori di firma, marca, conservazione | Q4, Q9 | Fornitori qualificati | | B1.5 | Fattura elettronica | Q5 | Integrazione, non sviluppo da zero | | B1.9 | Ore per il passaggio dei servizi | Q23 | Da stimare nel preventivo | -| B1.10 | Linguaggio e framework dell'applicazione | Conoscenza di Davide; RT-15 | Laravel o Django, equivalenti sui requisiti: `architettura.md` §6 | +| B1.10 | Linguaggio e framework dell'applicazione | Conoscenza di Davide; RT-15 | Orientato su Django (Davide conosce Python), non ancora deciso: `architettura.md` §6 | | B1.11 | Guida d'uso e formazione degli utenti | — | Nessun requisito nelle fonti; se offerte, vanno nel preventivo (`blueprint.md` §6) | | B1.12 | Correzione dei difetti nel primo anno (garanzia) | ⚖️ C10 | Da distinguere dalla manutenzione del secondo anno (D11), nel preventivo o nel contratto | @@ -116,10 +116,11 @@ Q14 (sezioni del bilancio sociale) e Q15 (valore delle ore di volontariato): pri | 0.4.3 | 27/09/2026 | `richiesta.md` v0.4 | Allineato alla proposta: §1 diviso tra le 7 domande della proposta (1.1) e Q23, Q18 da trattare di persona o nel contratto (1.2); indicato che i punti del §2 sono nella proposta | | 0.4.5 | 27/09/2026 | `richiesta.md` v0.4 | Collegamento ai nuovi `architettura.md` e `blueprint.md`: aggiunte le scelte B1.10 (stack), B1.11 (guida d'uso e formazione), B1.12 (garanzia nel primo anno) e le scelte già orientate B2.6, B2.7; motivazioni delle B2 rimandate ad `architettura.md`; aggiunto il rimando ai rischi di pianificazione | | 0.4.6 | 27/09/2026 | `richiesta.md` v0.4 | La proposta CSV è sostituita dal documento `invii/2026-09-27_domande-cliente_v0.4.md` (domande e comunicazioni, senza il riepilogo delle funzioni). Aggiunte Q25 (qualifica e sezione RUNTS) e Q26 (conferma delle circolari in fase 1), nate dalla verifica sulle fonti; criterio esteso alle conferme sui punti in cui le fonti non concordano. Q9 precisa che la conservazione digitale è già richiesta da [D]. §2: aggiunta D2 e le ipotesi 🔸 da validare al collaudo | +| 0.4.7 | 27/09/2026 | `richiesta.md` v0.4 | B1.10 orientata su Django (Davide conosce Python), non ancora decisione formale: `architettura.md` §6 | --- ## Stato - **Fase corrente:** analisi dei requisiti, domande pronte per il cliente. -- **Decisioni prese:** D1–D13 (`richiesta.md` §7). -- **Prossimo passo:** commercialista su C12; invio del documento delle domande (9 domande); Q23 e Q18 all'incontro o nel contratto. +- **Decisioni prese:** D1–D13 (`richiesta.md` §7). B1.10 orientata su Django, non ancora decisione. +- **Prossimo passo:** commercialista su C12; invio del documento delle domande (9 domande); Q23 e Q18 all'incontro o nel contratto; conferma di B1.10 come decisione formale. diff --git a/indice-documenti.md b/indice-documenti.md index e08d976..d005947 100644 --- a/indice-documenti.md +++ b/indice-documenti.md @@ -27,9 +27,9 @@ Ogni informazione sta in **un solo documento**; gli altri la richiamano con il s |---|---|---|---|---| | `richiesta.md` | **Documento base.** Cosa deve fare il software: moduli, requisiti (RF, RT), dati personali, differenze tra le fonti, decisioni (D) | **0.4.5** | Bozza | Fonti del 25/09/2026 | | `workflow.md` | Processi del software passo per passo (W), con i riferimenti ai requisiti | **0.4.3** | Bozza | `richiesta.md` v0.4 | -| `domande-cliente.md` | Tutto ciò che è aperto: domande essenziali per il cliente (Q), cose da comunicare, verifiche con legale e commercialista (C), scelte in sospeso (B), rischi | **0.4.6** | Bozza | `richiesta.md` v0.4 | +| `domande-cliente.md` | Tutto ciò che è aperto: domande essenziali per il cliente (Q), cose da comunicare, verifiche con legale e commercialista (C), scelte in sospeso (B), rischi | **0.4.7** | Bozza | `richiesta.md` v0.4 | | `costi-ricorrenti.md` | Costi ricorrenti di sviluppo, test e produzione: prezzi con fonte, spese certe e da quantificare, scenari, effetti economici delle decisioni | **0.4.5** | Bozza | `richiesta.md` v0.4 | -| `architettura.md` | Come si costruisce il software: forma dell'applicazione, componenti, dati, permessi, confronto sugli stack, sicurezza, infrastruttura e rilascio (uso interno) | **0.4.4** | Bozza | `richiesta.md` v0.4 | +| `architettura.md` | Come si costruisce il software: forma dell'applicazione, componenti, dati, permessi, confronto sugli stack, sicurezza, infrastruttura e rilascio (uso interno) | **0.4.5** | Bozza | `richiesta.md` v0.4 | | `blueprint.md` | Come si organizza la realizzazione: prerequisiti, pacchetti di lavoro (P) con dipendenze, tappe di collaudo (T), rischi di pianificazione; base per la stima delle ore (uso interno) | **0.4.2** | Bozza | `richiesta.md` v0.4 | | `indice-documenti.md` | Versioni in vigore e schema di versione | — | — | — | | `CLAUDE.md` | Istruzioni per Claude: regole, convenzioni, procedura di aggiornamento | — | In uso | Non segue lo schema di versione | @@ -130,3 +130,4 @@ La versione si legge nell'intestazione e in questo indice. Quando un documento v | 27/09/2026 | `costi-ricorrenti.md` a v0.4.5: le voci variabili (§4) riorganizzate in "legate a un requisito, in attesa del cliente" e "facoltative"; §3 rinominato "Spese certe". Solo forma, nessuna cifra cambiata | | 27/09/2026 | `architettura.md` a v0.4.4: tolta l'indicazione (§7) che D11 avesse deciso le "ore di manutenzione" dal secondo anno; D11 decide solo che la gestione tecnica resta a Davide con contratto separato, non i termini né le ore | | 27/09/2026 | `invii/2026-09-27_domande-cliente_v0.4.md` non ancora inviato: §2 e §3 riformulati in tono più formale e sintetico, nessun contenuto o codice cambiato | +| 27/09/2026 | B1.10 orientata su Django (Davide conosce Python, non ancora decisione formale): `architettura.md` a v0.4.5, `domande-cliente.md` a v0.4.7 |