Cos'è la gestione della configurazione?

12

In tutti i progetti con cui ho partecipato è stato richiesto un consulente esterno, è stata posta la domanda su quale tipo di Configuration Management stavamo usando. In nessuno di questi casi il consulente è stato in grado di definire Configuration Management. Allora, cos'è?

    
posta Henry 01.12.2010 - 01:14
fonte

3 risposte

4

Cosa Software Configuration Management (SCM) è ridotto a rispondere a quanto segue:

  • Quali file di origine sono stati utilizzati per realizzare il nostro prodotto finale?
  • Cosa è cambiato dall'ultima volta che abbiamo creato il nostro prodotto finale?
  • Perché lo abbiamo modificato?

Questo a sua volta può diventare un "processo" abbastanza grande e brutto. I problemi del processo sono il motivo per cui la maggior parte degli sviluppatori ha una smorfia sulla menzione di SCM, poiché ciò significa tenere traccia dei file, dei difetti e dei requisiti di origine; quindi legare tutto insieme in modo da poter controllare i cambiamenti (questo è un mondo ideale dal punto di vista gestionale in quanto fornisce un buon strumento manager per vedere meglio di quali risorse ha bisogno dove.)

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

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

    
risposta data 01.12.2010 - 06:00
fonte
12

Configuration Management comprende "tutto il resto" che non è direttamente correlato alla scrittura del codice. Ecco come gestisci le versioni, come gestisci e triage segnalazioni di bug e suggerimenti di funzionalità, come esegui le tue build e così via. Spesso include anche il modo in cui viene gestito il codice sorgente (ad esempio il controllo della versione che si utilizza, le strategie di ramificazione, il modo in cui si [eventualmente] gestiscono più "rilasci" concomitanti, ecc.)

    
risposta data 01.12.2010 - 01:21
fonte
2

Gestione della configurazione ha significato un sacco di cose nel tempo. Lo considero più importante per gli amministratori o per le operazioni che direttamente per gli sviluppatori. Quando una persona che lavora cerca di mantenere i server attivi e in esecuzione, ti preoccupi di configurare le macchine, gestirne la configurazione e mantenerla in esecuzione. Se si accede a un computer e si avvia l'installazione del software e si modificano i 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? Che 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 si avvicinano alla ripetibilità in modo diverso rispetto alle operazioni che fanno le 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 utilizzi per configurare le macchine e monitora le loro versioni. Quelle parti della tua organizzazione sono vitali per tenerlo in esecuzione. Non vuoi perdere quelli.

    
risposta data 01.12.2010 - 05:03
fonte

Leggi altre domande sui tag