Twitter hashtag: #cztechdays

Preview:

DESCRIPTION

Twitter hashtag: #cztechdays. Twitter hashtag: #cztechdays. VS 11 – novinky pro spr ávu životního cyklu aplikací. Michael Juřek Software Architect Microsoft s.r.o. Twitter hashtag: #cztechdays. Vize pro ALM. Vytvořit moderní ALM prostředí, na principech: - PowerPoint PPT Presentation

Citation preview

OREA Hotel Voroněž IBrno

5. – 6. 3. 2012

Twitter hashtag: #cztechdays

Top Hotel Praha

7. – 8. 3. 2012

Twitter hashtag: #cztechdays

Michael Juřek Software ArchitectMicrosoft s.r.o.

VS 11 – novinky pro správuživotního cyklu aplikací

Twitter hashtag: #cztechdays

Vytvořit moderní ALM prostředí, na principech: Spolupráce pomocí integrace zahrnující všechny role

během celého životního cyklu Rychlá, jasná a užitečná zpětná vazba, která minimalizuje

plýtvání časem lidí Přirozený nástroj pro každou roli (IDE, Office, prohlížeč,

speciální nástroje) Transparentní agilní procesy a techniky

Vysvětlivky: ALM = Application Lifecycle Management

Vize pro ALM

Netlačíme vás do žádné konkrétní metodikyNaše nástroje se řídí jednoduchými principy Přirozený nástroj pro každého člena týmu (Visual

Studio, Excel, Project) Minimálizace ne-pracovních aktivit (režie) Nástroje pro osvědčené agilní techniky (např.

kontinuální integrace) Inovace v oblastech způsobujících největší ztrátu

produktivity

Agilní vývoj a VS/TFS

Dodaná verze

PožadavkyProductBacklog

OperationsBacklog

MonitorováníIterace

Dezorientace

Konflikt zájmůa priorit

Nepochopenípožadavků

Nelze zjistitpříčinu

Nelze reprodukovatproblém

Chybí zpětná vazba

Vývoj Provoz

Kvalita kódu

• Storyboarding• Agilní plánování a týmy• Zlepšení kvality kódu• Agilní testování• Získání zpětné vazby• Diagnostika v produkčním prostředí

Agenda

Dosavadní používané prostředky: Popis ve Wordu – málo čitelný, neposiluje představivost,

obtížná zpětná vazba Modelování, UML – proprietární nástroje; precizní, ale těžko

srozumitelné„A picture says a thousand words“Hledáme přirozený nástroj pro:

Prototypování – rychlé, agilní, věrné, vizuální Umožňující snadnou a okamžitou zpětnou vazbu Bez nutnosti učit se něco úplně nového … a ten nástroj je …

Rychlá a agilní analýza

Vše potřebné víceméně umí Grafika, seskupování, kreslení, revize, kontrola

pravopisu, screenshoty, animace, prezentace, anotace, vložení libovolného obsahu

Je dostupný – otevře ho každý, zná ho každý Tisk, odeslání mailem, integrace se SharePointem,

zobrazení v prohlížeči, paralelní editace, verzování, …Master slidy pro znovupoužití vzhleduVlastní knihovny tvarů specifických pro vývojIntegrace s TFS pro zapojení do životního cyklu

… PowerPoint. Cože??? Proč ne???

DEMO

Storyboarding

• Storyboarding• Agilní plánování a týmy• Zlepšení kvality kódu• Agilní testování• Získání zpětné vazby• Diagnostika v produkčním prostředí

Agenda

Tradiční plánování v softwarových projektech často selháváReakcí je velký nástup agilních přístupůTFS má kvalitní úložiště, ale chybí mu moderní nástroje pro agilní plánování Excelové sešity nejsou ideální Existují řešení od třetích stran

Problém

Nové webové rozhraní pro TFS Moderní, rychlé, přístupné z libovolného zařízení Excel/Project stále preferován pro hromadnou editaci

Explicitní definice iterace – datum od/doMožnost definice týmů

Tým je definován oblastmi týmového projektu Ve velkých projektech více týmů

Podpora plánování nezávislá na použité metodice Plánování produktu – rozdělení práce do iterací Plánování iterace – rozdělení práce lidem Řízení iterace – sledování postupu, dynamické změny Vizualizace aktuálního stavu pomocí task boardu

Agilní plánování a řízení

5

3

8

3

Product Backlog

1

8

Pri

ori

ta

5

Plánování produktu

Product Backlog

Sprint Backlog

Rozdělení do iterací

5

8

5

Product Backlog

Sprint Backlog

Plánování iterace

Product Backlog

Sprint Backlog

Řízení iterace

DEMO

Plánování produktu a iteraceTask board pro sledování postupu

• Storyboarding• Agilní plánování a týmy• Zlepšení kvality kódu• Agilní testování• Získání zpětné vazby• Diagnostika v produkčním prostředí

Agenda

Typický postup:1. Zapnu analýzu kódu – všechna pravidla2. Analyzuji svoje 10 let vyvíjené řešení3. Vypadne 20.000 porušení4. Vypnu analýzu kódu

