Konfigurační management, role ve vývoji.

Z Na státnice zvesela!

Přejít na: navigace, hledání

Obsah

[skrýt]

[editovat] Konfigurační management

Konfigurační management = Software Configuration Management (SCM)

  • proces identifikování a definování prvků systému, řízení změn těchto prvků během životního cyklu, zaznamenávání a oznamování stavu prvků a změn a ověřování úplnosti a správnosti prvků (jak vytvářet, sestavovat a uvolňovat produkt, identifikovat jeho části a verze, sledovat změny a chyby)
  • jedná se tedy o administrativní a manažerskou část vývoje software

Prvek konfigurace – Configurable Item (CI)

  • konstituující složka systému (konfigurace se sestává z prvků konfigurace)
  • jsou atomické z hlediska změn a označování verzí, jednoznačně identifikovatelné
  • př.: dokument, zdrojový soubor, knihovna, skript, testovací data, …

Konfigurace

  • SW konfigurace – souhrn prvků konfigurace reprezentující určitou podobu daného SW systému (př.: první kompilovatelná verze programu XY pro Linux)
  • V konfiguraci musí být vše, co je potřebné k jednoznačnému opakovatelnému vytvoření příslušné verze produktu (včetně překladačů, build scriptů, inicializačních dat, dokumentace)
  • Konzistetní konfigurace – konfigurace, jejíž prvky navzájem bezrozporné (tj. zdrojové soubory lze přeložit, knihovny přilinkovat, …)


[editovat] Úlohy konfiguračního managementu

  • Určení a správa konfigurace
    • určení (identifikace) prvků systému, přiřazení zodpovědnosti za správu
    • identifikace jednotlivých verzí prvků
    • kontrolované uvolňování (release) produktu
    • řízení změn produktu během jeho vývoje
  • Zjišťování stavu systému
    • udržení informovanosti o změnách a stavu prvků
    • zaznamenávání stavu prvků konfigurace a požadavků na změny
    • poskytování informací o těchto stavech
    • statistiky a analýzy (např. dopad změny, vývoj oprav chyb)
  • Správa sestavení (build) a koordinace prací
    • určování postupů a nástrojů pro tvorbu spustitelné verze produktu
    • ověřování úplnosti, konzistence a správnosti produktu
    • koordinace spolupráce vývojářů při zpracování, zveřejňování a sestavení změn

[editovat] Aktivity SCM v cyklu vývoje

Soubor:SCM_postup.jpg

[editovat] SCM a správa verzí

  • správa verzí je součást úlohy SCM (aby prvek konfigurace mohl být ve správě SCM, musí být identifikovatelný, včetně všech svých podob)
  • účelem je tedy udržení přehledu o podobách prvků konfigurace
    • verze popisuje jednu konkrétní podobu
    • v úložišti jsou skladovány všechny verze
  • druhy verzí
    • historická podoba – revize (př. Word 6.0)
    • alternativní podoba – varianta (př. Word pro Macintosh)
  • určení konkrétní verze
    • verzování podle stavu (verze prvku) – identifikují se pouze prvky
    • verzování podle změn (identifikace změny prvku) – identifikují se také změny prvků, výsledná verze prvku vznikne aplikací změn
  • popis verze
    • extenzionální verzování: každá verze má jednoznačné ID
      • major.minor + build schéma- např. 6.0.2800.1106 (MSIE 6)
      • kódové jméno: One Tree Hill (= Firefox 0.9)
      • marketingový: Windows 95
    • intenzionální verzování: verze je popsána souborem atributů
      • např. OS=DOS and UmiPostscript = YES