Administrasjon av programvarekonfigurasjon - Software configuration management

I programvareutvikling er programvarekonfigurasjonsstyring ( SCM eller S/W CM ) oppgaven med å spore og kontrollere endringer i programvaren, en del av det større tverrfaglige feltet konfigurasjonsstyring . SCM -praksis inkluderer revisjonskontroll og etablering av grunnlinjer . Hvis noe går galt, kan SCM bestemme hva som ble endret og hvem som endret det. Hvis en konfigurasjon fungerer bra, kan SCM bestemme hvordan den skal replikeres på tvers av mange verter.

Akronymet "SCM" utvides også som prosess for styring av kildekonfigurasjon og programvareendring og konfigurasjonsadministrasjon . Imidlertid forstås "konfigurasjon" generelt for å dekke endringer som vanligvis gjøres av en systemadministrator .

Formål

Målene for SCM er generelt:

  • Konfigurasjonsidentifikasjon - Identifisering av konfigurasjoner, konfigurasjonselementer og grunnlinjer .
  • Konfigurasjonskontroll - Implementering av en kontrollert endringsprosess . Dette oppnås vanligvis ved å sette opp et endringskontrollbord hvis hovedfunksjon er å godkjenne eller avvise alle endringsforespørsler som sendes mot en hvilken som helst grunnlinje.
  • Konfigurasjonsstatusregnskap - Registrering og rapportering av all nødvendig informasjon om statusen til utviklingsprosessen.
  • Konfigurasjonsrevisjon - Sikre at konfigurasjoner inneholder alle de tiltenkte delene og er sunne i forhold til de spesifiserte dokumentene, inkludert krav, arkitektoniske spesifikasjoner og brukermanualer.
  • Bygghåndtering - Administrering av prosessen og verktøyene som brukes for bygg.
  • Prosessledelse - Sikre overholdelse av organisasjonens utviklingsprosess.
  • Miljøstyring - Administrering av programvare og maskinvare som er vert for systemet.
  • Teamarbeid - Tilrettelegge for teaminteraksjoner knyttet til prosessen.
  • Feilsporing - Sørg for at hver defekt har sporbarhet tilbake til kilden.

Med introduksjonen av cloud computing og DevOps har formålene med SCM -verktøy blitt slått sammen i noen tilfeller. Selve SCM -verktøyene har blitt virtuelle apparater som kan instantieres som virtuelle maskiner og lagres med tilstand og versjon. Verktøyene kan modellere og administrere skybaserte virtuelle ressurser, inkludert virtuelle apparater, lagringsenheter og programvarepakker. Skuespillernes roller og ansvar har også blitt slått sammen med utviklere som nå kan dynamisk instantiere virtuelle servere og relaterte ressurser.

Historie

Historien om programvarekonfigurasjonshåndtering (SCM) innen databehandling kan spores tilbake allerede på 1950 -tallet, da CM (for Configuration Management), opprinnelig for maskinvareutvikling og produksjonskontroll, ble brukt på programvareutvikling. Tidlig programvare hadde et fysisk fotavtrykk, for eksempel kort , kassetter og andre medier. Den første programvarekonfigurasjonsstyringen var en manuell operasjon. Med fremskrittene innen språk og kompleksitet ble programvareteknikk , som involverte konfigurasjonsstyring og andre metoder, et stort problem på grunn av problemer som tidsplan, budsjett og kvalitet. Praktiske leksjoner, gjennom årene, hadde ført til definisjon og etablering av prosedyrer og verktøy. Etter hvert ble verktøyene systemer for å håndtere programvareendringer. Industriell praksis ble tilbudt som løsninger, enten på en åpen eller proprietær måte (for eksempel Revision Control System ). Med den økende bruken av datamaskiner dukket det opp systemer som håndterte et bredere omfang, inkludert kravstyring , designalternativer, kvalitetskontroll og mer; senere verktøy fulgte retningslinjene til organisasjoner, for eksempel Capability Maturity Model of the Software Engineering Institute .

Se også

Referanser

Videre lesning

  • 828-2012 IEEE Standard for Configuration Management in Systems and Software Engineering . 2012. doi : 10.1109/IEEESTD.2012.6170935 . ISBN 978-0-7381-7232-3.
  • Aiello, R. (2010). Configuration Management Best Practices: Praktiske metoder som fungerer i den virkelige verden (1. utg.). Addison-Wesley. ISBN  0-321-68586-5 .
  • Babich, WA (1986). Programvarekonfigurasjonsstyring, koordinering for teamproduktivitet . 1. utgave. Boston: Addison-Wesley
  • Berczuk, Appleton; (2003). Programvarekonfigurasjonshåndteringsmønstre: Effektivt TeamWork, praktisk integrasjon (1. utg.). Addison-Wesley. ISBN  0-201-74117-2 .
  • Bersoff, EH (1997). Elementer i programvarekonfigurasjonshåndtering. IEEE Computer Society Press, Los Alamitos, CA, 1-32
  • Dennis, A., Wixom, BH & Tegarden, D. (2002). Systemanalyse og design: En objektorientert tilnærming med UML. Hoboken, New York: John Wiley & Sons, Inc.
  • Department of Defense, USA (2001). Military Handbook: Configuration management guide (rev. A) (MIL-HDBK-61A) . Hentet 5. januar 2010 fra http://www.everyspec.com/MIL-HDBK/MIL-HDBK-0001-0099/MIL-HDBK-61_11531/
  • Futrell, RT et al. (2002). Kvalitet programvare prosjektledelse. 1. utgave. Prentice-Hall.
  • International Organization for Standardization (2003). ISO 10007: Kvalitetsstyringssystemer - Retningslinjer for konfigurasjonsstyring .
  • Saeki M. (2003). Legge inn beregninger i informasjonssystemers utviklingsmetoder: En anvendelse av metodeteknikk. CAiSE 2003, 374–389.
  • Scott, JA & Nisse, D. (2001). Administrasjon av programvarekonfigurasjon. I: Guide to Software Engineering Body of Knowledge . Hentet 5. januar 2010 fra http://www.computer.org/portal/web/swebok/htmlformat
  • Paul M. Duvall, Steve Matyas og Andrew Glover (2007). Kontinuerlig integrasjon: Forbedring av programvarekvalitet og redusert risiko . (1. utg.). Addison-Wesley Professional. ISBN  0-321-33638-0 .

Eksterne linker