Synchronizační model - Synchronization model
v správa konfigurace (CM), je třeba kontrolovat (mimo jiné) změny provedené v softwaru a dokumentaci. Tomu se říká kontrola revizí, který spravuje více verzí stejné informační jednotky. Ačkoli je kontrola revizí pro CM důležitá, nerovná se jí.
Synchronizační modely, známé také jako Configuration Management Models (Feiler, 1991), popisují metody umožňující kontrolu revizí umožněním simultánních a souběžných změn jednotlivých souborů.
Synchronizační modely
Feiler (1991) referuje o čtyřech různých synchronizačních modelech, krátce popsaných níže.
Odhlášení / odhlášení
V modelu odhlášení / odhlášení jsou soubory ukládány jednotlivě do a úložiště ze kterého jsou vydány při každém přístupu k souborům, a odevzdány při změně. Toto úložiště může ukládat více verzí souborů. Protože tyto soubory mohou být dokumentace nebo zdrojový kód, ale může to být také soubor souborů, termín Položka konfigurace (CI) bude od nynějška používán. Základní mechanismus používaný k prevenci konfliktů simultánními úpravami je mechanismus zamykání.
Složení
Složený model je rozšířením modelu odhlášení / odhlášení. Tento model umožňuje vývojářům přemýšlet konfigurace místo jednotlivých souborů. Přestože je model kompletního odbavení / odbavení zastoupen v modelu složení, umožňuje použití různých strategií pro aktualizaci pomocí vylepšené podpory pro správu konfigurací. Konfigurace je definována jako sestavená z modelu systému a pravidel výběru verze. Model systému určuje, které soubory se použijí, zatímco pravidla výběru verze určují, která verze souborů (např. Nejnovější verze nebo určitá verze) stav vývoje ).
Dlouhé transakce
Model dlouhých transakcí zaujímá širší přístup, protože předpokládá, že systém je vytvořen z logických změn. Zaměřuje se na koordinaci a integraci těchto změn. V zásadě používá verze konfigurací a verze souborů. Konfigurace je vytvořena na základě a změnit požadavek který je uložen samostatně. Soubory v této konfiguraci lze synchronizovat pomocí modelu odhlášení / odhlášení. Po dokončení změny je kompletní konfigurace uložena zpět do úložiště a integrována s dalšími změnami.
Změnit sadu
Model sady změn funguje také na základě požadavků na změnu a má mnoho společného s modelem dlouhých transakcí. Začíná to však určitou konfigurací jako základem pro změny. To se poté změní podle nezávislých požadavků na změnu, které přicházejí. Nové konfigurace produktu se poté vytvoří použitím sad nezávisle uložených změn na základní linie verze.
Tato položka zahrnuje model synchronizace odhlášení / odbavení, včetně a meta-model (A diagram procesních dat ). Protože model odhlášení / odbavení je také součástí jiných výše diskutovaných modelů, je proto dále rozpracován. Problémy, které nejsou podrobně popsány, jsou tři zbývající modely synchronizace a vlastní úpravy CI společně s metodami, které s tím souvisejí.
Slovní zásoba
Pojem | Definice |
---|---|
Verze | Verze je stav objektu nebo konceptu, který se liší od jeho předchozího stavu nebo stavu. |
Položka konfigurace | Prvek softwaru nebo dokument pod kontrolou verzí. Skupinu CI lze také definovat jako CI (Crnkovic et al., 2003). |
Historie položky konfigurace | Koncept usnadňující razítko verze. Rozdělí atributy specifické pro verzi od atributů společných pro všechny verze (Van de Weerd, 2005) |
Dokument | Mnoho druhů dokumentace jsou součástí softwarového inženýrství. Zvažte dokumenty, které popisují architekturu softwaru, technickou dokumentaci, uživatelské příručky atd. |
Zdrojový kód soubor | Soubor zdrojového kódu obsahuje libovolnou řadu příkazů napsaných v nějakém člověku čitelném počítačovém programovacím jazyce. Zdrojovým kódem počítačového programu je soubor souborů, které lze převést z formy čitelné člověkem do ekvivalentní formy spustitelné počítačem. |
Úložiště | Úložiště se také nazývá úložiště. Úložiště obsahuje pouze jednu úplnou verzi konfigurační položky. Rozdíly mezi verzemi se obvykle ukládají pomocí delta algoritmu (Crnkovic, Asklund & Persson-Dahlqvist, 2003). |
Organizace správy verzí | Verze CI mohou být organizovány mnoha různými způsoby. Toto je nadřazený pojem pro koncepty, které popisují organizaci verzí (Crnkovic et al., 2003). |
Větev | Verze uspořádané jako paralelní vývojové linie (Crnkovic et al., 2003). |
Revize | Verze uspořádané v sekvenci (Crnkovic et al., 2003). |
Stav vývoje | Vyjadřuje, jak vývoj kusu softwaru pokročil a kolik dalšího vývoje může vyžadovat. Každá hlavní verze produktu obvykle prochází fází, kdy jsou přidány nové funkce (alfa fáze / stav), dále fází, kdy je aktivně laděn (beta fáze / stav), a nakonec fází, kdy jsou odstraněny všechny důležité chyby ( stabilní fáze / stav). |
Vypracování modelu odhlášení / odhlášení
Tato část obsahuje podrobné informace o modelu synchronizace odhlášení / odbavení.
Diagram procesních dat
Výše uvedený diagram procesních dat popisuje různé koncepty, které jsou použitelné v modelu synchronizace check-out / check-in, a jejich vztah k činnostem, které probíhají. Středem meta-datového modelu (pravá strana obrázku) je položka konfigurace. To je uloženo v jednom nebo více úložištích a může to být například soubor zdrojového kódu nebo kolekce dalších CI. Úložiště může obsahovat více větví a revizí souborů. Ty se zase skládají z položek konfigurace.
Model metaprocesu (levá strana obrázku) popisuje proces odbavení a odbavovacích aktivit. Aktivity jsou vysvětleny v tabulce aktivit níže.
Aktivita | Dílčí aktivita | Definice |
---|---|---|
Překontrolovat | Soubory se nečtou ani nezmění přímo z úložiště. Pokladna popisuje tyto činnosti. | |
Kopírovat CI | Konkrétní verze CI je zkopírována z úložiště. | |
Lock CI | Je-li vyžadován přístup pro zápis a pokud CI již není uzamčen někým jiným, je CI uzamčen. Jinak nelze CI zapsat zpět do úložiště (přístup jen pro čtení). | |
Upravit CI | Osoba upravující CI v ní provádí změny. To je mimo rozsah aktuálního meta-modelu týkajícího se správy verzí. | |
Přihlášení | KI je třeba umístit zpět do úložiště. Přihlášení popisuje tyto činnosti. | |
Vyberte strategii správy verzí | Nový CI musí být umístěn zpět do úložiště pomocí strategie správy verzí. To popisuje výběr strategie použité k umístění CI zpět do úložiště. | |
Vytvořit větev | CI je vybrán jako začátek nové pobočky. | |
Vytvořit revizi | KI je vybráno jako revize jiného KI. | |
Vyberte stav vývoje | KI je určeno k určitému vývojovému stavu. | |
Napište CI | CI je uložen v úložišti. | |
Odemkněte CI | CI je odemčeno. |
Hodnocení
Feiler (1991) vyhodnotil model synchronizace check-out / check-in. Má jasnou výhodu v tom, že se snadno používá a rozumí. Tato jednoduchost však vede k nedostatečné správě konfigurací, jako je sledování verzí produktu a kontrola historie verzí u více logicky připojených souborů.
Mechanismus otočení při zamykání je skutečným problémem také při práci s mnoha vývojáři, protože tyto soubory již po uzamčení nemohou ostatní upravovat.
Příklad
Pro ilustraci modelu synchronizace check-out / check-in obsahuje tato část příklad toho, jak tento proces funguje. Obrázek níže obsahuje a stavový přechodový diagram CI.
Při prvním vytvoření CI se upraví a uloží do úložiště. Když někdo požádá o otevření CI, nejprve se zkopíruje na místní počítač vývojáře (poznámka: existují systémy, kde k úpravám dochází přímo v úložišti. Krok kopírování je však klasický způsob odhlášení / odhlášení). Když tento vývojář chce také upravit CI, požaduje zámek. To lze provést přímo na žádost o otevření CI, ale také po určité době po jejím přečtení. Když CI ještě není uzamčen, použije se zámek a může ho vývojář upravit. Po provedení úprav se uloží zpět do úložiště a odemkne se. Předpokládejme, že právě projednávaný vývojář je v procesu úpravy CI, která je již v úložišti. Chcete otevřít CI z úložiště a tak se zkopíruje na místní jednotku. Začnete to číst a najdete nějaké věci, které chcete změnit, takže požádáte o jejich úpravu. CI je však již uzamčeno a budete si muset počkat na jeho odemčení nebo zavřít soubor a přejít k dalšímu.
Viz také
- Správa konfigurace
- Kontrola revizí
- Proces řízení změn
- Správa vydání
- Modelování struktury produktu
- Produktová řada
- Správa životního cyklu produktu
- Seznam softwaru pro kontrolu revizí
Reference
- Crnkovic, I .; Asklund, U .; Persson-Dahlqvist, A. (2003), Implementace a integrace správy údajů o produktu a správy konfigurace softwaru„London: Artech House Publishers
- Feiler, P. H. (1991), „Modely správy konfigurace v komerčních prostředích“, Technická zpráva CMU / SEI-91-TR-7, Institut softwarového inženýrství, Carnegie Mellon University
- Van de Weerd, I. (2005), Technika meta-modelování - koncept kurzu Metodické inženýrství 05/06