Gestione revisioni Software

Requisiti

La metodologia che si vuole introdurre deve soddisfare i seguenti punti:

Perche' RCS

RCS e' uno standard emergente per la gestione di revisione di files di testo. Esiste una versione, sviluppata da GNU, di pubblico dominio e a costo zero per l'utente.

Semplicita' di utilizzo

Gli unici nuovi comandi che il programmatore deve utilizzare sono i seguenti:

Associazioni

Viene associato ad un nome simbolico l'insieme dei sorgenti che compongono il rilascio.
Questo permette in qualsiasi momento di rigenerere un nuovo rilascio.

Protezione tra utenti

Utilizzando i meccanismi di protezione di Unix e RCS associati alla figura dell'amministratore di progetto, si preserva la consistenza dei sorgenti. Solamente l'amministratore del progetto ha l'autorita' di cancellare o aggiornare i files del repository ufficiale.

Modifiche contemporanee

In progetti con molte anomalie, per evitare tempi di risoluzione troppo lunghi, e' necessario che piu' persone possano modificare gli stessi sorgenti contemporeneamente. L'amministratore ed i programmatori devranno eseguire l'integrazione con molta attenzione.

Gestione modifiche

In fase di creazione delle direttrici di un progetto si deve creare un file di configurazione che indica: Il file deve essere rcs.cnf e deve essere nella home directory home dell'amministratore del progetto.

Figure

Vengono definite due figure tipo: Per programmatore si intende una persona che puo' operare sul codice sorgente del progetto.
Per amministratore si intende la persona che ha il compito di eseguire la configurazione dell'ambiente di lavoro e controllare/gestire le fasi di integrazione e rilascio di revisioni.
Il rilascio di una revisione puo' essere effettuato solamente da parte dell'amministratore. L'amministratore e i programmatori appartengono allo stesso gruppo. La login dell'amministratore deve essere admXXXXX, il nome del gruppo deve essere svlXXXXX, dove XXXXX e' l'identificativo del progetto. La login del programmatore deve essere uguale al suo cognome. Se un programmatore puo' lavorare su differenti progetti, con il comando newgrp deve selezionare il progetto su cui intende lavorare.