# 18. Buone pratiche e risoluzione dei problemi Questo capitolo raccoglie i consigli che fanno la differenza tra un orario faticoso e uno costruito con serenità, e una guida ai problemi più comuni con le relative soluzioni. ## Buone pratiche per un ottimo orario ### Cura i dati: è lì che si vince o si perde La qualità dell'orario dipende quasi tutta dalla qualità dei dati in ingresso. Prima di generare, verifica che: - il **monte ore** di ogni classe sia corretto e **entri** nella griglia oraria; - **ogni** materia di **ogni** classe abbia un **docente assegnato**; - le **ore massime** dei docenti siano realistiche; - le **indisponibilità** siano davvero indispensabili (vedi sotto). ### Distingui sempre vincoli rigidi e preferenze È l'errore concettuale più frequente. Marca come **"non disponibile"** o come **indisponibilità** solo le impossibilità reali. Tutto ciò che è "gradito ma non obbligatorio" va espresso come **preferenza** ("da evitare", "preferito"). Troppi vincoli rigidi sono la causa numero uno degli orari impossibili da generare. ### Parti semplice, poi raffina Per il primo orario, usa il **preset predefinito** e l'ambito completo. Guarda il risultato, individua il punto debole dai [punteggi](14-comprendere-i-punteggi.md), poi cambia **un solo peso alla volta** e rigenera. Così capisci l'effetto di ogni modifica. ### Lavora per versioni Non aver paura di generare molte versioni: costano poco e puoi confrontarle. Tieni le più promettenti, elimina le altre per non fare confusione, e **finalizza** solo alla fine. ### Concedi tempo al motore sugli istituti grandi Se l'istituto è grande, aumenta il **tempo massimo** di calcolo o restringi l'**ambito** (genera una scuola alla volta). Più tempo e meno complessità aiutano il motore a trovare soluzioni migliori. ### Valida sempre dopo le modifiche manuali Ogni volta che [personalizzi](16-personalizzazione-orario.md) un orario, controlla la scheda **Conflitti** ed esegui la **validazione**: le modifiche manuali non sono controllate in automatico. ## Risoluzione dei problemi ### Il motore non trova alcuna soluzione Significa che i **vincoli rigidi sono in conflitto**: l'orario richiesto è *impossibile*, non solo difficile. Controlla, in quest'ordine: | Verifica | Cosa controllare | |----------|------------------| | Griglia oraria | Il totale delle ore di una classe **entra** nel numero di slot disponibili? Servono più ore nella settimana? Vedi [cap. 7](07-orari-e-campanella.md). | | Indisponibilità | Ci sono docenti con troppe ore marcate "non disponibile"? Riducile all'essenziale. Vedi [cap. 10](10-docenti.md). | | Ore massime | Le ore massime (settimanali/giornaliere) dei docenti sono sufficienti a coprire le loro assegnazioni? | | Assegnazioni | Un docente è assegnato a troppe classi rispetto al monte ore che può coprire? | | Spostamenti | Per i multi-plesso, i tempi di viaggio sono compatibili con l'intervallo tra le ore? Vedi [cap. 11](11-spostamenti.md). | Correggi il dato più sospetto e rigenera. Procedi per tentativi, cambiando **una cosa alla volta**. ### La qualità è bassa (composito basso, ma > 0) L'orario è valido ma migliorabile. Apri la scheda **Scores** ([cap. 14](14-comprendere-i-punteggi.md)), individua la **categoria più bassa** e aumenta il **peso** corrispondente nel preset, poi rigenera. Ricorda che gli obiettivi sono in parte in conflitto: migliorarne uno può peggiorarne un altro. ### Il punteggio composito è 0 C'è (almeno) una **violazione di un vincolo rigido**. Apri la scheda **Conflitti** ([cap. 15](15-revisione-orario.md#scheda-conflitti-conflicts)): elenca esattamente le violazioni. Succede tipicamente dopo una modifica manuale; correggi la lezione segnalata e valida di nuovo. ### Il calcolo va in timeout senza una buona soluzione L'istanza è troppo grande per il tempo concesso. Soluzioni: **aumenta il tempo massimo**, oppure **restringi l'ambito** (genera meno scuole/classi per volta), oppure semplifica i vincoli. ### Non vedo classi o materie nella generazione Quasi sempre mancano i **monte ore** o le **assegnazioni docenti**. Torna in [Classi](09-classi.md) e verifica che ogni classe abbia le materie con le ore e il docente. ### Un docente risulta sovraccarico Controlla la scheda **Assignments** ([cap. 15](15-revisione-orario.md)) per vedere il totale ore. Se supera il previsto, rivedi le sue **assegnazioni** in [Classi](09-classi.md) o le sue **ore massime** in [Docenti](10-docenti.md). ### Le email delle preferenze non arrivano Il sistema potrebbe essere in modalità di prova (le email vengono registrate ma non spedite). Rivolgiti a chi gestisce l'installazione. Nel frattempo puoi inserire le preferenze a mano dalla scheda del docente ([cap. 10](10-docenti.md)). ### Ho perso l'accesso / la sessione è scaduta Reinserisci le credenziali nella pagina di login ([cap. 3](03-primi-passi.md)). Se le hai smarrite, contatta l'amministratore del sistema: non esiste un recupero autonomo. ## Quando chiedere aiuto tecnico Se un problema non rientra tra quelli qui sopra — per esempio errori di sistema, pagine che non si caricano o comportamenti anomali — annota **cosa stavi facendo** e **quale messaggio** hai visto, e contatta chi gestisce l'installazione del sistema per il tuo istituto. --- Consulta il glossario per un ripasso rapido dei termini. --- [← Precedente: Esportazione](17-esportazione.md) · [Indice](README.md) · [Successivo: Glossario →](19-glossario.md)