📘 Glossario
Elenco dei termini e delle definizioni utilizzati nel progetto Atlas.
A
- Agile
Metodologia di sviluppo basata su iterazioni brevi e feedback continui. - Ambiente di lavoro
Contesto operativo e organizzativo in cui il team svolge le proprie attività progettuali. - API
Insieme di funzioni e protocolli che permettono la comunicazione tra software differenti. - Architettura
Modello concettuale che descrive la struttura, il comportamento e le relazioni tra i componenti di un sistema, garantendo la soddisfazione dei requisiti funzionali e non funzionali. Si può intendere come la progettazione di alto livello e le decisioni fondanti che definiscono come il sistema è organizzato, come i suoi elementi interagiscono e quali principi ne guidano lo sviluppo e l'evoluzione. - Attore
Entità esterna al sistema che interagisce con esso, svolgendo un ruolo specifico e scambiando informazioni. - Ausilio
Aiuto o supporto, sia materiale che morale. - Automazione
Tecnologia che si usa per gestire macchine e processi, riducendo la necessità dell'intervento umano, ovvero per l'esecuzione di operazioni ripetitive o complesse.
B
- Back-end
Parte di un sistema che gestisce logica, dati e comunicazione con il database. - Baseline
Versione approvata di un prodotto o documento che serve come riferimento per successive modifiche. - Branch
Linea di sviluppo separata all'interno di un progetto software. - Broker
Intermediario che facilita la comunicazione e la cooperazione tra sistemi, applicazioni o servizi diversi. - BT
Abbreviazione di Bluetooth, la tecnologia wireless per collegare dispositivi a corto raggio.
C
- Capitolato
Documento stipulato tra il committente (azienda) e il gruppo incaricato dello sviluppo, nel quale viene illustrato il problema che il committente intende risolvere e vengono definiti le norme e i vincoli da seguire durante la progettazione e la realizzazione del prodotto software richiesto. - Commit
Azione che registra le modifiche apportate ai file in un sistema di versionamento come Git. - Continuous Delivery
Pratica che automatizza il rilascio delle nuove versioni. - Continuous Integration
Pratica che prevede l'integrazione continua del codice in un repository condiviso. - Cruscotto
Strumento che offre una visione sintetica e immediata dello stato delle attività di progetto. Si aggiorna dinamicamente con il progredire dei lavori e consente a chi lo utilizza di ottenere un quadro chiaro e intuitivo della situazione.
D
- Decision Tree
Strumento grafico usato per rappresentare un processo decisionale. Ogni nodo mostra una condizione e ogni ramo mostra le varie alternative o conseguenze. - Deliverable
Prodotto o documento che deve essere consegnato come risultato di una fase di progetto. - Design Pattern
Soluzione riutilizzabile a un problema comune nel design del software. - Diagramma dei casi d'uso
Rappresentazione grafica usata per rappresentare interazioni fra attori e sistema. - Diagramma delle attivitÃ
Rappresentazione grafica usata per rappresentare logica procedurale. - Diagramma delle classi
Rappresentazione grafica usata per rappresentare la struttura del progetto. - Diagramma di Gantt
Strumento grafico per la rappresentazione sull'asse temporale delle attività che concorrono al completamento di un progetto, permettendone così la programmazione ed il controllo dell'avanzamento. - Diario di bordo
Documento nel quale vengono mostrate le attività intraprese e segnalate le maggiori difficoltà incontrate in un certo momento del progetto. - Discord
Piattaforma di comunicazione online che permette l'invio di messaggi così come l'avvio di chiamate vocali e video. È organizzato in server e viene utilizzato per collaborare e condividere informazioni.
E
- Endpoint
URL che rappresenta un punto di accesso a un servizio web o API. - Entity
Elemento persistente del modello dati che rappresenta un oggetto del dominio applicativo. - Efficacia
Capacità del sistema di soddisfare gli obiettivi stabiliti e rispondere correttamente ai bisogni degli stakeholder. - Efficienza
Capacità del sistema o del processo di ottenere il risultato desiderato usando il minor numero possibile di risorse, tempo e sforzo. - Errore
Difetto o imperfezione introdotta nel processo o nel codice che può generare un comportamento inatteso o un malfunzionamento. - EN 18031
Norma europea che definisce requisiti e test di sicurezza per dispositivi IoT, utilizzata per la verifica della loro conformità . - Esempio
Caso illustrativo utilizzato per chiarire il funzionamento di un modello, di una funzione o di un processo. - Editor
Interfaccia che permette la creazione, modifica e gestione strutturata di contenuti, come decision tree o configurazioni. - Esportazione
Funzionalità che consente di generare un output riutilizzabile (documenti, report o dati) in un formato definito. - Esecuzione automatizzata
Processo in cui una serie di controlli, analisi o procedure viene eseguita automaticamente da un sistema senza intervento umano. - Evolutivo
(Di un modello) Approccio allo sviluppo che prevede iterazioni successive nelle quali il sistema viene raffinato e ampliato progressivamente. - Estensione
Meccanismo che permette di aggiungere comportamento opzionale o alternativo a un caso d’uso principale. - Esecuzione condizionale
Esecuzione di un comportamento che avviene solo se una determinata condizione risulta vera.
F
- Fail
Possibile output ottenuto percorrendo un Decision Tree, indica che il requisito non è rispettato. - Front-end
Parte visibile di un'applicazione con cui l'utente interagisce direttamente. - Framework
Struttura software che fornisce strumenti e librerie per lo sviluppo di applicazioni.
G
- Git
Sistema di controllo versione distribuito per la gestione del codice sorgente. - GitHub
Piattaforma per la collaborazione e la pubblicazione di progetti Git. - Glossario
Elenco dei termini tecnici utilizzati in un progetto, con relative definizioni.
H
I
- Interattivo
Sistema che richiede la partecipazione attiva dell'utilizzatore, che può rispondere alle azioni per progredire. - Interfaccia
Punto di interazione tra due sistemi o componenti, che consente loro di comunicare e scambiare informazioni. - Interfaccia grafica
(detta anche GUI) è un'interfaccia visiva che permette di interagire con un computer o un'applicazione attraverso elementi grafici come icone, pulsanti, menu e finestre. - Input
Dati, informazioni, istruzioni, risorse, immessi in un sistema. - IoT
Acronimo di "Internet of Things", ovvero "Internet delle cose". Si riferisce a una rete di oggetti fisici, dotati di sensori, software e altre tecnologie, che possono connettersi e scambiare dati tra loro e con altri sistemi su Internet. Questa interconnessione permette il monitoraggio e il controllo remoto dei dispositivi.
J
- Just-In-Time
Approccio basato sull'idea di produrre o fornire qualcosa solo quando serve, evitando sprechi e riducendo al minimo le risorse inutilizzate.
K
L
- LaTeX
Sistema di composizione professionale utilizzato per creare documenti tecnici e scientifici con struttura e formattazione rigorosa. - Legge di Parkinson
Principio secondo cui il lavoro tende ad espandersi fino a occupare tutto il tempo disponibile per completarlo. - Lettera di presentazione
Documento introduttivo che accompagna una consegna formale, spiegandone contenuto, obiettivi e struttura. - Lezione
Unità di attività formativa dedicata a spiegazioni teoriche, chiarimenti o discussioni collegate al progetto. - Lista
Struttura che contiene una serie ordinata di elementi, spesso usata per gestire insiemi di oggetti associati o monitorati. - Livello di astrazione
Gradazione del dettaglio con cui un sistema viene descritto, usata per separare aspetti concettuali da quelli implementativi.
M
- Memory Leak
Quando un programma usa memoria e non la libera più, anche quando non serve più. - Merge
Operazione Git che integra linee di sviluppo indipendenti in un unico branch. - Monolite
Software costruito tutto insieme, in un unico blocco. Tutte le parti (login, database, API, interfaccia, logica) sono dentro lo stesso programma. - MQTT
Acronimo di Message Queuing Telemetry Transport, è un protocollo di messaggistica leggero, progettato per la comunicazione tra dispositivi con risorse limitate, come quelli dell'IoT.
N
- NA
Acronimo di Not Applicable: possibile output ottenuto percorrendo un Decision Tree, indica che il requisito non è applicabile. - Negoziazione
Processo di discussione e mediazione tra stakeholder per risolvere conflitti e priorità contrastanti tra diversi requisiti. - Nodo
Unità logica di un decision tree che rappresenta una condizione di decisione o un risultato, a seconda della sua posizione nel processo decisionale. - Norma
Documento che definisce requisiti e procedure per garantire sicurezza, affidabilità , qualità ed efficienza di prodotti, processi e servizi.
O
- Obiettivo
Risultato da raggiungere nell'ambito di un'attività o di un'impresa. - OperativitÃ
Capacità di svolgere determinate attività ; efficacia.
P
- Pass
Possibile output ottenuto percorrendo un Decision Tree, indica che il requisito è stato rispettato. - PDF
Acronimo di Portable Document Format, che significa "formato di documento portatile". È un formato di file che permette di presentare e scambiare documenti in modo affidabile e indipendente. - Pull
Operazione Git che consente di aggiornare il branch locale recuperando e integrando le modifiche dal corrispondente branch remoto. - Push
Operazione Git che trasferisce (propaga) i riferimenti e gli oggetti del repository locale verso un repository remoto. - Python Packaging
Processo di creazione e distribuzione di progetti Python in un formato standardizzato (chiamato package o pacchetto), in modo che altri possano facilmente installarli e utilizzarli. Il file pyproject.toml è un file di configurazione moderno e unificato che gestisce questo processo.
Q
R
- RED
Normativa europea che stabilisce requisiti per la sicurezza, la compatibilità elettromagnetica e l'uso dello spettro radio per le apparecchiature che trasmettono o ricevono onde radio. - Repository
Spazio di archiviazione digitale usato per memorizzare codice, documenti o risorse di progetto. Consente il versionamento dei file e facilità la collaborazione tra i membri del team. - Requisito
Capacità necessaria a un utente per raggiungere un obiettivo (lato bisogno) così come capacità necessaria a un sistema per rispondere a un'aspettativa. - Responsabile
Membro di progetto che coordina le attività di gruppo e approva il rilascio di prodotti parziali o finali. - Retrospective
Attività collocata alla fine di uno sprint. Il team riflette su cosa è andato bene, cosa può essere migliorato e come ottimizzare il lavoro futuro. - Revisione
Attività di controllo che consiste nello scovare eventuali errori prima dell'approvazione. - Router
Dispositivo di rete che indirizza i pacchetti di dati fra diverse reti. - RTB
Acronimo di "Requirements and Technology Baseline": baseline di progetto dove vengono definiti i requisiti funzionali e tecnici insieme alle tecnologie utilizzate per soddisfare tali requisiti.
S
- Scelte tecnologiche
Decisioni relative a tecnologie, librerie e architetture adottate per realizzare il sistema. - SemplicitÃ
Proprietà di un sistema o di un requisito che favorisce chiarezza, facilità di comprensione e riduzione della complessità . - Server
Componente o macchina che gestisce logiche, servizi e funzionalità centralizzate accessibili da client o dispositivi. - Servizi
Funzionalità accessibili dall'esterno o da altri componenti del sistema attraverso interfacce definite. - Sicurezza
Insieme delle proprietà che garantiscono protezione da malfunzionamenti, accessi non autorizzati e rischi operativi. - Sicurezza informatica
Disciplina che si occupa della protezione dei sistemi digitali da attacchi, intrusioni e vulnerabilità . - Soluzione
Insieme delle scelte tecniche e organizzative proposte per risolvere un problema o soddisfare un requisito. - Stakeholder
Persona o entità che ha interesse, influenza o responsabilità nei confronti del progetto o del prodotto. - Standard di processo
Insieme di regole, procedure e convenzioni stabilite per garantire qualità , uniformità e controllo nello sviluppo. - Stima
Valutazione quantitativa preliminare di costi, tempi o risorse necessarie per realizzare un'attività . - Strumento
Tool o applicazione che supporta il team nello svolgimento delle attività di progettazione, sviluppo o verifica. - Sviluppo
Fase del progetto in cui il sistema viene implementato, integrato e verificato sulla base dei requisiti.
T
- Ticketing
Sistema usato per registrare, organizzare e seguire le richieste di lavoro, problemi o domande.
U
- UAT
Acronimo di User Acceptance Testing: fase del testing in cui gli utenti finali verificano che il software soddisfi i requisiti contrattuali o di business. - UI
Acronimo di User Interface: insieme di elementi grafici o testuali con cui l'utente interagisce con il software. La progettazione UI impatta sulla gestione del progetto e sulle priorità di sviluppo. - UML
Acronimo di Unified Modeling Language: linguaggio standard di modellazione utilizzato nell'ingegneria del software per rappresentare visivamente sistemi complessi, processi e architetture software. Organizza i modelli in due grandi categorie: diagrammi strutturali, che rappresentano la struttura statica del sistema, e diagrammi comportamentali che rappresentano il comportamento dinamico del sistema. - Unicode
Standard di codifica dei caratteri che assegna in modo univoco un numero (chiamato code point) a ogni carattere usato nei sistemi di scrittura di tutto il mondo. - Unit test
Test automatizzato che verifica il corretto funzionamento di un singolo modulo o componente del software. È parte essenziale della gestione della qualità . - Upgrade
Processo di rilascio di nuove versioni del software, che può includere miglioramenti, correzioni di bug o nuove funzionalità . - UsabilitÃ
Misura di quanto il software è facile da usare, efficiente e comprensibile per l’utente finale. - Use case
Descrizione di come un utente o un sistema interagisce con il software per raggiungere un obiettivo specifico. Fondamentale per raccogliere requisiti funzionali. - User story
Breve descrizione di una funzionalità dal punto di vista dell'utente finale. Molto usata in metodologie Agile/Scrum. - UX
Acronimo di User Experience: esperienza complessiva dell'utente nell'usare il software. Il miglioramento della UX può essere parte degli obiettivi del progetto.
V
- Validazione
Attività che verifica che il prodotto rispetti i requisiti e le aspettative del committente. - Verbale interno
Documento che riporta il resoconto di una riunione interna al team di progetto. Riporta l'ordine del giorno, le questioni discusse e le decisioni prese. - Verbale esterno
Documento che riporta il resoconto di una riunione con l'azienda proponente, uno stakeholder o altre persone esterne al team di progetto. - Verificatore
Membro del team di progetto che si occupa di controllare la correttezza, la completezza e la qualità del lavoro svolto. - Versionamento
Processo di gestione e controllo delle diverse versioni di un progetto.
W
- Waterfall model
Modello di sviluppo sequenziale in cui ogni fase deve essere completata prima di passare alla successiva. - WBS
Acronimo di Work Breakdown Structure: scomposizione gerarchica del progetto in attività sempre più piccole e gestibili. - Web-based
Caratteristica di applicazioni accessibili tramite browser senza necessità di installazione locale. - Wi-Fi
Tecnologia di comunicazione wireless utilizzata da molti dispositivi per trasmettere dati tramite rete locale. - Wireless
Comunicazione tra dispositivi elettronici che non fa uso di cavi, ma utilizza radioonde o raggi infrarossi. - Work
Attività che tende ad adattarsi al tempo assegnato, influenzando la pianificazione e la gestione del progetto. - Work environment
Ambiente operativo in cui il team collabora, composto da strumenti, procedure e spazi di lavoro. - WoW
Acronimo di Way of Working: insieme delle pratiche, processi e regole operative adottate dal team per gestire in modo efficace il progetto.
X
- XML
Linguaggio di markup pensato per rappresentare e scambiare dati in modo strutturato. Grazie ai tag personalizzabili, permette di descrivere le informazioni in modo chiaro e portabile tra sistemi diversi.