Qual è il modo migliore per archiviare la documentazione associata a un progetto di codice?


10

Abbiamo molti documenti associati allo sviluppo del nostro software. Questi includono cose come requisiti, documenti di progettazione, PDF esterni, file dei clienti, istruzioni per i test, ecc. Attualmente, questi documenti sono sparsi ovunque (wiki, "un posto nella rete", un disco rigido degli sviluppatori locali (!), e posti anche peggiori).

Qual è il modo migliore per tenerne traccia? Dal momento che utilizziamo Visual Studio (2010) per il nostro sviluppo e non abbiamo davvero non sviluppatori nel progetto, ho pensato che sarebbe stata una grande idea archiviarli all'interno della "soluzione" VS, il che avrebbe permesso loro essere controllato alla fonte e accessibile universalmente da tutti gli sviluppatori.

Tuttavia, VS non sembra davvero essere costruito per fare questo. Se si modifica un file di documento, anche uno che è configurato con le proprietà di compilazione "Nessuno", "Non copiare", VS deve ricostruire il software prima che venga eseguito nuovamente. Non è possibile creare un "Progetto di documentazione" all'interno della soluzione. (Per questo utilizziamo un progetto C # vuoto). Visual Studio e Word / Excel flat non eseguono correttamente il controllo del codice sorgente. Non è possibile visualizzare un file archiviato e quindi decidere di apportare una modifica senza prima chiudere il file, andare al progetto e verificarlo manualmente prima di apportare la modifica. È lento e noioso nella migliore delle ipotesi.

Ad ogni modo, questo è il meglio che il nostro team ha ideato, ma vorrei davvero avere una soluzione (gratuita) migliore.


Quanto è grande la tua squadra?
Jeff,

Abbiamo 3-4 in questo momento.
David,

Quale controllo di versione stai utilizzando in modo specifico. Non conosco un controllo del codice sorgente in cui sei legato all'utilizzo di Visual Studio per gestirlo.
Earlz,

Dove lavoro, utilizziamo TFS per archiviare codice e SharePoint per documentazione, piani di test, ecc.
Lavoro

4
Non consiglierei di inserire documenti come PDF in VSS. Intendiamoci, non consiglierei nemmeno di inserire il codice sorgente in VSS.
Carson63000,

Risposte:


3

Non sono sicuro che esista un unico "modo migliore", ma dalla tua descrizione sembra che ogni sviluppatore stia facendo il proprio modo di archiviare la documentazione. Ottieni un buy-in da tutti con un unico metodo di archiviazione della documentazione e sarà molto più semplice mantenerlo organizzato.

Oltre alla risposta "trova il modo migliore per te", direi almeno di cercare una soluzione che semplifichi la ricerca di documenti . In una società, ho creato un wiki che conteneva collegamenti a file generati su serverland, il che ha reso improvvisamente molto più facile la ricerca e l'individuazione dei documenti, indipendentemente da dove fossero. Una volta che altri utenti hanno iniziato a utilizzare il wiki per trovare documenti, hanno anche iniziato ad aggiornarlo per collegare nuovi documenti o semplicemente creando una voce wiki come documento.

Mi piacerebbe sapere da chiunque altro se conoscono i sistemi di controllo della versione gratuita che funzionano bene con i documenti. L'unica cosa che mi viene in mente è Sharepoint, che non è esattamente gratuito. Ho visto sistemi di versioning non ufficiali in cui le persone hanno una cartella "Archive", e ho semplicemente messo le revisioni passate di un file in quella cartella, con la revisione più recente nello stesso livello di "Archive".


La nostra soluzione "wiki" è un collegamento alla condivisione di rete (o un collegamento diretto ai file sulla rete. Lo svantaggio è che non esiste un controllo della versione di ciò. Oppure si scarica / modifica / carica il file nel wiki, che è un Processo in 10 passaggi ogni volta che vuoi modificarlo per correggere un errore di battitura
David

molte alternative gratuite a sharepoint (che sono migliori!): prova Nuxeo per una semplice da configurare. O Alfresco per qualcosa di più potente, se ne hai bisogno.
gbjbaanb,

La Ricerca Google installata sul tuo computer fa miracoli per localizzare le cose.

3

La soluzione che ha funzionato al meglio nella mia azienda è stata quella di creare un wiki (usiamo mediawiki). Viene utilizzato in molti modi, dalle voci wiki tradizionali a un semplice "Questo è un ..." più un documento di Word. È molto facile da cercare. Stiamo gradualmente costruendo un repository di informazioni molto utile.


Abbiamo provato a usare doku-wiki, ma è molto noioso da usare (provare a correggere un errore di battitura di doc word è di 10 passaggi noiosi), più nessun supporto multiutente su chi sta modificando cosa. Ci sono stati anche molti avvertimenti e limitazioni sulla dimensione del file e sull'estensione del file che ha davvero infastidito più che aiutato. Non ho avuto alcun riscontro sull'utilizzo da parte delle altre persone dell'azienda. Vedo un grande potenziale, ma purtroppo non per la mia azienda.
David,

1

Almeno in VS 2008, è possibile impostare il tipo di configurazione di un progetto C ++ (in Proprietà progetto-> Generale-> Impostazioni predefinite del progetto) su Utilità , nel qual caso VS non fa nulla con esso.

Hai provato a utilizzare un tale progetto nella tua soluzione basata su C #? (Forse un progetto C # ha qualcosa di simile?)


0

Sono assolutamente d'accordo sul fatto che non esiste un'unica soluzione migliore qui. Ma controllo versione! = Incluso nella soluzione; la maggior parte dei sistemi può gestire cose oltre l'IDE. Quindi, nella maggior parte dei casi, è possibile mantenere i documenti vicini ma notare all'interno.

Ora, superare le fastidiose abitudini di parola per modificare i file ogni volta che vengono aperti è un problema diverso. . .


0

No, i progetti di Visual Studio (beh, C # e Vb.net) hanno un approccio cerebrale per l'esploratore della soluzione. Quello VC ++ è MOLTO migliore in quanto è possibile creare cartelle virtuali che non sono legate al layout del disco e inserire anche tutti i tipi di cose. La sciocca Microsoft l'ha rotto cercando di renderlo "più facile da capire".

Puoi ancora inserirlo in una 'cartella della soluzione' ma non è ancora flessibile come probabilmente vorrai. Ciò significa che devi trovare un'alternativa e le mie alternative consigliate sono gli strumenti web. Se non vuoi provare un portale di progetto (come Redmine) in cui puoi archiviare documenti e avere un wiki, un tracker di bug, ecc. Ecc., Scegli uno strumento di gestione dei documenti. Qualcosa come Nuxeo o Owl ti farebbe bene. Una volta che si trova sul web, hai una posizione centrale in modo che le persone sappiano dove cercare queste cose - questa è probabilmente la parte più importante della gestione dei documenti. Se lo colleghi a un sistema di controllo versione come sovversione (continua, non te ne pentirai dopo VSS!), Sarai comunque in grado di collegare i documenti agli strumenti Web e anche la versione li controlla.

Subversion ha anche la possibilità di esporre il repository come cartella webdav - cioè una cartella di rete - quindi youcoudl li mette su una 'unità di rete' e tuttavia li fa controllare automaticamente la versione.

Preferirei ancora Redmine come mia preferenza personale.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.