Perché si chiama Software Configuration Management (SCM)?

9

Quando penso alla configurazione del software, penso a un file che viene letto dal runtime - detto file conterrebbe cose come la porta che un server potrebbe usare, se usare la crittografia e percorsi di varie risorse.

Quando ho scoperto "Software Configuration Management", pensavo significasse solo la gestione dei file di configurazione, ma ho subito capito che gli strumenti SCM riguardano non solo i file di configurazione, ma anche il codice software, software eseguibile / binario e risorse pure.

Quindi perché usiamo il termine "Gestione configurazione software"? La "gestione del software" non sarebbe più comprensiva? Oppure la mia comprensione di ciò che è considerato come "configurazione" è carente?

    
posta flow2k 01.11.2018 - 06:01
fonte

1 risposta

13

Il termine gestione della configurazione appartiene al vocabolario tecnico generale.

Il suo scopo è quello di tenere traccia delle caratteristiche di tutte le parti / componenti di un sistema complesso (ad esempio un'auto, un missile, un dispositivo elettronico) e, naturalmente, il cambiamento di queste caratteristiche quando un componente viene sostituito con un componente simile. Una configurazione descrive esattamente un prodotto specifico.

In altre parole, la gestione della configurazione è la gestione della versione per i prodotti industriali. Permette in qualsiasi momento di assemblare una versione precedente di un prodotto.

Nel software non esiste un catalogo di parti di settore che possa consentire di identificare univocamente un pezzo di software e le sue versioni successive e ritrovarlo in qualche magazzino per assemblare (configurare) una versione precedente del prodotto. La parte / componente software è descritta al meglio dal suo codice nella sua interezza. Quindi la gestione della configurazione per il software significa gestire le versioni del codice sorgente. Questo è il motivo per cui il termine gestione della configurazione del software viene utilizzato per la gestione della versione del codice sorgente.

Si noti tuttavia che SCM è più grande del solo controllo delle versioni del codice sorgente. Può anche includere la gestione di dipendenze esterne (ad es. Librerie o framework di terze parti con versioni gestite da qualche altra parte), risorse esterne (es. Binari o dll di terze parti o definizioni API per interoperare con sistemi esterni), nonché risorse digitali (ad esempio immagini o i video devono essere pacchetti con il prodotto finale).

    
risposta data 01.11.2018 - 10:43
fonte

Leggi altre domande sui tag