Statická analýza kódu (managed i C++) vypadá dobře, ale nepoužíváme ji Není snadné ji nastavit a udržet centrálně Výsledků je příliš mnoho Výsledky nejsou pochopitelné a nevedou k akci

Slyšeli jsme…

Systematicky hledá problémy v kódu již při kompilaci, doplňuje tradiční testováníVylepšení ve VS 11:

Hromadné nastavení pro celé řešení Nové okno pro analýzu, rychlý náhled, akce Prioritizace pomocí filtrování a textové hledání Rozšířená pravidla, přesnější výsledkyNenechte se zahltit !!!

Začněte s malou sadou pravidel, postupně přidávejte další pravidla

Udělejte analýzu kódu součástí vašich automatických buildů

Analýza kódu je užitečná

Plná integrace do prostředí a procesu Bez nutnosti vlastních nástrojů anebo řešení třetích stran

Možnost použití ad hoc anebo jako systematický prostředek pro vyšší kvalitu kóduPřirozené předávání řízení procesu a komunikaceFlexibilní náhled na kód integrovaný do prostředí: Více možných pohledů Syntax highlighting Podpora pro komentáře ke konkrétním řádkům …

Revize kódu

DEMO

Analýza kódu, revize kódu

• Storyboarding• Agilní plánování a týmy• Zlepšení kvality kódu• Agilní testování• Získání zpětné vazby• Diagnostika v produkčním prostředí

Agenda

Akceptační testování provádí nějakou formou prakticky všechny týmy TFS 2010 podporuje formální strukturované

testování Agilnější neformální testování (exploratory

testing) není v TFS 2010 dobře podporováno

Agilní testování

Podpora pro oba styly testování v TFS 11 Strukturovaný – s formálně definovanými

testovacími případy, plány, konfiguracemi Nestrukturovaný – procházení hotové funkčnosti a

hledání slabých míst (exploratory testing)Výhody pro oba styly testování: Sdílení kontextu chyby mezi vývojářem a testerem Automatizace rutinní činnosti testera Měřitelnost kvality a testovacího úsilí

Akceptační testy s menší režií

Standard environment – snadnost použití: Fyzické počítače anebo virtuály Žádná konfigurace TFS, žádné prerekvizity Schopnosti:

Automatická instalace agenta do prostředí Možnost spuštění libovolného skriptu Možnost spuštění automatizovaných testů

SCVMM environment – maximální možnosti: HyperV virtuály řízené Virtual Machine Managerem (SCVMM) Schopnosti navíc:

Spuštění, zastavení Klonování, současný běh více instancí (network isolation) Snapshoty

Testovací prostředí s menší režií

DEMO

Neformální testování

• Storyboarding• Agilní plánování a týmy• Zlepšení kvality kódu• Agilní testování• Získání zpětné vazby• Diagnostika v produkčním prostředí

Agenda

Velmi často vytváříme věci, které si myslíme, že zadavatel chce Ne ty, které skutečně chce

Příčinou jsou špatně komunikované požadavkyZpětná vazba často zcela chybí nebo je nahodiláNad poskytnutou zpětnou vazbou není efektivní proces

Vytváříme správnou věc?

Okamžitá a přehledná zpětná vazbaRychlé odhalení funkčních problémů aplikaceMinimální režie: Textové komentáře Snímky částí obrazovky Videozáznam Audio komentář

Řízené workflow nad zpětnou vazbou Jsou to pracovní položky Email pro komunikaci

Nástroj pro zpětnou vazbu

DEMO

Nástroj pro zpětnou vazbu

• Storyboarding• Agilní plánování a týmy• Zlepšení kvality kódu• Agilní testování• Získání zpětné vazby• Diagnostika v produkčním prostředí

Agenda

Vývojáři nemají přístup do produkčního prostředíSimulace produkčního prostředí je prakticky nemožnáDiagnostika pomocí logování vyžaduje odstávku nebo nasazení nové verze V každém případě to znamená restart aplikace,

čímž může problém vymizetDiagnostiku není možné spustit v okamžiku objevení problému

Problém

Nevyžaduje žádnou instalaci na produkční server (stačí „přinést USB klíč“)

Potřebné binární soubory pro IntelliTrace Nastavení sbíraných událostí ve formě XML souboru PowerShell pro skriptování sběru, dávkové soubory, …

Nevyžaduje restart procesu aplikaceAnalýza ve Visual Studiu:

Vyžaduje Source Server a Symbol Server, obojí je součástí TFS, je triviální na nastavení a je užitečné i v dalších scénářích

Status kódy HTTP požadavků, výjimky, zvolené události (ADO.NET, ASP.NET, …), zásobník, hodnoty proměnných

Do budoucna – integrace s Operations Managerem (SCOM)

Historické ladění v produkci

DEMO

IntelliTrace v produkčním prostředí

Zajistěte si nové Visual Studio formou existující MSDN subskripce:• Storyboarding• Agilní plánování a týmy• Zlepšení kvality kódu• Agilní testování• Získání zpětné vazby• Diagnostika v produkčním prostředí

Závěrem

Recommended