First version 2025.07.16
+105
@@ -0,0 +1,105 @@
|
||||
# 1. Introduzione: cos'è questo sistema
|
||||
|
||||
Questo capitolo spiega **a cosa serve** lo strumento, **perché** è pensato in
|
||||
questo modo e introduce le **parole chiave** che userai in tutto il manuale.
|
||||
Leggilo con calma: capire questi concetti ora ti farà risparmiare molto tempo
|
||||
dopo.
|
||||
|
||||
## Il problema: costruire l'orario di un istituto
|
||||
|
||||
Costruire l'orario di una scuola è uno dei lavori più complessi dell'anno.
|
||||
Bisogna incastrare centinaia di lezioni in modo che:
|
||||
|
||||
- ogni classe abbia esattamente le ore previste per ciascuna materia;
|
||||
- nessun docente sia in due classi nello stesso momento;
|
||||
- si rispettino i limiti di ore giornaliere e le indisponibilità;
|
||||
- i docenti che lavorano su più plessi abbiano il tempo di spostarsi;
|
||||
- e, possibilmente, tutti siano contenti dell'orario che ricevono.
|
||||
|
||||
Fatto a mano, questo lavoro richiede giorni e produce spesso soluzioni con troppi
|
||||
"buchi", spostamenti inutili o preferenze ignorate. Questo sistema **automatizza**
|
||||
la parte più faticosa — trovare una combinazione valida — lasciando a te il
|
||||
controllo delle decisioni importanti.
|
||||
|
||||
## Il contesto della scuola italiana
|
||||
|
||||
Lo strumento è progettato per le scuole italiane, che funzionano in modo diverso
|
||||
dalle università:
|
||||
|
||||
- **Gli studenti restano nella loro aula.** Ogni classe (per esempio la "1ª A")
|
||||
è un gruppo fisso di studenti che rimane nella stessa aula per la maggior parte
|
||||
delle lezioni.
|
||||
- **Sono i docenti a spostarsi.** I professori cambiano aula tra un'ora e l'altra
|
||||
e, quando l'istituto ha più plessi, si spostano anche tra edifici diversi.
|
||||
- **Un istituto può avere più scuole.** Il sistema gestisce più edifici (plessi)
|
||||
e tiene conto dei **tempi di viaggio** tra di essi.
|
||||
|
||||
Di conseguenza l'orario non deve ottimizzare solo la sequenza delle lezioni di
|
||||
ogni classe, ma anche **i movimenti e la disponibilità dei docenti**.
|
||||
|
||||
## Cosa fa lo strumento, in breve
|
||||
|
||||
1. **Raccoglie i dati** della scuola: plessi, aule, orario delle campanelle,
|
||||
materie, classi, monte ore e docenti.
|
||||
2. **Raccoglie le preferenze** dei docenti (orari graditi, indisponibilità, sedi
|
||||
preferite, giorno libero...).
|
||||
3. **Genera automaticamente** uno o più orari con un motore di ottimizzazione.
|
||||
4. **Valuta la qualità** di ogni orario con un punteggio, così puoi confrontare le
|
||||
alternative.
|
||||
5. Ti permette di **rivedere, correggere a mano ed esportare** l'orario scelto.
|
||||
|
||||
> [Immagine: schermata iniziale del sistema con la barra laterale delle sezioni]
|
||||
> — Didascalia: la home dello strumento, con le sezioni "Configuration" e
|
||||
> "Timetable" nel menu a sinistra.
|
||||
|
||||
## Vincoli obbligatori e preferenze: la distinzione più importante
|
||||
|
||||
Tutto il funzionamento del sistema ruota intorno a due tipi di regole. Tienile
|
||||
ben distinte fin da subito:
|
||||
|
||||
- **Vincoli rigidi (obbligatori).** Regole che **devono** essere sempre
|
||||
rispettate. Se anche una sola viene violata, l'orario non è valido. Esempi: il
|
||||
monte ore di ogni materia, il divieto di doppia presenza di un docente, le
|
||||
indisponibilità dichiarate, il tempo minimo per spostarsi tra plessi.
|
||||
- **Preferenze (obiettivi di qualità).** Desideri che il sistema cerca di
|
||||
soddisfare il più possibile, ma che **può sacrificare** se necessario per
|
||||
trovare una soluzione valida. Esempi: preferire le ore del mattino, evitare i
|
||||
"buchi", ridurre gli spostamenti, rispettare gli orari graditi da un docente.
|
||||
|
||||
In pratica: i **vincoli rigidi** definiscono cosa è un orario *ammissibile*; le
|
||||
**preferenze** definiscono cosa è un orario *buono*. Il motore prima trova una
|
||||
soluzione ammissibile, poi la migliora sul fronte della qualità.
|
||||
|
||||
## Vocabolario di base
|
||||
|
||||
Questi termini ricorrono in tutto il manuale. Per la lista completa vedi il
|
||||
[Glossario](19-glossario.md).
|
||||
|
||||
| Termine | Significato |
|
||||
|---------|-------------|
|
||||
| **Anno scolastico** | Il periodo di riferimento (es. 2025-2026). Ogni dato appartiene a un anno. |
|
||||
| **Scuola / plesso** | Un edificio dell'istituto, con indirizzo e posizione. |
|
||||
| **Aula/laboratorio** | Una stanza speciale (palestra, laboratorio) richiesta da alcune materie. |
|
||||
| **Slot orario** | Una casella "giorno + ora" della griglia (es. lunedì 3ª ora). |
|
||||
| **Materia** | Una disciplina insegnata (Matematica, Italiano...). |
|
||||
| **Classe** | Un gruppo fisso di studenti (es. 2ª B) che appartiene a una scuola. |
|
||||
| **Monte ore** | Quante ore settimanali di una materia servono a una classe. |
|
||||
| **Assegnazione docente** | Il legame "questo docente insegna questa materia a questa classe". |
|
||||
| **Preferenza** | Un desiderio del docente trattato come obiettivo di qualità. |
|
||||
| **Indisponibilità** | Un periodo in cui il docente non può proprio esserci (vincolo rigido). |
|
||||
| **Versione di orario** | Un orario generato, con il suo punteggio e il suo stato (bozza/finale/archiviato). |
|
||||
|
||||
## Cosa NON copre questo manuale
|
||||
|
||||
Questo è un manuale d'uso per chi costruisce l'orario. Non tratta l'installazione,
|
||||
la configurazione tecnica del server né lo sviluppo del software: per questi temi
|
||||
esiste la documentazione tecnica nella cartella `docs/`.
|
||||
|
||||
---
|
||||
|
||||
Ora che sai cosa fa lo strumento, vediamo l'intero processo dall'alto prima di
|
||||
entrare nel dettaglio delle singole funzioni.
|
||||
|
||||
---
|
||||
|
||||
[← Indice](README.md) · [Successivo: Panoramica dal dato all'orario finale →](02-panoramica-del-processo.md)
|
||||
@@ -0,0 +1,121 @@
|
||||
# 2. Panoramica: dal dato all'orario finale
|
||||
|
||||
Prima di entrare nel dettaglio delle singole schermate, è utile avere in mente
|
||||
**l'intero percorso**. Questo capitolo è la mappa del processo: mostra i passaggi
|
||||
nell'ordine in cui li affronterai la prima volta e rimanda ai capitoli che li
|
||||
approfondiscono.
|
||||
|
||||
## La sequenza completa
|
||||
|
||||
```
|
||||
PREPARA I DATI RACCOGLI GENERA E SCEGLI RIFINISCI
|
||||
(Configurazione) PREFERENZE
|
||||
┌───────────────────┐ ┌───────────────┐ ┌────────────────────┐ ┌───────────────────┐
|
||||
│ Anno scolastico │ │ Crea campagna │ │ Configura e avvia │ │ Personalizza a │
|
||||
│ Scuole │──▶│ Invita docenti│──▶│ l'ottimizzatore │──▶│ mano (se serve) │
|
||||
│ Aule/laboratori │ │ Invia email │ │ │ │ │
|
||||
│ Orari/campanella │ │ Monitora le │ │ Confronta le │ │ Finalizza la │
|
||||
│ Materie │ │ risposte │ │ versioni e i │ │ versione scelta │
|
||||
│ Classi + monte ore│ │ │ │ punteggi │ │ │
|
||||
│ Docenti │ │ │ │ │ │ Esporta in foglio │
|
||||
│ Distanze/viaggi │ │ │ │ Scegli la migliore │ │ di calcolo │
|
||||
└───────────────────┘ └───────────────┘ └────────────────────┘ └───────────────────┘
|
||||
```
|
||||
|
||||
Le quattro fasi corrispondono alle quattro parti operative di questo manuale.
|
||||
|
||||
## Fase 1 — Prepara i dati (Configurazione)
|
||||
|
||||
È la fase più lunga, ma si fa **una volta sola** e negli anni successivi si
|
||||
aggiorna solo ciò che cambia. Inserisci, in quest'ordine consigliato:
|
||||
|
||||
1. **[Anno scolastico](04-anni-scolastici.md)** — crea l'anno di riferimento.
|
||||
Tutto il resto sarà legato ad esso.
|
||||
2. **[Scuole](05-scuole.md)** — gli edifici dell'istituto, con indirizzo e
|
||||
posizione (serve per calcolare gli spostamenti).
|
||||
3. **[Aule e laboratori](06-aule-e-laboratori.md)** — solo le stanze speciali
|
||||
(palestra, laboratori) se alcune materie le richiedono.
|
||||
4. **[Orari e campanella](07-orari-e-campanella.md)** — la griglia giorni × ore
|
||||
di ciascuna scuola.
|
||||
5. **[Materie](08-materie.md)** — l'elenco delle discipline.
|
||||
6. **[Classi](09-classi.md)** — le classi con il **monte ore** per materia e
|
||||
l'**assegnazione dei docenti** (chi insegna cosa a chi). È il cuore della
|
||||
configurazione.
|
||||
7. **[Docenti](10-docenti.md)** — l'anagrafica, i limiti (ore massime giornaliere,
|
||||
giorno libero) ed eventuali indisponibilità.
|
||||
8. **[Distanze e spostamenti](11-spostamenti.md)** — i tempi di viaggio tra i
|
||||
plessi (necessari solo se l'istituto ha più scuole).
|
||||
|
||||
> **Perché quest'ordine?** Ogni passo si appoggia ai precedenti: non puoi
|
||||
> assegnare un docente a una classe se la classe non esiste, né definire il monte
|
||||
> ore se non hai le materie. Seguire l'ordine evita di tornare indietro.
|
||||
|
||||
## Fase 2 — Raccogli le preferenze dei docenti
|
||||
|
||||
Questa fase è **facoltativa ma fortemente consigliata**: le preferenze migliorano
|
||||
molto la qualità dell'orario e il gradimento dei docenti.
|
||||
|
||||
- Crei una **campagna** per l'anno scolastico.
|
||||
- Inviti i docenti e invii loro un'email con un link personale.
|
||||
- Ogni docente compila un modulo con i propri orari graditi, indisponibilità,
|
||||
sedi preferite, giorno libero, ecc.
|
||||
- Tu **monitori** chi ha risposto.
|
||||
|
||||
Vedi [Raccolta preferenze dei docenti](12-raccolta-preferenze.md). In alternativa,
|
||||
puoi inserire le preferenze tu stesso dalla scheda del docente
|
||||
([Docenti](10-docenti.md)).
|
||||
|
||||
## Fase 3 — Genera e scegli
|
||||
|
||||
Quando i dati sono pronti:
|
||||
|
||||
1. Apri la pagina **[Generazione](13-generazione-orario.md)**, scegli l'ambito
|
||||
(tutto l'istituto o un sottoinsieme), le impostazioni e avvii il motore.
|
||||
2. Il sistema lavora e, al termine, restituisce **una o più versioni** di orario,
|
||||
ciascuna con un **punteggio di qualità**.
|
||||
3. Impari a leggere quei punteggi in [Comprendere i punteggi](14-comprendere-i-punteggi.md)
|
||||
e confronti le versioni nella pagina di [Revisione](15-revisione-orario.md).
|
||||
|
||||
## Fase 4 — Rifinisci, finalizza ed esporta
|
||||
|
||||
- Se una versione è quasi perfetta ma ha qualche dettaglio da sistemare, la
|
||||
**[personalizzi a mano](16-personalizzazione-orario.md)**: la modifica crea una
|
||||
nuova bozza, senza toccare l'originale.
|
||||
- Quando sei soddisfatto, **finalizzi** la versione scelta (diventa l'orario
|
||||
ufficiale) dalla pagina di [Revisione](15-revisione-orario.md).
|
||||
- Infine **[esporti](17-esportazione.md)** l'orario in Excel o OpenDocument per
|
||||
distribuirlo e stamparlo.
|
||||
|
||||
## Un processo iterativo, non lineare
|
||||
|
||||
Nella realtà raramente si va dritti dall'inizio alla fine. È del tutto normale:
|
||||
|
||||
- generare, guardare i punteggi, **cambiare qualche impostazione** e rigenerare;
|
||||
- accorgersi che manca un dato, **tornare alla configurazione** e correggere;
|
||||
- **personalizzare** una versione, valutarla e poi decidere.
|
||||
|
||||
Lo strumento è pensato proprio per questo ciclo: *genera → valuta → correggi →
|
||||
rigenera*. Non aver paura di creare più versioni: puoi sempre confrontarle ed
|
||||
eliminare quelle che non servono.
|
||||
|
||||
## Il tuo primo orario: percorso minimo
|
||||
|
||||
Se vuoi arrivare rapidamente a un primo risultato, questo è il percorso essenziale:
|
||||
|
||||
1. Crea l'anno scolastico e almeno una scuola.
|
||||
2. Definisci l'orario delle campanelle per quella scuola.
|
||||
3. Inserisci le materie e almeno una classe con il suo monte ore.
|
||||
4. Inserisci i docenti e assegnali alle classi/materie.
|
||||
5. Vai su **Generazione**, lascia le impostazioni predefinite e avvia.
|
||||
6. Apri la versione prodotta in **Revisione** e osservala.
|
||||
|
||||
Poi potrai raffinare aggiungendo preferenze, più classi e più plessi.
|
||||
|
||||
---
|
||||
|
||||
Nel prossimo capitolo vediamo come accedere allo strumento e come è organizzata
|
||||
l'interfaccia.
|
||||
|
||||
---
|
||||
|
||||
[← Precedente: Introduzione](01-introduzione.md) · [Indice](README.md) · [Successivo: Primi passi →](03-primi-passi.md)
|
||||
+121
@@ -0,0 +1,121 @@
|
||||
# 3. Primi passi: accesso e interfaccia
|
||||
|
||||
In questo capitolo impari ad **accedere** allo strumento e a **muoverti**
|
||||
nell'interfaccia. Sono le poche nozioni pratiche che userai in ogni sessione di
|
||||
lavoro.
|
||||
|
||||
## Accedere al sistema
|
||||
|
||||
Lo strumento si usa dal **browser** (Chrome, Firefox, Edge...). L'indirizzo web è
|
||||
quello fornito da chi ha installato il sistema per il tuo istituto.
|
||||
|
||||
1. Apri l'indirizzo del sistema nel browser.
|
||||
2. Compare la pagina di **accesso** (Login).
|
||||
3. Inserisci **nome utente e password** che ti sono stati forniti.
|
||||
4. Premi **Accedi**.
|
||||
|
||||
> [Immagine: pagina di login con i campi utente e password] — Didascalia: la
|
||||
> schermata di accesso. Le credenziali sono fornite dall'amministratore del
|
||||
> sistema.
|
||||
|
||||
Alcune indicazioni utili:
|
||||
|
||||
- **Non esiste una registrazione autonoma.** L'utente amministratore viene creato
|
||||
al momento dell'installazione. Se non hai le credenziali, richiedile a chi
|
||||
gestisce il sistema.
|
||||
- **La sessione resta attiva** sul tuo browser finché non premi *Logout*. Su un
|
||||
computer condiviso, esci sempre al termine del lavoro.
|
||||
- Se dopo un po' di inattività ricevi di nuovo la richiesta di accesso, è normale:
|
||||
reinserisci le credenziali.
|
||||
|
||||
## La struttura dell'interfaccia
|
||||
|
||||
Dopo l'accesso vedrai tre aree principali:
|
||||
|
||||
```
|
||||
┌──────────────────────────────────────────────────────────────┐
|
||||
│ INTESTAZIONE: [titolo] [Lingua: EN/IT] [Logout] │
|
||||
├───────────────┬──────────────────────────────────────────────┤
|
||||
│ BARRA │ │
|
||||
│ LATERALE │ AREA CONTENUTO │
|
||||
│ │ │
|
||||
│ Configuration│ (qui compare la pagina selezionata) │
|
||||
│ • ... │ │
|
||||
│ Timetable │ │
|
||||
│ • ... │ │
|
||||
└───────────────┴──────────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
- **Intestazione (in alto):** contiene il selettore della **lingua** e il pulsante
|
||||
**Logout**.
|
||||
- **Barra laterale (a sinistra):** il menu di navigazione, diviso in due sezioni
|
||||
(vedi sotto). Clicca una voce per aprire la pagina corrispondente.
|
||||
- **Area contenuto (al centro):** mostra la pagina selezionata, dove leggi e
|
||||
modifichi i dati.
|
||||
|
||||
> [Immagine: interfaccia completa con intestazione, barra laterale e area
|
||||
> contenuto] — Didascalia: le tre aree dell'interfaccia.
|
||||
|
||||
## Le due sezioni del menu
|
||||
|
||||
La barra laterale è organizzata secondo il processo di lavoro descritto nella
|
||||
[Panoramica](02-panoramica-del-processo.md):
|
||||
|
||||
### Configuration (Configurazione)
|
||||
Qui prepari tutti i dati della scuola:
|
||||
|
||||
| Voce di menu | Pagina del manuale |
|
||||
|--------------|--------------------|
|
||||
| Academic Years | [Anni scolastici](04-anni-scolastici.md) |
|
||||
| Schools | [Scuole](05-scuole.md) |
|
||||
| Facilities | [Aule e laboratori](06-aule-e-laboratori.md) |
|
||||
| Time Slots | [Orari e campanella](07-orari-e-campanella.md) |
|
||||
| Subjects | [Materie](08-materie.md) |
|
||||
| Class Groups | [Classi](09-classi.md) |
|
||||
| Travel Matrix | [Distanze e spostamenti](11-spostamenti.md) |
|
||||
| Teachers | [Docenti](10-docenti.md) |
|
||||
| Preferences Campaign | [Raccolta preferenze](12-raccolta-preferenze.md) |
|
||||
|
||||
### Timetable (Orario)
|
||||
Qui generi e gestisci gli orari:
|
||||
|
||||
| Voce di menu | Pagina del manuale |
|
||||
|--------------|--------------------|
|
||||
| Generate | [Generazione dell'orario](13-generazione-orario.md) |
|
||||
| Review | [Revisione delle versioni](15-revisione-orario.md) |
|
||||
|
||||
> **Nota.** Le voci dell'interfaccia sono qui riportate anche in inglese perché,
|
||||
> a seconda della lingua impostata, potresti vederle in inglese o in italiano.
|
||||
|
||||
## Cambiare la lingua
|
||||
|
||||
In alto a destra c'è il **selettore della lingua** (EN / IT). Cliccalo per passare
|
||||
tra **inglese** e **italiano**. La scelta cambia immediatamente tutte le etichette
|
||||
dell'interfaccia. Puoi cambiarla in qualsiasi momento senza perdere i dati.
|
||||
|
||||
## Elementi comuni a tutte le pagine
|
||||
|
||||
Imparerai a riconoscere alcuni elementi che si ripetono ovunque:
|
||||
|
||||
- **Pulsante "Nuovo/Aggiungi":** crea un nuovo elemento (una scuola, una classe...).
|
||||
- **Icone di modifica ed eliminazione** accanto a ogni riga di un elenco.
|
||||
- **Finestre di dialogo (modali):** si aprono sopra la pagina per creare o
|
||||
modificare un elemento; si chiudono con *Salva* o *Chiudi*.
|
||||
- **Messaggi di conferma (toast):** brevi avvisi che compaiono per confermare
|
||||
un'operazione riuscita o segnalare un errore.
|
||||
- **Doppia conferma per le eliminazioni:** le operazioni distruttive richiedono
|
||||
una conferma esplicita, per evitare cancellazioni accidentali.
|
||||
|
||||
## Uscire dal sistema
|
||||
|
||||
Premi **Logout** nell'intestazione per terminare la sessione. Verrai riportato
|
||||
alla pagina di accesso.
|
||||
|
||||
---
|
||||
|
||||
Ora sei pronto a inserire i dati. Iniziamo dall'**anno scolastico**, il
|
||||
contenitore a cui appartiene tutto il resto.
|
||||
|
||||
---
|
||||
|
||||
[← Precedente: Panoramica](02-panoramica-del-processo.md) · [Indice](README.md) · [Successivo: Anni scolastici →](04-anni-scolastici.md)
|
||||
@@ -0,0 +1,58 @@
|
||||
# 4. Anni scolastici
|
||||
|
||||
L'**anno scolastico** è il contenitore a cui appartiene ogni altro dato: scuole,
|
||||
classi, orari, preferenze e versioni di orario sono sempre riferiti a un anno
|
||||
preciso. Per questo è il **primo** elemento da creare.
|
||||
|
||||
> Voce di menu: **Configuration → Academic Years**.
|
||||
|
||||
## A cosa serve
|
||||
|
||||
Definire l'anno (per esempio `2025/2026`) ti permette di:
|
||||
|
||||
- tenere separati i dati di anni diversi (l'orario del 2024/2025 non si mescola con
|
||||
quello del 2025/2026);
|
||||
- **conservare lo storico**: gli anni passati restano consultabili;
|
||||
- lavorare al nuovo orario mentre quello vecchio resta intatto.
|
||||
|
||||
In quasi tutte le altre pagine sceglierai l'anno di riferimento da un menu a
|
||||
tendina in alto: se quel menu è vuoto, è perché non hai ancora creato nessun anno
|
||||
qui.
|
||||
|
||||
## Creare un anno scolastico
|
||||
|
||||
1. Apri **Academic Years** dal menu.
|
||||
2. Clicca **+ New Academic Year** (Nuovo anno scolastico).
|
||||
3. Inserisci l'**etichetta** dell'anno, per esempio `2025/2026`.
|
||||
- Massimo 20 caratteri.
|
||||
- Deve essere **univoca**: non possono esistere due anni con la stessa
|
||||
etichetta.
|
||||
4. Salva.
|
||||
|
||||
> [Immagine: finestra di creazione di un nuovo anno scolastico] — Didascalia: il
|
||||
> campo etichetta accetta un testo libero, tipicamente nel formato `AAAA/AAAA`.
|
||||
|
||||
## Modificare o eliminare
|
||||
|
||||
- **Modifica:** usa l'icona di modifica accanto all'anno per correggere
|
||||
l'etichetta.
|
||||
- **Elimina:** usa l'icona di eliminazione. Ti verrà chiesta una conferma.
|
||||
|
||||
> **Attenzione.** Eliminare un anno scolastico ha effetti a cascata su tutto ciò
|
||||
> che vi è collegato (classi, orari, versioni...). Elimina un anno solo se sei
|
||||
> certo di non averne più bisogno. In generale conviene **conservare** gli anni
|
||||
> passati come archivio.
|
||||
|
||||
## Consiglio pratico
|
||||
|
||||
Crea l'anno **prima** di iniziare qualsiasi altra configurazione. Se stai
|
||||
preparando l'orario per il prossimo anno mentre quello corrente è ancora in uso,
|
||||
crea semplicemente il nuovo anno: i due resteranno indipendenti.
|
||||
|
||||
---
|
||||
|
||||
Con l'anno creato, il passo successivo è definire le **scuole** dell'istituto.
|
||||
|
||||
---
|
||||
|
||||
[← Precedente: Primi passi](03-primi-passi.md) · [Indice](README.md) · [Successivo: Scuole →](05-scuole.md)
|
||||
+69
@@ -0,0 +1,69 @@
|
||||
# 5. Scuole
|
||||
|
||||
Una **scuola** (o plesso) è un edificio dell'istituto. Qui inserisci tutti gli
|
||||
edifici in cui si svolgono le lezioni. Anche se il tuo istituto ha un solo
|
||||
edificio, devi comunque crearne almeno uno.
|
||||
|
||||
> Voce di menu: **Configuration → Schools**.
|
||||
|
||||
## Perché le scuole sono importanti
|
||||
|
||||
Le scuole sono il luogo dove esistono le aule e dove i docenti si spostano. La loro
|
||||
**posizione geografica** è usata dal sistema per calcolare i **tempi di viaggio**:
|
||||
|
||||
- da un plesso all'altro (per i docenti che insegnano su più sedi);
|
||||
- da casa del docente a ciascun plesso.
|
||||
|
||||
Questi tempi diventano poi vincoli e obiettivi durante la generazione (vedi
|
||||
[Distanze e spostamenti](11-spostamenti.md) e
|
||||
[Scheduling: gli spostamenti](02-panoramica-del-processo.md)).
|
||||
|
||||
## Creare una scuola
|
||||
|
||||
1. Apri **Schools** dal menu.
|
||||
2. Clicca **+ New School** (Nuova scuola).
|
||||
3. Compila i campi:
|
||||
- **Nome** — es. `Liceo Scientifico`, `Sede centrale`, `Succursale Via Verdi`.
|
||||
- **Indirizzo** — es. `Via Roma 1, 00100 Roma`.
|
||||
- **Latitudine / Longitudine** *(facoltative)* — le coordinate geografiche, in
|
||||
gradi decimali (es. `41.8902`, `12.4964`).
|
||||
4. Salva.
|
||||
|
||||
> [Immagine: finestra di creazione scuola con nome, indirizzo e coordinate] —
|
||||
> Didascalia: le coordinate sono facoltative ma consigliate se l'istituto ha più
|
||||
> plessi.
|
||||
|
||||
## Coordinate: quando servono
|
||||
|
||||
- **Un solo plesso:** le coordinate non incidono sull'orario; puoi lasciarle
|
||||
vuote.
|
||||
- **Più plessi:** le coordinate permettono al sistema di stimare automaticamente i
|
||||
tempi di viaggio tra le sedi. In alternativa puoi inserire i tempi a mano nella
|
||||
[Travel Matrix](11-spostamenti.md).
|
||||
|
||||
Se non conosci le coordinate esatte, puoi ricavarle da una mappa online cercando
|
||||
l'indirizzo, oppure lasciare che il sistema le stimi dall'indirizzo (funzione di
|
||||
geocodifica descritta nel capitolo sugli spostamenti).
|
||||
|
||||
## Modificare o eliminare
|
||||
|
||||
- **Cerca** una scuola con la barra di ricerca quando l'elenco è lungo.
|
||||
- **Modifica** con l'icona corrispondente per aggiornare nome, indirizzo o
|
||||
coordinate.
|
||||
- **Elimina** con doppia conferma. Non eliminare una scuola a cui sono già
|
||||
collegate classi o aule, a meno che tu non voglia rimuoverle tutte.
|
||||
|
||||
## Consiglio pratico
|
||||
|
||||
Dai alle scuole nomi **chiari e distinguibili** (es. "Sede centrale" e "Succursale")
|
||||
piuttosto che sigle criptiche: quei nomi compariranno nei filtri, nelle viste
|
||||
dell'orario e nei file esportati.
|
||||
|
||||
---
|
||||
|
||||
Definiti gli edifici, puoi (se necessario) censire le **aule e i laboratori**
|
||||
speciali.
|
||||
|
||||
---
|
||||
|
||||
[← Precedente: Anni scolastici](04-anni-scolastici.md) · [Indice](README.md) · [Successivo: Aule e laboratori →](06-aule-e-laboratori.md)
|
||||
@@ -0,0 +1,69 @@
|
||||
# 6. Aule e laboratori
|
||||
|
||||
Nel linguaggio dello strumento, una **facility** (aula o laboratorio speciale) è
|
||||
una stanza a uso specifico — palestra, laboratorio di chimica, aula di musica,
|
||||
biblioteca — che alcune materie **richiedono** e che non può essere usata da due
|
||||
classi contemporaneamente.
|
||||
|
||||
> Voce di menu: **Configuration → Facilities**.
|
||||
|
||||
## Quando ti serve questa sezione
|
||||
|
||||
Ricorda che, di norma, **ogni classe ha la propria aula fissa**: quella non va
|
||||
inserita qui. Questa sezione serve **solo** per gli spazi condivisi e limitati,
|
||||
per esempio:
|
||||
|
||||
- la **palestra** (una sola, usata a turno da tante classi);
|
||||
- i **laboratori** (informatica, chimica, fisica...);
|
||||
- l'**aula magna**, l'aula di musica, ecc.
|
||||
|
||||
Se nessuna materia della tua scuola richiede spazi speciali, puoi **saltare
|
||||
completamente** questo capitolo.
|
||||
|
||||
## Perché sono importanti per l'orario
|
||||
|
||||
Il sistema tratta ogni facility come una risorsa limitata: durante la generazione
|
||||
impone come **vincolo rigido** che una stessa aula/laboratorio non sia occupata da
|
||||
due classi nello stesso momento. Così l'orario prodotto non manderà mai due classi
|
||||
in palestra alla stessa ora.
|
||||
|
||||
## Creare un'aula o un laboratorio
|
||||
|
||||
1. Apri **Facilities** dal menu.
|
||||
2. In alto puoi **filtrare per scuola** per vedere le facility di un plesso
|
||||
specifico.
|
||||
3. Clicca **+ New Facility** (Nuova facility).
|
||||
4. Compila:
|
||||
- **Scuola** — a quale plesso appartiene la stanza.
|
||||
- **Nome** — es. `Palestra A`, `Laboratorio di Chimica`.
|
||||
- **Tipo** — una parola chiave per la categoria, es. `gym`, `lab`,
|
||||
`music_room`. Puoi scegliere un suggerimento o scriverne uno tuo (max 50
|
||||
caratteri).
|
||||
5. Salva.
|
||||
|
||||
> [Immagine: finestra di creazione facility con scuola, nome e tipo] — Didascalia:
|
||||
> ogni facility appartiene a una scuola precisa.
|
||||
|
||||
> **Attenzione.** La **scuola non è modificabile** dopo la creazione. Se sbagli
|
||||
> plesso, elimina la facility e ricreala.
|
||||
|
||||
## Collegare una facility a una materia
|
||||
|
||||
Definire la facility è solo il primo passo: perché il sistema la usi, la materia
|
||||
che la richiede deve essere collegata ad essa. Questo collegamento si imposta nella
|
||||
gestione delle materie e delle classi — vedi [Materie](08-materie.md) e
|
||||
[Classi](09-classi.md).
|
||||
|
||||
## Modificare o eliminare
|
||||
|
||||
- **Modifica** per aggiornare nome o tipo.
|
||||
- **Elimina** con conferma. Verifica prima che nessuna materia dipenda ancora da
|
||||
quella facility.
|
||||
|
||||
---
|
||||
|
||||
Passiamo ora a definire **quando** si fa lezione: l'orario delle campanelle.
|
||||
|
||||
---
|
||||
|
||||
[← Precedente: Scuole](05-scuole.md) · [Indice](README.md) · [Successivo: Orari e campanella →](07-orari-e-campanella.md)
|
||||
@@ -0,0 +1,93 @@
|
||||
# 7. Orari e campanella
|
||||
|
||||
Gli **slot orari** (Time Slots) definiscono la **griglia** temporale in cui il
|
||||
sistema colloca le lezioni: quali giorni si fa lezione e in quali ore. In pratica,
|
||||
qui riproduci l'**orario delle campanelle** di ciascuna scuola.
|
||||
|
||||
> Voce di menu: **Configuration → Time Slots**.
|
||||
|
||||
## Il concetto di slot
|
||||
|
||||
Uno **slot** è la combinazione di un **giorno** e di un'**ora (periodo)**. Per
|
||||
esempio: *lunedì, 1ª ora, 8:00–8:55*. L'insieme di tutti gli slot forma la griglia
|
||||
vuota che l'ottimizzatore riempirà con le lezioni.
|
||||
|
||||
```
|
||||
Lun Mar Mer Gio Ven
|
||||
1ª [8:00] [8:00] [8:00] [8:00] [8:00]
|
||||
2ª [8:55] [8:55] [8:55] [8:55] [8:55]
|
||||
3ª ... ... ... ... ...
|
||||
```
|
||||
|
||||
Caratteristiche importanti:
|
||||
|
||||
- Gli slot sono definiti **per scuola**: plessi diversi possono avere campanelle
|
||||
diverse.
|
||||
- Ogni slot appartiene a un **anno scolastico**.
|
||||
- Ogni slot ha un **numero di periodo** (1 = prima ora), un **orario di inizio** e
|
||||
una **durata**.
|
||||
|
||||
## Prima di iniziare
|
||||
|
||||
In alto nella pagina devi selezionare **l'anno scolastico** e la **scuola** di cui
|
||||
vuoi definire gli orari. Finché non li scegli, la pagina ti invita a farlo e non
|
||||
mostra alcuna griglia.
|
||||
|
||||
> [Immagine: pagina Time Slots con i selettori di anno e scuola in alto] —
|
||||
> Didascalia: gli slot mostrati dipendono dall'anno e dalla scuola selezionati.
|
||||
|
||||
## Creare gli slot in blocco (consigliato)
|
||||
|
||||
Il modo più veloce per impostare una giornata tipo è generare più slot in una volta:
|
||||
|
||||
1. Clicca **+ Add Multiple Slots** (Aggiungi più slot).
|
||||
2. Indica:
|
||||
- **Orario di inizio** della prima ora (es. `08:00`);
|
||||
- **Durata (minuti)** di ogni ora (es. `55` o `60`);
|
||||
- **Numero di periodi** da creare (es. `6`);
|
||||
- **Numero del primo periodo** (di solito `1`).
|
||||
3. Conferma con **Add Slots**.
|
||||
|
||||
Il sistema crea automaticamente gli slot consecutivi calcolando gli orari. Ripeti
|
||||
l'operazione se alcuni giorni hanno un numero di ore diverso.
|
||||
|
||||
> **Nota sulle pause.** Se vuoi rappresentare l'intervallo, imposta gli orari in
|
||||
> modo che tra un'ora e l'altra resti il tempo dell'intervallo, oppure semplicemente
|
||||
> non creare uno slot in corrispondenza della ricreazione. La griglia deve
|
||||
> rispecchiare le ore in cui si fa **effettivamente lezione**.
|
||||
|
||||
## Creare o modificare un singolo slot
|
||||
|
||||
- **+ New Slot** crea un singolo slot: scegli numero di periodo, giorno, orario di
|
||||
inizio e fine.
|
||||
- L'icona di **modifica** su uno slot esistente permette di correggerne gli orari.
|
||||
- L'icona di **eliminazione** lo rimuove.
|
||||
|
||||
La pagina mostra un riepilogo del tipo *"X slot su Y periodi"* per aiutarti a
|
||||
controllare la coerenza della griglia.
|
||||
|
||||
## Perché la griglia è così importante
|
||||
|
||||
La qualità dell'orario dipende molto dalla griglia:
|
||||
|
||||
- Se definisci **poche ore**, il sistema potrebbe non riuscire a collocare tutto il
|
||||
monte ore delle classi (orario **non ammissibile**).
|
||||
- Se definisci **troppe ore** rispetto al necessario, il sistema avrà più libertà,
|
||||
ma potrebbero comparire più "buchi" da gestire con le preferenze di compattezza.
|
||||
|
||||
L'obiettivo è riprodurre fedelmente l'orario reale delle campanelle della scuola.
|
||||
|
||||
## Consiglio pratico
|
||||
|
||||
Definisci gli slot **coerentemente per tutte le scuole** coinvolte prima di
|
||||
generare l'orario. Se un docente lavora su due plessi con campanelle sfasate,
|
||||
è proprio grazie a questi orari che il sistema calcola se ha il tempo di spostarsi
|
||||
(vedi [Distanze e spostamenti](11-spostamenti.md)).
|
||||
|
||||
---
|
||||
|
||||
Definito il *quando*, passiamo al *cosa* si insegna: le materie.
|
||||
|
||||
---
|
||||
|
||||
[← Precedente: Aule e laboratori](06-aule-e-laboratori.md) · [Indice](README.md) · [Successivo: Materie →](08-materie.md)
|
||||
+62
@@ -0,0 +1,62 @@
|
||||
# 8. Materie
|
||||
|
||||
Le **materie** sono le discipline insegnate nell'istituto: Matematica, Italiano,
|
||||
Storia, Educazione fisica, e così via. Sono un elenco condiviso da tutte le scuole
|
||||
e da tutte le classi.
|
||||
|
||||
> Voce di menu: **Configuration → Subjects**.
|
||||
|
||||
## A cosa servono
|
||||
|
||||
Le materie sono i "mattoni" che collegano le classi ai docenti:
|
||||
|
||||
- ogni classe dichiara **quante ore** di ciascuna materia le servono (il monte ore,
|
||||
vedi [Classi](09-classi.md));
|
||||
- ogni docente viene **assegnato** a insegnare una materia a una classe.
|
||||
|
||||
Per questo le materie vanno create **prima** di configurare le classi e i docenti.
|
||||
|
||||
## Creare una materia
|
||||
|
||||
1. Apri **Subjects** dal menu.
|
||||
2. Clicca **+ New Subject** (Nuova materia).
|
||||
3. Compila:
|
||||
- **Nome** — es. `Matematica`.
|
||||
- **Codice** *(facoltativo)* — una sigla breve, es. `MAT`. Se lo usi deve
|
||||
essere **univoco** (max 50 caratteri).
|
||||
4. Salva.
|
||||
|
||||
> [Immagine: finestra di creazione materia con nome e codice] — Didascalia: il
|
||||
> codice è facoltativo ma utile per abbreviazioni e stampe compatte.
|
||||
|
||||
## Come nominare le materie
|
||||
|
||||
- Usa nomi **uniformi** in tutto l'istituto: scegli, per esempio, sempre
|
||||
`Scienze` e non a volte `Scienze naturali`. Nomi diversi verrebbero trattati
|
||||
come materie diverse.
|
||||
- Se distingui articolazioni o indirizzi, considera se conviene creare materie
|
||||
separate (es. `Matematica` e `Matematica applicata`) oppure gestirle come una
|
||||
sola. Materie separate permettono monte ore e assegnazioni distinte.
|
||||
|
||||
## Materie che richiedono un'aula speciale
|
||||
|
||||
Se una materia si svolge in un laboratorio o in palestra, ricordati di aver
|
||||
creato la relativa **facility** ([Aule e laboratori](06-aule-e-laboratori.md)): il
|
||||
collegamento tra materia e spazio speciale garantisce che il sistema non assegni
|
||||
due classi alla stessa risorsa nello stesso momento.
|
||||
|
||||
## Modificare o eliminare
|
||||
|
||||
- **Cerca**, **modifica** ed **elimina** con i controlli accanto a ciascuna
|
||||
materia.
|
||||
- Non eliminare una materia già usata nel monte ore delle classi o nelle
|
||||
assegnazioni dei docenti, salvo tu voglia rimuovere anche quei collegamenti.
|
||||
|
||||
---
|
||||
|
||||
Ora abbiamo tutti gli ingredienti di base. Il prossimo capitolo è il **cuore**
|
||||
della configurazione: le classi, il loro monte ore e l'assegnazione dei docenti.
|
||||
|
||||
---
|
||||
|
||||
[← Precedente: Orari e campanella](07-orari-e-campanella.md) · [Indice](README.md) · [Successivo: Classi →](09-classi.md)
|
||||
+114
@@ -0,0 +1,114 @@
|
||||
# 9. Classi, monte ore e assegnazione docenti
|
||||
|
||||
Questo è il **cuore** della configurazione. Una **classe** (Class Group) è un
|
||||
gruppo fisso di studenti — per esempio la `1A` — che appartiene a una scuola e a un
|
||||
anno scolastico. Su ogni classe definisci due cose fondamentali:
|
||||
|
||||
1. il **monte ore**: quante ore settimanali le servono per ciascuna materia;
|
||||
2. l'**assegnazione dei docenti**: chi insegna ciascuna materia a quella classe.
|
||||
|
||||
> Voce di menu: **Configuration → Class Groups**.
|
||||
|
||||
Da questi dati il sistema capisce **quante lezioni** deve collocare e **con quali
|
||||
docenti**: sono le informazioni più importanti per la generazione.
|
||||
|
||||
## Creare una classe
|
||||
|
||||
1. Apri **Class Groups** dal menu. In alto seleziona l'**anno scolastico**; puoi
|
||||
filtrare per **scuola**.
|
||||
2. Clicca **+ New Class Group** (Nuova classe).
|
||||
3. Compila:
|
||||
- **Scuola** — a quale plesso appartiene la classe.
|
||||
- **Nome** — es. `1A`, `3B` (max 20 caratteri).
|
||||
- **Anno di corso (Year Level)** — il livello numerico, tipicamente da `1` a
|
||||
`5`.
|
||||
4. Salva.
|
||||
|
||||
> [Immagine: finestra di creazione classe con scuola, nome e anno di corso] —
|
||||
> Didascalia: la classe appartiene a una scuola e a un anno scolastico.
|
||||
|
||||
> **Attenzione.** La **scuola non è modificabile** dopo la creazione della classe.
|
||||
|
||||
## Il monte ore (Teachings / Requirements)
|
||||
|
||||
Dopo aver creato la classe, apri la sua sezione **Teachings** (insegnamenti):
|
||||
cliccando la voce corrispondente sulla riga della classe si apre la finestra
|
||||
*"Teachings — 1A (2025/2026)"*.
|
||||
|
||||
Qui definisci, materia per materia, quante ore settimanali servono alla classe:
|
||||
|
||||
1. Aggiungi una **materia** tra quelle create in [Materie](08-materie.md).
|
||||
2. Indica le **ore settimanali** (Weekly Lesson Hrs), es. `4` per Italiano.
|
||||
3. Ripeti per tutte le materie della classe.
|
||||
|
||||
Se non hai ancora definito nulla, vedrai il messaggio *"No requirements defined
|
||||
yet"* (nessun monte ore definito).
|
||||
|
||||
> **Regola fondamentale.** Il monte ore è un **vincolo rigido**: il sistema
|
||||
> collocherà **esattamente** quel numero di ore per materia, né una di più né una
|
||||
> di meno. Controlla bene i totali: la somma delle ore di tutte le materie è il
|
||||
> numero di lezioni settimanali della classe, e deve poter entrare nella griglia
|
||||
> oraria ([Orari e campanella](07-orari-e-campanella.md)).
|
||||
|
||||
> [Immagine: finestra Teachings con l'elenco materie e le ore settimanali] —
|
||||
> Didascalia: ogni riga è una materia con il suo monte ore.
|
||||
|
||||
## L'assegnazione dei docenti
|
||||
|
||||
Sempre nella sezione Teachings colleghi a ciascuna materia il **docente** che la
|
||||
insegna a quella classe. È l'informazione che risponde alla domanda *"chi fa
|
||||
Matematica in 1A?"*.
|
||||
|
||||
- Per ogni materia della classe scegli il docente incaricato tra quelli inseriti in
|
||||
[Docenti](10-docenti.md).
|
||||
- Un docente può essere assegnato a più materie e a più classi.
|
||||
- Se assegnando un docente si superano le sue ore massime settimanali, il sistema
|
||||
ti avvisa: *"Il docente avrebbe N h/settimana ma il massimo è M h. Assegnare
|
||||
comunque?"*. Puoi procedere o rivedere l'assegnazione.
|
||||
|
||||
Quando tutte le materie hanno un docente, comparirà l'indicazione *"All subjects
|
||||
have been assigned"* (tutte le materie sono assegnate).
|
||||
|
||||
> **Perché è indispensabile.** Senza l'assegnazione dei docenti il sistema sa che
|
||||
> servono, ad esempio, 4 ore di Italiano, ma non chi le tiene: non può generare
|
||||
> l'orario. Verifica che **ogni** materia di **ogni** classe abbia il suo docente.
|
||||
|
||||
## Strumenti per andare più veloce
|
||||
|
||||
Configurare tante classi simili a mano è noioso. La pagina offre alcune scorciatoie:
|
||||
|
||||
- **Clone from …** — copia nel gruppo corrente tutto il monte ore di un'altra
|
||||
classe. Le materie già presenti non vengono duplicate.
|
||||
- **Clone to …** — copia il monte ore della classe corrente verso una o più altre
|
||||
classi selezionate.
|
||||
- **Copy teachers from …** — copia le assegnazioni dei docenti da un'altra classe,
|
||||
limitatamente alle materie presenti in entrambe.
|
||||
|
||||
Flusso tipico: configuri **una** classe "modello" per ogni indirizzo/anno di
|
||||
corso, poi usi *Clone to* e *Copy teachers from* per replicarla sulle sezioni
|
||||
parallele, correggendo solo le differenze.
|
||||
|
||||
> [Immagine: menu Clone from / Clone to / Copy teachers from] — Didascalia: gli
|
||||
> strumenti di clonazione velocizzano la configurazione di classi simili.
|
||||
|
||||
## Modificare o eliminare una classe
|
||||
|
||||
- **Modifica** per correggere nome o anno di corso (non la scuola).
|
||||
- **Elimina** con conferma: rimuove anche il monte ore e le assegnazioni collegate.
|
||||
|
||||
## Lista di controllo prima di procedere
|
||||
|
||||
Prima di passare oltre, verifica che per ogni classe:
|
||||
|
||||
- [ ] siano definite **tutte** le materie con il monte ore corretto;
|
||||
- [ ] la somma delle ore **entri** nella griglia oraria della scuola;
|
||||
- [ ] **ogni** materia abbia un **docente assegnato**.
|
||||
|
||||
---
|
||||
|
||||
Il prossimo capitolo riguarda proprio i **docenti**: anagrafica, limiti e
|
||||
preferenze.
|
||||
|
||||
---
|
||||
|
||||
[← Precedente: Materie](08-materie.md) · [Indice](README.md) · [Successivo: Docenti →](10-docenti.md)
|
||||
+98
@@ -0,0 +1,98 @@
|
||||
# 10. Docenti e preferenze
|
||||
|
||||
I **docenti** sono le persone che insegnano le materie alle classi. In questa
|
||||
pagina gestisci la loro anagrafica, i limiti contrattuali e — se vuoi inserirle tu
|
||||
stesso — le loro preferenze e indisponibilità.
|
||||
|
||||
> Voce di menu: **Configuration → Teachers**.
|
||||
|
||||
## Creare un docente
|
||||
|
||||
1. Apri **Teachers** dal menu.
|
||||
2. Clicca **+ New Teacher** (Nuovo docente).
|
||||
3. Compila i dati principali:
|
||||
- **Nome** e **Cognome** — es. `Mario` `Rossi`.
|
||||
- **Email** — es. `mario.rossi@scuola.it`. Serve per inviargli l'invito a
|
||||
compilare le preferenze (vedi [Raccolta preferenze](12-raccolta-preferenze.md)).
|
||||
- **Ore settimanali massime (Max Weekly Hours)** — es. `18`. È il tetto di ore
|
||||
che il docente può insegnare a settimana.
|
||||
- **Giorno libero (Free Day)** *(facoltativo)* — il giorno della settimana che
|
||||
il docente preferirebbe tenere libero. È una **preferenza**, non una garanzia.
|
||||
- **Latitudine / Longitudine di casa** *(facoltative)* — la posizione
|
||||
dell'abitazione, usata per stimare i tempi di spostamento casa→scuola.
|
||||
4. Salva.
|
||||
|
||||
> [Immagine: finestra di creazione docente con nome, email, ore massime e giorno
|
||||
> libero] — Didascalia: l'email è necessaria per la raccolta delle preferenze.
|
||||
|
||||
## Limiti che diventano vincoli rigidi
|
||||
|
||||
Alcuni dati del docente sono trattati come **vincoli rigidi** in fase di
|
||||
generazione:
|
||||
|
||||
- le **ore settimanali massime** e le **ore giornaliere massime** non vengono mai
|
||||
superate;
|
||||
- le **indisponibilità** dichiarate (vedi sotto) sono assolute.
|
||||
|
||||
Altri dati sono invece **preferenze** (obiettivi di qualità), come il **giorno
|
||||
libero** o gli orari graditi: il sistema cerca di rispettarli, ma può derogare se
|
||||
necessario per trovare una soluzione valida. Per la distinzione vedi
|
||||
[Introduzione](01-introduzione.md#vincoli-obbligatori-e-preferenze-la-distinzione-più-importante).
|
||||
|
||||
## Le preferenze del docente
|
||||
|
||||
Ogni docente ha una sezione **Preferences** (preferenze), che apri dalla sua riga
|
||||
nell'elenco (*"Preferences — Mario Rossi"*). Vi si trovano:
|
||||
|
||||
1. **Preferenze sugli slot** — per ogni giorno e ora, il docente può indicare:
|
||||
*neutrale*, *preferito*, *da evitare* oppure *non disponibile*. Possono anche
|
||||
essere riferite a una classe specifica.
|
||||
2. **Preferenze sulle sedi** — un ordine di gradimento tra i plessi (utile negli
|
||||
istituti con più scuole).
|
||||
3. **Caratteristiche dell'orario** — per esempio la preferenza per le ore del
|
||||
**mattino** e la preferenza per un orario **compatto** (senza "buchi").
|
||||
4. **Indisponibilità assolute** — i periodi in cui il docente non può proprio
|
||||
esserci: sono un **vincolo rigido**.
|
||||
|
||||
> **Neutrale / preferito / da evitare / non disponibile.** Attenzione alla
|
||||
> differenza: *"da evitare"* è una preferenza (il sistema cerca di rispettarla ma
|
||||
> può ignorarla), mentre *"non disponibile"* e le indisponibilità assolute sono
|
||||
> vincoli rigidi (mai violati). Usa "non disponibile" solo per impossibilità reali,
|
||||
> altrimenti rischi di rendere l'orario impossibile da costruire.
|
||||
|
||||
> [Immagine: editor delle preferenze del docente con la griglia giorni × ore] —
|
||||
> Didascalia: la griglia degli slot permette di marcare ogni ora come preferita,
|
||||
> da evitare o non disponibile.
|
||||
|
||||
## Due modi per raccogliere le preferenze
|
||||
|
||||
Hai due possibilità, che puoi anche combinare:
|
||||
|
||||
1. **Inserimento diretto** — compili tu le preferenze dalla scheda del docente,
|
||||
come appena descritto. Comodo per pochi docenti o per correzioni puntuali.
|
||||
2. **Campagna di raccolta** — inviti i docenti a compilare da soli un modulo online
|
||||
(vedi [Raccolta preferenze dei docenti](12-raccolta-preferenze.md)). Consigliato
|
||||
quando i docenti sono molti.
|
||||
|
||||
## Modificare o eliminare
|
||||
|
||||
- **Cerca** un docente con la barra di ricerca.
|
||||
- **Modifica** per aggiornare anagrafica, limiti o preferenze.
|
||||
- **Elimina** con conferma. Se il docente è assegnato a delle classi, valuta prima
|
||||
di rimuoverlo: quelle materie resterebbero senza insegnante.
|
||||
|
||||
## Consiglio pratico
|
||||
|
||||
Inserisci **ore massime realistiche** e usa le indisponibilità con parsimonia. La
|
||||
causa più comune di un orario "impossibile da generare" sono limiti e
|
||||
indisponibilità troppo stringenti che, sommati, non lasciano spazio a una
|
||||
soluzione valida (vedi [Buone pratiche e problemi](18-buone-pratiche-e-problemi.md)).
|
||||
|
||||
---
|
||||
|
||||
Se il tuo istituto ha più plessi, il prossimo passo è definire i tempi di
|
||||
spostamento tra le sedi.
|
||||
|
||||
---
|
||||
|
||||
[← Precedente: Classi](09-classi.md) · [Indice](README.md) · [Successivo: Distanze e spostamenti →](11-spostamenti.md)
|
||||
@@ -0,0 +1,77 @@
|
||||
# 11. Distanze e spostamenti (Travel Matrix)
|
||||
|
||||
Negli istituti con **più plessi**, alcuni docenti insegnano in sedi diverse anche
|
||||
nella stessa giornata. Il sistema deve sapere **quanto tempo** serve per spostarsi
|
||||
da una scuola all'altra, per non produrre orari impossibili (un docente che finisce
|
||||
in un plesso e inizia subito in un altro lontano).
|
||||
|
||||
> Voce di menu: **Configuration → Travel Matrix**.
|
||||
|
||||
## Cosa gestisce questa pagina
|
||||
|
||||
La **matrice dei tempi di viaggio** raccoglie i tempi di spostamento (in **minuti**)
|
||||
tra le sedi:
|
||||
|
||||
- **scuola → scuola**: quanto ci vuole per andare da un plesso a un altro;
|
||||
- (in secondo piano) **casa del docente → scuola**: usato per favorire i docenti
|
||||
vicini alle sedi in cui insegnano.
|
||||
|
||||
> **Un solo plesso?** Se l'istituto ha un'unica scuola, questa pagina non ti serve:
|
||||
> non ci sono spostamenti tra sedi da gestire. Puoi saltare il capitolo.
|
||||
|
||||
## Come i tempi influenzano l'orario
|
||||
|
||||
I tempi di viaggio entrano nella generazione in due modi (vedi
|
||||
[Panoramica](02-panoramica-del-processo.md)):
|
||||
|
||||
- **Come vincolo rigido:** tra due lezioni consecutive in plessi diversi deve
|
||||
esserci **tempo sufficiente** per lo spostamento. Il sistema confronta i minuti di
|
||||
viaggio con l'intervallo tra le due ore (definito dagli
|
||||
[orari delle campanelle](07-orari-e-campanella.md)).
|
||||
- **Come obiettivo di qualità:** a parità di altre condizioni, il sistema cerca di
|
||||
**ridurre** gli spostamenti totali dei docenti e di preferire le sedi vicine a
|
||||
casa loro.
|
||||
|
||||
## Inserire i tempi di viaggio
|
||||
|
||||
Per ogni coppia di scuole imposti il tempo di percorrenza:
|
||||
|
||||
1. Apri **Travel Matrix**.
|
||||
2. Scegli la scuola di partenza (**From**) e quella di arrivo (**To**).
|
||||
3. Indica i **minuti di viaggio (Travel Minutes)**.
|
||||
4. Salva.
|
||||
|
||||
I filtri in alto (From / To, con l'opzione *"Anywhere"* per non filtrare) ti
|
||||
aiutano a trovare rapidamente la coppia che ti interessa quando le scuole sono
|
||||
molte.
|
||||
|
||||
> [Immagine: tabella della Travel Matrix con le coppie di scuole e i minuti] —
|
||||
> Didascalia: ogni riga rappresenta il tempo di viaggio tra due plessi.
|
||||
|
||||
## Calcolo automatico (Recalculate)
|
||||
|
||||
Se hai inserito le **coordinate geografiche** delle scuole
|
||||
([Scuole](05-scuole.md)), puoi usare il pulsante **Recalculate** (Ricalcola) per
|
||||
far **stimare automaticamente** i tempi al sistema, a partire dagli indirizzi e
|
||||
dalle posizioni.
|
||||
|
||||
> **Attenzione: sono stime.** Il calcolo automatico si basa su una stima della
|
||||
> distanza e **non** conosce traffico, parcheggio o mezzi di trasporto. Controlla
|
||||
> sempre i valori proposti e correggi a mano le tratte che conosci: pochi minuti in
|
||||
> più o in meno possono fare la differenza tra un orario ammissibile e uno no.
|
||||
|
||||
## Consiglio pratico
|
||||
|
||||
Inserisci i tempi **in eccesso prudenziale** sulle tratte critiche. È preferibile
|
||||
un margine di sicurezza in più (che al massimo rende l'orario leggermente meno
|
||||
"compatto") piuttosto che un tempo troppo ottimistico che costringe un docente a
|
||||
una corsa impossibile tra due plessi.
|
||||
|
||||
---
|
||||
|
||||
Con questo si conclude la parte di **configurazione dei dati**. Il prossimo
|
||||
capitolo apre la fase di **raccolta delle preferenze** dei docenti.
|
||||
|
||||
---
|
||||
|
||||
[← Precedente: Docenti](10-docenti.md) · [Indice](README.md) · [Successivo: Raccolta preferenze →](12-raccolta-preferenze.md)
|
||||
@@ -0,0 +1,101 @@
|
||||
# 12. Raccolta preferenze dei docenti
|
||||
|
||||
Le preferenze dei docenti migliorano sensibilmente la qualità dell'orario e il suo
|
||||
gradimento. Invece di raccoglierle su carta o via email e inserirle a mano, puoi
|
||||
lanciare una **campagna**: il sistema invia a ogni docente un link personale per
|
||||
compilare da solo le proprie preferenze.
|
||||
|
||||
> Voce di menu: **Configuration → Preferences Campaign**.
|
||||
|
||||
Questa fase è **facoltativa**: puoi generare un orario anche senza preferenze. Ma
|
||||
è **fortemente consigliata**, perché è ciò che trasforma un orario semplicemente
|
||||
"valido" in un orario "buono" per le persone.
|
||||
|
||||
## Come funziona una campagna
|
||||
|
||||
Il ciclo di vita di una campagna è lineare:
|
||||
|
||||
```
|
||||
Crea → Invita i docenti → Invia le email → [I docenti rispondono] → Monitora le risposte
|
||||
```
|
||||
|
||||
1. **Crea** una campagna per l'anno scolastico, dandole un nome.
|
||||
2. **Invita** i docenti scegliendoli dall'elenco.
|
||||
3. **Invia** le email: ogni docente riceve un link personale.
|
||||
4. I docenti **compilano** il modulo online.
|
||||
5. Tu **monitori** chi ha risposto e chi no.
|
||||
|
||||
## Passo 1 — Creare la campagna
|
||||
|
||||
1. Apri **Preferences Campaign** dal menu.
|
||||
2. Crea una nuova campagna: scegli l'**anno scolastico** di riferimento e assegna
|
||||
un **nome** riconoscibile (es. `Preferenze 2025/2026`).
|
||||
|
||||
> [Immagine: creazione di una campagna con anno e nome] — Didascalia: ogni campagna
|
||||
> è legata a un anno scolastico.
|
||||
|
||||
## Passo 2 — Invitare i docenti
|
||||
|
||||
Seleziona, dall'elenco dei docenti inseriti in [Docenti](10-docenti.md), quelli che
|
||||
vuoi includere nella campagna. Puoi invitarli tutti o solo una parte (per esempio
|
||||
solo i nuovi docenti, se gli altri hanno già fornito le preferenze).
|
||||
|
||||
> **Requisito.** Ogni docente invitato deve avere un **indirizzo email valido**
|
||||
> nella sua scheda: è lì che verrà recapitato il link.
|
||||
|
||||
## Passo 3 — Inviare le email
|
||||
|
||||
Con il comando di invio, il sistema spedisce a ciascun docente invitato un'email
|
||||
con un **link personale e univoco**. Il link porta a un modulo online dedicato,
|
||||
senza bisogno di username o password: il collegamento stesso identifica il docente.
|
||||
|
||||
> **Privacy e sicurezza del link.** Il link è personale e va usato una sola volta.
|
||||
> Invita i docenti a non condividerlo: chi possiede il link può compilare le
|
||||
> preferenze a nome loro.
|
||||
|
||||
## Passo 4 — Cosa compila il docente
|
||||
|
||||
Il docente apre il link e trova un modulo semplice in cui può indicare, tra
|
||||
l'altro:
|
||||
|
||||
- l'**indirizzo di casa** (per il calcolo degli spostamenti);
|
||||
- il **massimo di ore giornaliere** che preferisce;
|
||||
- il **giorno libero** desiderato;
|
||||
- le **preferenze sugli slot** (per ogni giorno/ora: preferito, da evitare, non
|
||||
disponibile);
|
||||
- l'**ordine di gradimento delle sedi**;
|
||||
- le **caratteristiche dell'orario** (preferenza per il mattino, orario compatto);
|
||||
- le **indisponibilità assolute**.
|
||||
|
||||
Sono le stesse informazioni che potresti inserire tu dalla scheda del docente
|
||||
([Docenti](10-docenti.md)); qui però le fornisce direttamente l'interessato.
|
||||
|
||||
> [Immagine: il modulo online compilato dal docente] — Didascalia: il modulo è
|
||||
> pensato per essere compilato in autonomia, anche da smartphone.
|
||||
|
||||
## Passo 5 — Monitorare le risposte
|
||||
|
||||
Aprendo il **dettaglio della campagna** vedi, per ciascun invitato, se ha già
|
||||
risposto oppure no. Usa questa vista per:
|
||||
|
||||
- sollecitare chi è in ritardo;
|
||||
- decidere quando "chiudere" la raccolta e passare alla generazione.
|
||||
|
||||
> **Non serve aspettare il 100%.** Puoi generare l'orario anche se non tutti hanno
|
||||
> risposto: per i docenti senza preferenze il sistema semplicemente non avrà
|
||||
> obiettivi da rispettare, ma l'orario resterà comunque valido.
|
||||
|
||||
## In ambiente di prova
|
||||
|
||||
Se il sistema è configurato in modalità di prova, le email potrebbero non essere
|
||||
spedite davvero ma solo registrate. In tal caso rivolgiti a chi gestisce
|
||||
l'installazione per ottenere i link o per attivare l'invio reale.
|
||||
|
||||
---
|
||||
|
||||
Quando i dati sono pronti e (idealmente) le preferenze raccolte, sei pronto per il
|
||||
momento più atteso: **generare l'orario**.
|
||||
|
||||
---
|
||||
|
||||
[← Precedente: Distanze e spostamenti](11-spostamenti.md) · [Indice](README.md) · [Successivo: Generazione dell'orario →](13-generazione-orario.md)
|
||||
@@ -0,0 +1,117 @@
|
||||
# 13. Generazione dell'orario
|
||||
|
||||
È il momento in cui il sistema costruisce l'orario al posto tuo. In questa pagina
|
||||
imposti l'ambito e le impostazioni, avvii il **motore di ottimizzazione** e ne
|
||||
segui l'avanzamento in tempo reale.
|
||||
|
||||
> Voce di menu: **Timetable → Generate**.
|
||||
|
||||
## Prima di iniziare: la lista di controllo
|
||||
|
||||
La generazione riesce solo se i dati sono completi. Verifica di aver definito:
|
||||
|
||||
- [ ] l'**anno scolastico** ([cap. 4](04-anni-scolastici.md));
|
||||
- [ ] almeno una **scuola** ([cap. 5](05-scuole.md));
|
||||
- [ ] gli **orari delle campanelle** per ogni scuola ([cap. 7](07-orari-e-campanella.md));
|
||||
- [ ] le **materie** ([cap. 8](08-materie.md));
|
||||
- [ ] le **classi** con **monte ore** e **docenti assegnati** ([cap. 9](09-classi.md));
|
||||
- [ ] i **docenti** con i loro limiti ([cap. 10](10-docenti.md));
|
||||
- [ ] le **aule/laboratori** se richiesti ([cap. 6](06-aule-e-laboratori.md));
|
||||
- [ ] i **tempi di viaggio** se hai più plessi ([cap. 11](11-spostamenti.md));
|
||||
- [ ] (facoltativo) le **preferenze** dei docenti ([cap. 12](12-raccolta-preferenze.md)).
|
||||
|
||||
## Come lavora il motore, in due parole
|
||||
|
||||
Il motore prima cerca una soluzione che rispetti **tutti i vincoli rigidi**
|
||||
(orario *ammissibile*), poi la **migliora** massimizzando le preferenze (orario
|
||||
*di qualità*). Può trovare **più soluzioni** e proporti le migliori a confronto.
|
||||
Non devi capire la matematica sottostante: ti basta configurare bene i dati e
|
||||
scegliere quanto tempo concedergli.
|
||||
|
||||
## Passo 1 — Scegliere l'anno e l'ambito
|
||||
|
||||
1. Seleziona l'**anno scolastico** di destinazione.
|
||||
2. Scegli l'**ambito (scope)**:
|
||||
- **tutto l'istituto** (tutte le scuole e tutte le classi), oppure
|
||||
- un **sottoinsieme** (alcune scuole o alcune classi).
|
||||
|
||||
> **Ambito più stretto = calcolo più rapido.** Generare per una sola scuola alla
|
||||
> volta è utile per fare prove veloci o per programmare in modo incrementale
|
||||
> (generi e "congeli" una parte, poi procedi con il resto).
|
||||
|
||||
## Passo 2 — Scegliere il preset e i pesi
|
||||
|
||||
Un **preset** è una configurazione salvata che dice al sistema **quanto** dare
|
||||
importanza a ciascun obiettivo di qualità (i **pesi**).
|
||||
|
||||
- Per il **primo orario** lascia il **preset predefinito**: i pesi standard vanno
|
||||
bene nella maggior parte dei casi.
|
||||
- In seguito puoi creare preset personalizzati per dare più peso, ad esempio, alla
|
||||
**riduzione degli spostamenti** o al **rispetto delle preferenze**.
|
||||
|
||||
Passando il mouse sulle singole opzioni compaiono dei **suggerimenti** che spiegano
|
||||
a cosa serve ciascun peso. Per capire *come* i pesi influenzano il risultato, leggi
|
||||
[Comprendere i punteggi di qualità](14-comprendere-i-punteggi.md).
|
||||
|
||||
> **Regola d'oro dei pesi.** I pesi sono **priorità relative**, non percentuali.
|
||||
> Alzare il peso di un obiettivo lo fa preferire *a scapito* degli altri. Cambia
|
||||
> **un peso alla volta** e rigenera, così capisci l'effetto di ciascuna modifica.
|
||||
|
||||
> [Immagine: pagina Generate con selezione ambito, preset e pesi] — Didascalia: i
|
||||
> suggerimenti a comparsa spiegano ogni opzione.
|
||||
|
||||
## Passo 3 — Impostare le opzioni del solutore
|
||||
|
||||
Le principali impostazioni tecniche sono:
|
||||
|
||||
- **Tempo massimo (timeout):** per quanti secondi il motore può lavorare. Più tempo
|
||||
gli concedi, migliore può essere la soluzione. Per istituti grandi, aumenta questo
|
||||
valore.
|
||||
- **Numero massimo di soluzioni:** quante alternative raccogliere per il confronto.
|
||||
|
||||
Puoi partire dai valori predefiniti e regolarli in base ai risultati.
|
||||
|
||||
## Passo 4 — Avviare e seguire l'avanzamento
|
||||
|
||||
Premi **Generate** (Genera). Durante il lavoro vedrai un **avanzamento in tempo
|
||||
reale**:
|
||||
|
||||
- il numero di **soluzioni trovate** finora;
|
||||
- la **qualità** (valore obiettivo) della migliore soluzione trovata;
|
||||
- il **tempo trascorso**.
|
||||
|
||||
> [Immagine: barra di avanzamento con soluzioni trovate e tempo trascorso] —
|
||||
> Didascalia: puoi seguire il lavoro del motore mentre procede.
|
||||
|
||||
Lascia la pagina aperta durante il calcolo. Se la connessione in tempo reale
|
||||
dovesse interrompersi, il sistema continua comunque a lavorare e aggiorna lo stato
|
||||
periodicamente.
|
||||
|
||||
## Passo 5 — Leggere l'esito
|
||||
|
||||
Al termine, il riepilogo mostra:
|
||||
|
||||
- quante **soluzioni** sono state trovate;
|
||||
- la **qualità** della migliore;
|
||||
- quante **lezioni (voci di orario)** sono state collocate;
|
||||
- il collegamento per **vedere l'orario** generato.
|
||||
|
||||
Da qui passi alla pagina di [Revisione](15-revisione-orario.md), dove le versioni
|
||||
prodotte si analizzano e si confrontano in dettaglio.
|
||||
|
||||
## Se non trova soluzioni
|
||||
|
||||
Se il motore **non trova alcuna soluzione**, quasi sempre significa che i vincoli
|
||||
rigidi sono in conflitto (l'orario richiesto è *impossibile*, non solo difficile).
|
||||
Le cause tipiche sono monte ore che non entra nella griglia, indisponibilità
|
||||
eccessive o tempi di viaggio incompatibili. Trovi la diagnostica passo-passo in
|
||||
[Buone pratiche e risoluzione dei problemi](18-buone-pratiche-e-problemi.md).
|
||||
|
||||
---
|
||||
|
||||
Prima di confrontare le versioni, impariamo a **leggere i punteggi** che ne
|
||||
misurano la qualità.
|
||||
|
||||
---
|
||||
|
||||
[← Precedente: Raccolta preferenze](12-raccolta-preferenze.md) · [Indice](README.md) · [Successivo: Comprendere i punteggi →](14-comprendere-i-punteggi.md)
|
||||
@@ -0,0 +1,87 @@
|
||||
# 14. Comprendere i punteggi di qualità
|
||||
|
||||
Ogni versione di orario generata riceve dei **punteggi** che ne misurano la
|
||||
qualità. Capirli ti permette di **confrontare** le versioni e di scegliere con
|
||||
consapevolezza, invece di affidarti all'impressione. Questo capitolo spiega cosa
|
||||
significano, senza formule complicate.
|
||||
|
||||
## Le due domande a cui rispondono i punteggi
|
||||
|
||||
1. *L'orario è valido?* → lo dicono i **vincoli rigidi**.
|
||||
2. *Quanto è buono?* → lo dice il **punteggio composito** e la sua scomposizione
|
||||
per categoria.
|
||||
|
||||
## Il punteggio composito (0–100)
|
||||
|
||||
Il **punteggio composito** riassume la qualità complessiva in un unico numero da
|
||||
**0 a 100**: più è alto, migliore è l'orario. È una **media pesata** dei singoli
|
||||
obiettivi di qualità, dove i "pesi" sono quelli che hai scelto nel preset di
|
||||
generazione ([cap. 13](13-generazione-orario.md)).
|
||||
|
||||
> **La regola più importante.** Se un orario viola **anche un solo vincolo rigido**,
|
||||
> il suo punteggio composito è forzato a **0**, indipendentemente da quanto sia
|
||||
> buono sul resto. Un composito pari a 0 è quindi un campanello d'allarme: guarda
|
||||
> subito la scheda dei **conflitti** ([cap. 15](15-revisione-orario.md#scheda-conflitti-conflicts)).
|
||||
|
||||
> **Il composito è assoluto.** Ogni versione è valutata per conto proprio, non "in
|
||||
> classifica" rispetto alle altre. Puoi quindi confrontare direttamente i compositi
|
||||
> di due versioni: 82 è meglio di 75.
|
||||
|
||||
## Le categorie di qualità
|
||||
|
||||
Il composito nasce dalla combinazione di più **categorie**, ciascuna delle quali
|
||||
misura un aspetto dell'orario con un valore da **0 a 1** (spesso mostrato come
|
||||
percentuale): **1 = pienamente soddisfatta**, **0 = del tutto disattesa**.
|
||||
|
||||
| Categoria | Cosa misura |
|
||||
|-----------|-------------|
|
||||
| **Slot preferiti** | Quanti degli orari *preferiti* dai docenti sono stati effettivamente usati. |
|
||||
| **Slot da evitare** | Quanto si è riusciti a **non** usare gli orari che i docenti volevano evitare. |
|
||||
| **Preferenza mattino** | Quanta parte delle lezioni cade al mattino, per chi lo preferisce. |
|
||||
| **Orario compatto** | Quanto le lezioni di ogni docente sono consecutive, senza "buchi". |
|
||||
| **Tempo di viaggio** | Quanto sono contenuti gli spostamenti tra plessi. |
|
||||
| **Giorno libero** | Se il giorno libero preferito dal docente è stato rispettato. |
|
||||
| **Distribuzione delle classi** | Quanto le ore di una stessa classe sono distribuite su più giorni (invece di ammassarsi). |
|
||||
| **Tragitto casa-scuola** | Quanto è contenuto il tragitto da casa alle sedi. |
|
||||
|
||||
> **Categorie non applicabili.** Se una categoria non riguarda un docente (per
|
||||
> esempio non ha indicato un giorno libero), per lui quella categoria vale come
|
||||
> pienamente soddisfatta e non penalizza il punteggio.
|
||||
|
||||
## Dove leggi i punteggi
|
||||
|
||||
- **Nella lista delle versioni** ([Revisione](15-revisione-orario.md)) vedi il
|
||||
**composito** di ciascuna versione, utile per un confronto immediato.
|
||||
- **Nella scheda "Scores"** del dettaglio vedi la **scomposizione per categoria**
|
||||
con grafici a barre e radar, e anche il **dettaglio per singolo docente**.
|
||||
|
||||
> [Immagine: scheda Scores con grafico a barre delle categorie e grafico radar] —
|
||||
> Didascalia: la scomposizione mostra quali obiettivi sono soddisfatti e quali no.
|
||||
|
||||
## Come usare i punteggi nella pratica
|
||||
|
||||
- **Confronta due versioni** guardando prima il composito, poi le categorie: una
|
||||
versione può avere composito più basso ma essere migliore proprio
|
||||
sull'aspetto che a te sta più a cuore.
|
||||
- **Individua il punto debole:** la categoria con il valore più basso ti dice cosa
|
||||
migliorare. Se, ad esempio, "Orario compatto" è basso, aumenta il peso della
|
||||
compattezza nel preset e rigenera.
|
||||
- **Non inseguire il 100.** Gli obiettivi sono spesso in conflitto tra loro
|
||||
(ridurre i buchi può aumentare gli spostamenti, e viceversa): un buon orario è un
|
||||
**compromesso equilibrato**, non un punteggio perfetto ovunque.
|
||||
|
||||
## Legame con i pesi della generazione
|
||||
|
||||
I **pesi** scelti in fase di generazione decidono **quanto** ciascuna categoria
|
||||
incide sul composito. Alzare il peso di una categoria spinge il motore a curarla di
|
||||
più, tipicamente a scapito di altre. È il meccanismo con cui traduci le priorità
|
||||
del tuo istituto in numeri. Rivedi [Generazione — pesi](13-generazione-orario.md#passo-2--scegliere-il-preset-e-i-pesi).
|
||||
|
||||
---
|
||||
|
||||
Vediamo ora la pagina in cui tutti questi dati si consultano e si confrontano: la
|
||||
Revisione.
|
||||
|
||||
---
|
||||
|
||||
[← Precedente: Generazione dell'orario](13-generazione-orario.md) · [Indice](README.md) · [Successivo: Revisione e confronto →](15-revisione-orario.md)
|
||||
@@ -0,0 +1,113 @@
|
||||
# 15. Revisione e confronto delle versioni
|
||||
|
||||
Dopo la generazione, la pagina di **Revisione** è il tuo centro di controllo: qui
|
||||
vedi tutte le versioni di orario prodotte per un anno, le apri in dettaglio, le
|
||||
confronti, e infine ne finalizzi una come orario ufficiale.
|
||||
|
||||
> Voce di menu: **Timetable → Review**.
|
||||
|
||||
## L'elenco delle versioni
|
||||
|
||||
Selezionato l'anno scolastico, vedi l'elenco delle **versioni** generate. Per
|
||||
ciascuna sono indicati:
|
||||
|
||||
- il **punteggio composito** (0–100) — vedi [Comprendere i punteggi](14-comprendere-i-punteggi.md);
|
||||
- lo **stato**: *bozza (draft)*, *finale (final)* o *archiviata (archived)*;
|
||||
- la **data di creazione**.
|
||||
|
||||
Espandendo una versione ne vedi una sintesi della valutazione. È qui che confronti
|
||||
"a colpo d'occhio" le alternative prima di aprirne una.
|
||||
|
||||
> [Immagine: elenco delle versioni con punteggio e stato] — Didascalia: ogni riga è
|
||||
> una versione generata; il punteggio aiuta a confrontarle.
|
||||
|
||||
## Gli stati di una versione
|
||||
|
||||
| Stato | Significato |
|
||||
|-------|-------------|
|
||||
| **Bozza (draft)** | Versione di lavoro: può essere modificata, personalizzata o eliminata. |
|
||||
| **Finale (final)** | La versione approvata come orario ufficiale; bloccata contro modifiche accidentali. |
|
||||
| **Archiviata (archived)** | Versione conservata come storico, non più attiva. |
|
||||
|
||||
## Il dettaglio di una versione
|
||||
|
||||
Cliccando una versione ne apri il **dettaglio**, organizzato in quattro schede.
|
||||
|
||||
### Scheda griglia (Grid)
|
||||
È l'orario vero e proprio, in forma di tabella giorni × ore. Puoi **filtrare** la
|
||||
vista per:
|
||||
|
||||
- **classe** — l'orario di una singola classe;
|
||||
- **docente** — l'orario di un singolo insegnante;
|
||||
- **scuola** — l'orario di un plesso;
|
||||
- **materia** o **giorno**.
|
||||
|
||||
Ogni cella mostra l'assegnazione: materia, docente e — se prevista — l'aula/
|
||||
laboratorio. È la vista che userai di più per controllare "a occhio" l'orario.
|
||||
|
||||
> [Immagine: scheda Grid con la tabella giorni × ore e i filtri] — Didascalia:
|
||||
> cambia il filtro per vedere l'orario dal punto di vista di una classe o di un
|
||||
> docente.
|
||||
|
||||
### Scheda punteggi (Scores)
|
||||
La scomposizione della qualità con grafici (barre e radar) e il **dettaglio per
|
||||
docente**. Serve a capire i punti di forza e di debolezza della versione. Per
|
||||
interpretarla, vedi [Comprendere i punteggi](14-comprendere-i-punteggi.md).
|
||||
|
||||
### Scheda assegnazioni (Assignments)
|
||||
Il riepilogo del **carico di lavoro** dei docenti:
|
||||
|
||||
- ore totali settimanali per docente;
|
||||
- distribuzione tra le classi;
|
||||
- necessità di spostamento per chi insegna su più plessi.
|
||||
|
||||
Utile per verificare che nessun docente sia sovraccarico e per controllare gli
|
||||
spostamenti.
|
||||
|
||||
### Scheda conflitti (Conflicts)
|
||||
Elenca le eventuali **violazioni di vincoli rigidi**. Per una versione generata dal
|
||||
motore **dovrebbe essere vuota**. Se contiene qualcosa (tipicamente dopo una
|
||||
[personalizzazione manuale](16-personalizzazione-orario.md)), qui trovi
|
||||
esattamente cosa non va — per esempio un docente in due classi contemporaneamente o
|
||||
un monte ore non rispettato.
|
||||
|
||||
> **Ricorda:** qualsiasi conflitto rigido porta il punteggio composito a **0**.
|
||||
> Controlla questa scheda ogni volta che il composito è 0.
|
||||
|
||||
## Confrontare le versioni
|
||||
|
||||
Poiché l'elenco mostra tutte le versioni dello stesso anno, puoi confrontarle su:
|
||||
|
||||
- il **composito** (qualità complessiva);
|
||||
- le **categorie** di qualità (aprendo la scheda Scores di ciascuna);
|
||||
- il **numero di lezioni collocate** e il carico dei docenti.
|
||||
|
||||
Un metodo pratico: apri due versioni in due schede del browser e confrontane le
|
||||
schede *Scores* e *Grid* fianco a fianco.
|
||||
|
||||
## Finalizzare una versione
|
||||
|
||||
Quando hai scelto l'orario definitivo, clicca **Finalize** (Finalizza) sulla
|
||||
versione:
|
||||
|
||||
- lo stato passa a **finale**;
|
||||
- la versione viene **bloccata** contro ulteriori modifiche accidentali.
|
||||
|
||||
Finalizza **solo** una versione priva di conflitti e che ti soddisfa: è il segnale
|
||||
che quello è l'orario ufficiale. Se in seguito devi correggerla, usa la
|
||||
[personalizzazione](16-personalizzazione-orario.md), che lavora su una copia.
|
||||
|
||||
## Eliminare una versione
|
||||
|
||||
Con **Delete** (Elimina) rimuovi una versione che non ti serve. L'operazione
|
||||
richiede una **doppia conferma** per evitare cancellazioni accidentali. Elimina
|
||||
liberamente le bozze scartate per tenere l'elenco pulito.
|
||||
|
||||
---
|
||||
|
||||
Se una versione è quasi perfetta ma va ritoccata, il prossimo capitolo spiega come
|
||||
modificarla a mano.
|
||||
|
||||
---
|
||||
|
||||
[← Precedente: Comprendere i punteggi](14-comprendere-i-punteggi.md) · [Indice](README.md) · [Successivo: Personalizzazione manuale →](16-personalizzazione-orario.md)
|
||||
@@ -0,0 +1,82 @@
|
||||
# 16. Personalizzazione manuale
|
||||
|
||||
Anche il miglior orario automatico a volte va ritoccato: un cambio dell'ultimo
|
||||
minuto, un caso particolare che il motore non poteva conoscere, una richiesta
|
||||
sopraggiunta. La **personalizzazione** ti permette di modificare a mano una
|
||||
versione mantenendo il pieno controllo.
|
||||
|
||||
> Si apre con **Customize** (Personalizza) dalla pagina di
|
||||
> [Revisione](15-revisione-orario.md) di una versione.
|
||||
|
||||
## Il principio: si lavora su una copia
|
||||
|
||||
Quando personalizzi una versione, il sistema **non** modifica l'originale: crea una
|
||||
**nuova bozza** derivata da essa. Questo significa che:
|
||||
|
||||
- l'orario di partenza resta **intatto** e sempre recuperabile;
|
||||
- puoi fare esperimenti senza timore;
|
||||
- puoi generare più varianti manuali e confrontarle come qualsiasi altra versione.
|
||||
|
||||
> [Immagine: pagina Customize con la tabella delle assegnazioni modificabili] —
|
||||
> Didascalia: le modifiche creano una nuova bozza, senza toccare la versione
|
||||
> originale.
|
||||
|
||||
## Cosa puoi fare
|
||||
|
||||
Nella pagina di personalizzazione vedi **tutte le assegnazioni** (le singole
|
||||
lezioni) in una tabella filtrabile e ordinabile. Su ciascuna puoi:
|
||||
|
||||
- **Modificare** una lezione: cambiare lo **slot** (giorno/ora), il **docente**
|
||||
oppure l'**aula/laboratorio**.
|
||||
- **Rimuovere** una lezione: eliminare una specifica assegnazione.
|
||||
- **Aggiungere** una lezione: inserire manualmente una nuova assegnazione.
|
||||
- **Salvare** le modifiche: viene creata la **nuova bozza** derivata dall'originale.
|
||||
|
||||
## Attenzione: le modifiche manuali non sono controllate in automatico
|
||||
|
||||
Questo è il punto più importante da ricordare.
|
||||
|
||||
> **Le modifiche manuali NON vengono ri-validate automaticamente.** Spostando una
|
||||
> lezione potresti, senza accorgertene, creare un conflitto: due lezioni della
|
||||
> stessa classe alla stessa ora, un docente in due posti insieme, un monte ore non
|
||||
> più rispettato, un tempo di viaggio insufficiente.
|
||||
|
||||
Per questo, **dopo** ogni sessione di modifiche:
|
||||
|
||||
1. Salva la nuova bozza.
|
||||
2. Aprila in [Revisione](15-revisione-orario.md) e controlla la **scheda
|
||||
Conflitti**.
|
||||
3. Usa la funzione di **validazione (Validate)** per verificare che non siano stati
|
||||
introdotti conflitti rigidi.
|
||||
|
||||
Se la scheda Conflitti è vuota e il punteggio composito non è 0, la tua versione
|
||||
manuale è valida.
|
||||
|
||||
## Quando personalizzare e quando rigenerare
|
||||
|
||||
- **Personalizza** per **piccoli ritocchi**: spostare una o due lezioni, sostituire
|
||||
un docente per una supplenza, cambiare un'aula. Sono interventi mirati che non
|
||||
giustificano una nuova generazione.
|
||||
- **Rigenera** ([cap. 13](13-generazione-orario.md)) quando i cambiamenti sono
|
||||
**strutturali**: è cambiato il monte ore, si è aggiunta una classe o un docente,
|
||||
sono cambiate molte preferenze. In questi casi conviene ripartire dal motore.
|
||||
|
||||
## Un flusso di lavoro efficace
|
||||
|
||||
Il modo migliore di usare lo strumento combina automatico e manuale:
|
||||
|
||||
```
|
||||
Genera → Scegli la versione migliore → Personalizza i dettagli → Valida → Finalizza
|
||||
```
|
||||
|
||||
Così sfrutti la potenza del motore per il grosso del lavoro e il tuo giudizio per
|
||||
gli ultimi ritocchi.
|
||||
|
||||
---
|
||||
|
||||
Quando la versione è pronta e finalizzata, l'ultimo passo è portarla fuori dal
|
||||
sistema: l'esportazione.
|
||||
|
||||
---
|
||||
|
||||
[← Precedente: Revisione e confronto](15-revisione-orario.md) · [Indice](README.md) · [Successivo: Esportazione →](17-esportazione.md)
|
||||
@@ -0,0 +1,67 @@
|
||||
# 17. Esportazione in foglio di calcolo
|
||||
|
||||
Una volta scelto (ed eventualmente rifinito e finalizzato) l'orario, dovrai
|
||||
distribuirlo a docenti e classi, stamparlo e magari conservarlo negli archivi
|
||||
della scuola. Lo strumento permette di **esportare** l'orario in un foglio di
|
||||
calcolo pronto all'uso.
|
||||
|
||||
## Formati disponibili
|
||||
|
||||
Puoi esportare in due formati, entrambi apribili con i più comuni programmi da
|
||||
ufficio:
|
||||
|
||||
- **XLSX** — il formato di Microsoft Excel (apribile anche con LibreOffice,
|
||||
Google Fogli, ecc.).
|
||||
- **ODS** — il formato OpenDocument (LibreOffice/OpenOffice Calc).
|
||||
|
||||
Scegli il formato in base al programma che usi abitualmente; il contenuto è
|
||||
identico.
|
||||
|
||||
## Da dove si esporta
|
||||
|
||||
L'esportazione si avvia dalla pagina di [Revisione](15-revisione-orario.md) o dal
|
||||
**dettaglio** della versione. Individua la versione che vuoi esportare e usa il
|
||||
comando di esportazione, scegliendo il formato.
|
||||
|
||||
> [Immagine: comando di esportazione con scelta del formato XLSX/ODS] —
|
||||
> Didascalia: l'esportazione parte dalla versione selezionata.
|
||||
|
||||
## Cosa contiene il file
|
||||
|
||||
Il foglio di calcolo generato è organizzato per essere subito utilizzabile e
|
||||
comprende:
|
||||
|
||||
- un **foglio per ogni classe** — l'orario settimanale della classe, pronto da
|
||||
affiggere o distribuire;
|
||||
- un **foglio per ogni docente** — l'orario personale di ciascun insegnante;
|
||||
- un **foglio di riepilogo** con i **punteggi di valutazione** della versione.
|
||||
|
||||
In questo modo, dallo stesso file, ricavi sia i prospetti da consegnare alle classi
|
||||
sia quelli individuali per i docenti.
|
||||
|
||||
## Consigli per la distribuzione
|
||||
|
||||
- **Esporta la versione finalizzata**, non una bozza di lavoro: eviti di far
|
||||
circolare orari provvisori.
|
||||
- Prima di stampare, dai un'occhiata all'**anteprima di stampa** del foglio di
|
||||
calcolo e regola margini e orientamento (l'orizzontale spesso rende meglio per le
|
||||
griglie settimanali).
|
||||
- Conserva una copia del file di esportazione insieme alla documentazione
|
||||
dell'anno: sarà un utile riferimento e punto di partenza per l'anno successivo.
|
||||
|
||||
## E se devo ancora fare modifiche?
|
||||
|
||||
Se dopo l'esportazione emerge la necessità di un cambiamento, **non** modificare il
|
||||
foglio di calcolo: le modifiche fatte lì non tornano nel sistema e rischi di far
|
||||
circolare versioni discordanti. Torna invece nello strumento, usa la
|
||||
[personalizzazione](16-personalizzazione-orario.md), valida e **riesporta**. Il
|
||||
file esportato deve sempre rispecchiare l'orario "ufficiale" presente nel sistema.
|
||||
|
||||
---
|
||||
|
||||
Hai completato l'intero percorso: dai dati all'orario esportato. L'ultima parte del
|
||||
manuale raccoglie consigli pratici e soluzioni ai problemi più comuni.
|
||||
|
||||
---
|
||||
|
||||
[← Precedente: Personalizzazione manuale](16-personalizzazione-orario.md) · [Indice](README.md) · [Successivo: Buone pratiche e problemi →](18-buone-pratiche-e-problemi.md)
|
||||
@@ -0,0 +1,112 @@
|
||||
# 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)
|
||||
+111
@@ -0,0 +1,111 @@
|
||||
# 19. Glossario
|
||||
|
||||
Definizioni brevi dei termini usati nel manuale e nell'interfaccia. Dove utile, il
|
||||
rimando porta al capitolo che approfondisce il concetto. Tra parentesi, in
|
||||
corsivo, l'etichetta inglese che potresti vedere nell'interfaccia.
|
||||
|
||||
### Ambito / Scope *(scope)*
|
||||
La porzione di orario da generare: tutto l'istituto oppure un sottoinsieme di scuole
|
||||
o classi. Un ambito più stretto rende il calcolo più rapido. Vedi
|
||||
[cap. 13](13-generazione-orario.md).
|
||||
|
||||
### Anno scolastico *(academic year)*
|
||||
Il periodo di riferimento (es. 2025/2026) a cui appartengono tutti i dati. Vedi
|
||||
[cap. 4](04-anni-scolastici.md).
|
||||
|
||||
### Assegnazione (docente) *(teacher assignment)*
|
||||
Il legame "questo docente insegna questa materia a questa classe". Senza
|
||||
assegnazioni il sistema non sa chi tiene le lezioni. Vedi [cap. 9](09-classi.md).
|
||||
|
||||
### Aula/laboratorio *(facility)*
|
||||
Una stanza a uso speciale e condiviso (palestra, laboratorio) richiesta da alcune
|
||||
materie e non usabile da due classi insieme. Vedi [cap. 6](06-aule-e-laboratori.md).
|
||||
|
||||
### Bozza *(draft)*
|
||||
Stato di una versione di orario ancora modificabile. Vedi [cap. 15](15-revisione-orario.md).
|
||||
|
||||
### Campagna (di raccolta preferenze) *(campaign)*
|
||||
L'iniziativa con cui inviti i docenti a compilare le loro preferenze tramite un link
|
||||
personale. Vedi [cap. 12](12-raccolta-preferenze.md).
|
||||
|
||||
### Classe *(class group)*
|
||||
Un gruppo fisso di studenti (es. 1A) che appartiene a una scuola e resta nella
|
||||
propria aula. Vedi [cap. 9](09-classi.md).
|
||||
|
||||
### Composito (punteggio) *(composite score)*
|
||||
Il punteggio complessivo di qualità di una versione, da 0 a 100. Una violazione
|
||||
rigida lo azzera. Vedi [cap. 14](14-comprendere-i-punteggi.md).
|
||||
|
||||
### Conflitto *(conflict)*
|
||||
Una violazione di un vincolo rigido in una versione di orario. Elencati nell'apposita
|
||||
scheda del dettaglio. Vedi [cap. 15](15-revisione-orario.md#scheda-conflitti-conflicts).
|
||||
|
||||
### Finalizzare *(finalize)*
|
||||
Approvare una versione come orario ufficiale, bloccandola contro modifiche
|
||||
accidentali. Vedi [cap. 15](15-revisione-orario.md).
|
||||
|
||||
### Generazione / Ottimizzazione *(generate / optimization)*
|
||||
Il processo con cui il motore costruisce automaticamente l'orario rispettando i
|
||||
vincoli e massimizzando la qualità. Vedi [cap. 13](13-generazione-orario.md).
|
||||
|
||||
### Giorno libero *(free day)*
|
||||
Il giorno che un docente preferirebbe tenere libero da lezioni. È una **preferenza**,
|
||||
non una garanzia. Vedi [cap. 10](10-docenti.md).
|
||||
|
||||
### Indisponibilità *(unavailability)*
|
||||
Un periodo in cui un docente non può proprio esserci: è un **vincolo rigido**,
|
||||
sempre rispettato. Da non confondere con la preferenza "da evitare". Vedi
|
||||
[cap. 10](10-docenti.md).
|
||||
|
||||
### Materia *(subject)*
|
||||
Una disciplina insegnata (Matematica, Italiano...). Vedi [cap. 8](08-materie.md).
|
||||
|
||||
### Monte ore / Requisito *(subject requirement)*
|
||||
Le ore settimanali di una materia richieste da una classe. È un **vincolo rigido**:
|
||||
vengono collocate esattamente. Vedi [cap. 9](09-classi.md).
|
||||
|
||||
### Orario compatto / Compattezza *(compactness)*
|
||||
La qualità di un orario senza "buchi" tra le lezioni di un docente nello stesso
|
||||
giorno. Obiettivo di qualità. Vedi [cap. 14](14-comprendere-i-punteggi.md).
|
||||
|
||||
### Peso *(weight)*
|
||||
Il valore che stabilisce quanta importanza dare a un obiettivo di qualità durante la
|
||||
generazione. I pesi sono priorità relative, non percentuali. Vedi
|
||||
[cap. 13](13-generazione-orario.md).
|
||||
|
||||
### Plesso / Scuola *(school)*
|
||||
Un edificio dell'istituto. Vedi [cap. 5](05-scuole.md).
|
||||
|
||||
### Preferenza *(preference)*
|
||||
Un desiderio (del docente o dell'istituto) trattato come **obiettivo di qualità**:
|
||||
il sistema cerca di soddisfarlo ma può derogare. Contrapposto al vincolo rigido.
|
||||
Vedi [cap. 1](01-introduzione.md).
|
||||
|
||||
### Preset *(preset)*
|
||||
Una configurazione salvata di pesi e impostazioni per la generazione, riutilizzabile.
|
||||
Vedi [cap. 13](13-generazione-orario.md).
|
||||
|
||||
### Slot orario *(time slot)*
|
||||
Una casella "giorno + ora" della griglia oraria (es. lunedì, 3ª ora). Vedi
|
||||
[cap. 7](07-orari-e-campanella.md).
|
||||
|
||||
### Tempo massimo *(timeout)*
|
||||
Il tempo massimo concesso al motore per cercare una soluzione. Vedi
|
||||
[cap. 13](13-generazione-orario.md).
|
||||
|
||||
### Vincolo rigido *(hard constraint)*
|
||||
Una regola che **deve** sempre essere rispettata; se violata, l'orario non è valido.
|
||||
Contrapposto alla preferenza. Vedi [cap. 1](01-introduzione.md).
|
||||
|
||||
### Versione (di orario) *(timetable version)*
|
||||
Un orario generato, con il suo punteggio e il suo stato (bozza/finale/archiviata).
|
||||
Vedi [cap. 15](15-revisione-orario.md).
|
||||
|
||||
---
|
||||
|
||||
Questo conclude il manuale. Per ricominciare da capo o consultare un altro
|
||||
argomento, torna all'[Indice](README.md).
|
||||
|
||||
---
|
||||
|
||||
[← Precedente: Buone pratiche e problemi](18-buone-pratiche-e-problemi.md) · [Indice](README.md)
|
||||
+63
@@ -0,0 +1,63 @@
|
||||
# Manuale d'uso — Generatore di orario scolastico
|
||||
|
||||
Benvenuto nel manuale del sistema di **pianificazione e ottimizzazione dell'orario
|
||||
scolastico**. Questo strumento aiuta chi si occupa dell'orario (la cosiddetta
|
||||
"funzione strumentale orario", un collaboratore del Dirigente o chiunque abbia
|
||||
questo incarico) a costruire un orario di qualità per un istituto composto da una
|
||||
o più scuole, riducendo drasticamente il lavoro manuale.
|
||||
|
||||
Il sistema raccoglie i dati della scuola (aule, classi, materie, docenti, monte
|
||||
ore) e le preferenze dei docenti, quindi genera automaticamente uno o più orari
|
||||
che rispettano tutti i **vincoli obbligatori** e cercano di massimizzare la
|
||||
**qualità complessiva** (meno spostamenti, meno "buchi", rispetto delle
|
||||
preferenze). Tu resti sempre al comando: puoi confrontare le versioni, correggerle
|
||||
a mano ed esportarle.
|
||||
|
||||
## Come leggere questo manuale
|
||||
|
||||
Il manuale è pensato per essere letto **in ordine** la prima volta: i capitoli
|
||||
seguono la sequenza reale di lavoro, dall'inserimento dei dati fino all'orario
|
||||
finale esportato. Ogni pagina termina con i collegamenti alla pagina
|
||||
**precedente** e **successiva**, oltre che a questo indice.
|
||||
|
||||
Se hai già dimestichezza con lo strumento, usa l'indice qui sotto per saltare
|
||||
direttamente all'argomento che ti interessa.
|
||||
|
||||
> **Nota sulle immagini.** In questo manuale le schermate sono indicate con
|
||||
> segnaposto del tipo `[Immagine: ...]`. Sostituiscili con le catture reali
|
||||
> dell'interfaccia della tua installazione quando distribuisci il manuale.
|
||||
|
||||
## Indice
|
||||
|
||||
### Parte 1 — Introduzione e orientamento
|
||||
1. [Introduzione: cos'è questo sistema](01-introduzione.md) — cosa fa lo strumento, il contesto della scuola italiana e il vocabolario di base.
|
||||
2. [Panoramica: dal dato all'orario finale](02-panoramica-del-processo.md) — la sequenza completa di lavoro, dall'inizio alla fine.
|
||||
3. [Primi passi: accesso e interfaccia](03-primi-passi.md) — come accedere, muoversi tra le sezioni e cambiare lingua.
|
||||
|
||||
### Parte 2 — Preparare i dati (Configurazione)
|
||||
4. [Anni scolastici](04-anni-scolastici.md) — l'anno di riferimento a cui appartengono tutti i dati.
|
||||
5. [Scuole](05-scuole.md) — gli edifici dell'istituto.
|
||||
6. [Aule e laboratori](06-aule-e-laboratori.md) — le aule speciali richieste da alcune materie.
|
||||
7. [Orari e campanella](07-orari-e-campanella.md) — la griglia giorni × ore di ogni scuola.
|
||||
8. [Materie](08-materie.md) — le discipline insegnate.
|
||||
9. [Classi, monte ore e assegnazione docenti](09-classi.md) — le classi, le ore per materia e chi insegna cosa.
|
||||
10. [Docenti e preferenze](10-docenti.md) — l'anagrafica dei docenti e i loro vincoli.
|
||||
11. [Distanze e spostamenti](11-spostamenti.md) — i tempi di viaggio tra scuole e da casa.
|
||||
|
||||
### Parte 3 — Preferenze dei docenti
|
||||
12. [Raccolta preferenze dei docenti](12-raccolta-preferenze.md) — le campagne per invitare i docenti a compilare le loro preferenze.
|
||||
|
||||
### Parte 4 — Generare e rivedere l'orario
|
||||
13. [Generazione dell'orario](13-generazione-orario.md) — avviare l'ottimizzatore e seguirne l'avanzamento.
|
||||
14. [Comprendere i punteggi di qualità](14-comprendere-i-punteggi.md) — come leggere e confrontare la qualità delle versioni.
|
||||
15. [Revisione e confronto delle versioni](15-revisione-orario.md) — analizzare l'orario, finalizzarlo o eliminarlo.
|
||||
16. [Personalizzazione manuale](16-personalizzazione-orario.md) — correggere a mano una versione.
|
||||
17. [Esportazione in foglio di calcolo](17-esportazione.md) — scaricare l'orario in Excel o OpenDocument.
|
||||
|
||||
### Parte 5 — Consigli e riferimenti
|
||||
18. [Buone pratiche e risoluzione dei problemi](18-buone-pratiche-e-problemi.md) — come ottenere un buon primo orario e cosa fare quando qualcosa non torna.
|
||||
19. [Glossario](19-glossario.md) — i termini chiave spiegati in breve.
|
||||
|
||||
---
|
||||
|
||||
[Inizia dal capitolo 1: Introduzione →](01-introduzione.md)
|
||||
Reference in New Issue
Block a user