Cos'è la gestione della configurazione?


12

In tutti i progetti a cui sono stato coinvolto e che hanno ricevuto input da un consulente esterno, è stata posta la domanda sul tipo di gestione della configurazione che stavamo utilizzando. In nessuno di questi casi il consulente è stato in grado di definire la gestione della configurazione. Quindi, cos'è?


4
Onestamente solo Google, i primi due risultati sono voci pertinenti di Wikipedia che spiegano tutto al riguardo.
Jeremy,


2
Ho letto quella pagina di Wikipedia, e ad essere sincero, penso che sia stato scritto dagli stessi "consulenti" a cui Henry si riferisce ...
Dean Harding,

Ah sì, la parola d'ordine. Riporta ricordi dei miei giorni da impresa.
Jason Baker,

@Dean Harding Exactly!
Henry,

Risposte:


4

Che cos'è Software Configuration Management (SCM) si riduce a rispondere a quanto segue:

  • Quali file sorgente sono stati utilizzati per realizzare il nostro prodotto finale?
  • Cosa è cambiato dall'ultima volta che abbiamo realizzato il nostro prodotto finale?
  • Perché l'abbiamo cambiato?

Questo a sua volta può trasformarsi in un "processo" piuttosto ampio e brutto. I problemi di processo sono il motivo per cui la maggior parte degli sviluppatori osserva con smalto la menzione di SCM, poiché ciò significa tracciare i file di origine, i difetti e i requisiti; quindi legando tutto insieme in modo da poter controllare le modifiche (Questo è un mondo ideale dal punto di vista della gestione in quanto offre a un buon manager strumenti per vedere meglio quali risorse ha bisogno dove).

Ciò è diverso da ITIL Configuration Management, che in realtà è il monitoraggio delle risorse software, quale software è in esecuzione dove (quale server / workstation) e qual è l'impostazione per quel software.

In altre parole, il tuo consulente probabilmente vorrebbe sapere come la TUA azienda / gruppo di sviluppo risponde alle tre domande in cima alla mia risposta.


1
L'ultima volta che è venuto fuori ho detto che usiamo svn, Trac e Hudson. Dall'espressione sul volto dei consulenti era chiaro che non ne aveva sentito parlare. Quindi gli ho mostrato come il nostro registro dei requisiti si inserisce in Trac, in che modo Trac si integra con svn, in che modo Hudson costruisce e distribuisce automaticamente tutto e il ragazzo ha elencato la gestione della configurazione come un rischio di progetto.
Henry,

12

La gestione della configurazione comprende "tutto il resto" che non è direttamente correlato alla scrittura del codice. Quindi è come gestisci le versioni, come gestisci e triage segnalazioni di bug e suggerimenti di funzionalità, come esegui le tue build e così via. Include spesso anche la modalità di gestione del codice sorgente (ad es. Quale controllo di versione usi, strategie di ramificazione, come [possibilmente] gestisci più "rilasci" simultanei ecc.).


2

La gestione della configurazione ha significato molte cose nel tempo. Lo considero più importante per gli amministratori o le operazioni che direttamente per gli sviluppatori. Quando sei un operatore operativo che cerca di mantenere i server attivi e funzionanti, ti preoccupi di impostare macchine, gestirne la configurazione e mantenerlo in esecuzione. Se si accede a un computer e si avvia l'installazione del software e la modifica dei file di configurazione su un computer non si sta gestendo tale configurazione. Cosa succede se quella macchina muore? Cosa succede se qualcuno va su quella macchina e cambia un file di configurazione e tutto inizia a impazzire? Cosa succede se è necessario avviare un'altra macchina configurata esattamente come quella in esecuzione? Puoi farlo?

Senza una strategia di gestione della configurazione non è possibile. Ed è per questo che è importante. Si tratta di ripetibilità. Gli sviluppatori affrontano la ripetibilità in modo diverso rispetto alle operazioni eseguite dalle persone, quindi ci preoccupiamo di ripetere cose diverse.

Ci sono alcuni ottimi strumenti open source che ti aiutano a farlo: Chef, Capistrano, Cook e persino SVN. Perché SVN dovrebbe essere usato dagli sviluppatori? Controlla i tuoi file di configurazione, gli script che usi per configurare le macchine e traccia le loro versioni. Queste parti della tua organizzazione sono fondamentali per mantenerlo attivo. Non vuoi perdere quelli.

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.