Upload
zasha
View
70
Download
0
Embed Size (px)
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