450 likes | 548 Views
Visual Studio Team Foundation Server a Vy. ŘEŠENÍ PRO TÝMOVOU INFRASTRUKTURU. TÝMOVÉ PROJEKTY. AGENDA. AGENDA. ÚKOLY V PROJEKTU. ÚKOLY V PROJEKTU. Mnoho seznamů Nekonzistence. Nepropojeno s ostatními nástroji. ŘEŠENÍ – WORK ITEMS. ŘEŠENÍ – WORK ITEMS. DEMO.
E N D
Visual Studio Team Foundation Server a Vy ŘEŠENÍ PRO TÝMOVOU INFRASTRUKTURU
ÚKOLY V PROJEKTU Mnoho seznamů Nekonzistence Nepropojeno s ostatními nástroji
DEMO Zadávání práce pomocí work items Možnosti práce s work items
PŘÍSTUP K WORK ITEMS Uloženo v relační databázi Autorizace a oprávnění Dáno členstvím ve skupině Integrace s Active Directory Možní klienti Visual Studio 2005 MS Excel 2003 MS Project 2003 WebService (SOAP) Možnost tvorby vlastních klientů
KONFIGURAČNÍ MANAGEMENT Úplně nový produkt! Založeno na MS SQL 2005 Optimalizováno pro vzdálený přístup Podpora velkých souborů Žádné skutečné mazání Integrace s unit testy a work items Správa verzí a konfigurační management Podpora standardních operací (Check-in, Check-out, Branch, Merge) Klíčové vlastnosti Atomický check-in (changeset) Integrovaný check-in Paralelní vývoj Psaní do šuplíku (shelving)
WORKSPACE Úložiště souborů na klientovi Obsahuje pracovní kopie vybraných souborů z TFS Přísluší jednomu vývojáři Vývojář provádí změny do Workspace Mapování adresářů Mapování lokální adresářů na repository Umožňuje práci offline Bez připojení k TFS (pouze práce se zdrojovými kódy) Synchronizace s TFS Workspace udržuje seznam změněných souborů Pomocí okna Pending Changes lze provést Check-In
UKLÁDÁNÍ SOUBORŮ Komprese + uložení změn ≈ 70% úspora místa!
CHANGESET „Transakce“ ve stromu zdrojového kódu Proti úložišti je uplatněna nedělitelně „Všechno nebo nic“ Množinu souborů, které tvoří transakci, určuje vývojář: Výchozí stav = všechny lokálně změněné Pohodlná správa změn Obsahuje metadata (komentáře apod.) Může mít vazbu na položky ze seznamů (work items) Changeset lze využít k návratu zpět
INTEGROVANÝ CHECK-IN Vizuální podpora pro přidání (případně vynucení) následujících ingrediencí ke každému changesetu Položky Work Items Komentář Check-in Notes (definovaná metadata) Kdo provedl revizi apod. Politiky: Provedení skupiny unit testů Provedení analýzy kódu Povinná asociace s Work Items položkou Možnost vytvoření vlastní politiky (rozšiřitelnost)...
PARALELNÍ VÝVOJ Současný vývoj více verzí softwaru, např.: Úpravy stávající verze a zároveň vývoj nové verze vývoj hotfixu na stávající verzi Branching Vytvoření logického klonu větve stromu kódu Nezměněné soubory existují v úložišti pouze jednou Merging Sloučení změn provedených od okamžiku oddělení větví Přidání, smazání, přejmenování, modifikace apod. Je možné provést kompletní sloučení anebo pouze sloučit změny z vybraného changesetu
PSANÍ DO ŠUPLÍKU Pojmenované uložení změn na server Formálně nejde o check-in Volitelně je možné se vrátit k původním verzím Soubory lze ze „šuplíku“ vyjmout a případně sloučit s existujícími změnami Některé scénáře: Nutnost přerušení práce Uložení aktuálního stavu („checkpoint“) Přesun nedokončené práce na jiného člena týmu Revize kódu jiným členem týmu před provedením check-inu
DEMO Integrovaný check-in Branch and merge Source Control Explorer
DENNÍ BUILD ”Denní build je srdce projektu. Pokud srdce netepe, projekt má velký problém.“ Měl by být plně automatický Neexistuje omluva, pokud chybí – čím složitější projekt, tím více ho potřebuje Stav projektu je daleko více transparentní: Omezení možnosti nepříjemných překvapení V každou chvíli je k dispozici produkt s nějakou funkčností Projekt je pomocí buildu průběžně měřen
DŮLEŽITÉ VLASTNOSTI Klíčové metriky: Výsledky testů a jejich pokrytí kódu (code coverage) Statická analýza kódu Změny v kódu (code churn) Udržování vazeb na changesety a položky Work Items Uložení v SQL databázi umožňuje sledování historie a trendů Rozšiřitelnost Možnost vytváření vlastních úloh (build task) Možnost definice posloupnosti a parametrů úloh (.targets) Možnost integrovat buildy aplikací pro starší technologie .NET 1.1 VB6
DEMO Základní operace s buildem Vytvoření Spuštění Zobrazení výsledku Integrace s ostatními komponentami Unit testing Work items
DEMO Projektový portál
REPORTY Historické i aktuální sumární informace z podsystémů TFS jsou udržovány v datovém skladu Detailní informace lze získat z operačních databází jednotlivých podsystémů Předdefinované reporty jsou součástí šablony Metodologie Možnost modifikace přímo v šabloně anebo pro konkrétní týmový projekt Používá SQL Server Reporting Services Možnosti – definice RDL ve Visual Studiu, export do různých formátů, Report Builder, předplatné reportů, web party pro reporty apod.
VYTVOŘENÍ TÝMOVÉHO PROJEKTU • Na základě šablony procesu: • MSF for Agile Software Development • MSF for CMMI Process Improvement • Vlastní anebo upravená cizí šablona • Šablona obsahuje: • Typy udržovaných seznamů (work items) • Položky v těchto seznamech • Skupiny a jejich oprávnění • Reporty • Úvodní obsah projektového portálu (šablony dokumentů apod.) • Politiku pro check-in • Integrovanou nápovědu metodologie • Iterace projektu
PŘÍKLADY ÚPRAV ŠABLONY • Metodologie • Modifikace existující • Vytvoření vlastní • Typy seznamů • Modifikace existujících • Vytvoření vlastních • Programová úprava pomocí objektového modelu WIOM • Správa zdrojového kódu • Které politiky musí být splněny • Reporting • Úprava existujících reportů • Přidání vlastních reportů • Použití jiného reportovacího nástroje (Excel, OWC,...) • Projektový portál • Úprava počátečního obsahu • Vlastní knihovny dokumentů, seznamy, webparty,...