I sistemi di controllo delle versioni (VCS) che è possibile utilizzare con i software di progettazione PCB sono numerosi. Tuttavia, quando si parla di PCB design, un VCS classico spesso non offre alcune funzionalità molto importanti. Nel seguente articolo esamineremo le differenze tra un VCS standard e Altium 365.
Cosa può offrire un version control system (VCS)? Un VCS consente prima di tutto di creare una cronologia delle revisioni (con archiviazione dei file inclusa). Possibilmente, dovrebbe anche consentire la raccolta della documentazione critica (sotto forma di commenti) per ciascun commit. Utilizzare un VCS per queste finalità non favorisce solo noi o i nostri team, ma l'intera azienda. Pensiamo ad esempio a un ambiente di produzione in cui il controllo qualità deve poter tenere traccia di una modifica particolare, avvenuta in una data e a un'ora specifica. Oppure al sollievo di poter recuperare i file in caso di guasto al disco rigido grazie al backup delle versioni precedenti su server. In aggiunta, non possiamo non menzionare la possibilità di lavorare su computer diversi in momenti diversi.
L'utilizzo di un VCS dovrebbe essere considerato prassi comune nella progettazione PCB. Nel corso degli anni ho utilizzato diversi sistemi per il controllo delle versioni, tuttavia, a tutti mancavano alcune funzionalità fondamentali per poter raggiungere una vera collaborazione ECAD.
Mi riferisco a funzionalità come:
Queste funzionalità, non presenti nei VCS standard, sono state implementate nel controllo di versione su Altium 365 e sono adesso a disposizione di tutti gli utenti di Altium 365. Esaminiamole quindi una per una per capire meglio come Altium 365 sia in grado di soddisfare qualsiasi esigenza.
Non tutti hanno familiarità con strumenti come Git Bash o SourceTree, né vogliono averla. Passare dalle unità di rete a un VCS può già essere di per sé abbastanza complicato. Aver rimosso gran parte delle difficoltà tecniche rende la transizione molto più semplice: Altium 365 è infatti dotato di un VCS integrato di cui non ci si accorge nemmeno. Ad esempio, nella figura 1 si vede l'opzione “Make Project Available Online” (Rendi il progetto disponibile online). In realtà, quello che succede è che il sistema inizializza un repository Git locale, esegue il commit e invia le modifiche a un nuovo repository remoto appena creato. Come si può vedere nella figura 2, basterà fare clic su “Save to Server” (Salva nel server) per caricare il progetto sul server (dopo aver inserito eventuali commenti). Nell'ecosistema Git, questo processo è noto come "commit e push."
Figura 1: Inserimento di un progetto nel controllo delle versioni
Figura 2: Commit delle modifiche e invio al server
Uno strumento indispensabile per collaborare alla progettazione di un circuito stampato è la capacità di condividere note tra collaboratori praticamente in tempo reale. Stampare PDF di uno schema elettrico e aggiungerci le relative marcature può essere sufficiente, ma avere un meccanismo che documenti queste annotazioni direttamente all'interno del software di progettazione è tutta un'altra cosa. Altium 365 serve esattamente a questo.
Figura 3: Commento inserito direttamente nel progetto
Uno dei principali vantaggi offerti dai VCS è la possibilità di mettere a confronto le varie versioni di un progetto. Nella programmazione, l'uso di uno strumento differenziale può essere sufficiente dal momento che si stanno confrontando delle semplici stringhe di testo. Al contrario, confrontare schemi elettrici o layout può essere molto più complicato. Altium 365 ha aggiunto una funzionalità per confrontare direttamente schemi circuitali e layout all'interno dell'ecosistema Altium 365. Sebbene sia possibile anche confrontare schematici in Altium Designer utilizzando un VCS esterno, lo strumento di confronto integrato di Altium 365 è molto più aggiornato e soprattutto è nativo del sistema. La funzionalità Cronologia di progetto consente inoltre di selezionare facilmente i commit e metterli subito a confronto:
Figura 4: Cronologia di progetto con opzione di confronto
Figura 5: Funzionalità di confronto tra schematici in Altium 365
Se dovessi scegliere la funzione che preferisco tra le tante disponibili, questa vincerebbe a mani basse. L'esistenza di una libreria di componenti ben congegnata basterebbe a convincermi, ma la vera ciliegina sulla torta è la cronologia delle revisioni per i componenti. Altium 365 include un VCS dedicato anche ai componenti e ai modelli, non solo ai progetti: questo è un enorme passo avanti per i sistemi ECAD integrati (rispetto a un sistema PLM esterno). Questo non solo permette ai gestori della libreria dei componenti di tenere traccia delle revisioni applicate, ma fornisce anche una cronologia dei componenti a tutti gli utenti, permettendo loro di mantenere una versione precedente o di effettuare l'aggiornamento all'ultima versione disponibile in un solo clic.
Figura 6: Cronologia delle revisioni dei componenti
In questo articolo abbiamo visto cosa manca ai VCS tradizionali rispetto alle funzionalità offerte da Altium 365. Esaminando le caratteristiche di queste funzionalità, possiamo capire come queste si integrino nel nostro flusso di lavoro e perché siano davvero essenziali per lavorare in maniera collaborativa sfruttando appieno il potenziale dei VCS. Inizia subito la tua prova gratuita di Altium Designer + Altium 365.