1 / 37

Twitter hashtag: #cztechdays

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:

zasha
Download Presentation

Twitter hashtag: #cztechdays

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Twitter hashtag: #cztechdays

  2. Twitter hashtag: #cztechdays

  3. VS 11 – novinky pro správuživotního cyklu aplikací Michael JuřekSoftware ArchitectMicrosoft s.r.o. Twitter hashtag: #cztechdays

  4. Vize pro ALM • 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

  5. Agilní vývoj a VS/TFS • Netlačíme vás do žádné konkrétní metodiky • Naš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

  6. Vývoj Provoz Product Backlog Požadavky Chybí zpětná vazba Nepochopenípožadavků Konflikt zájmůa priorit Nelze zjistitpříčinu Nelze reprodukovatproblém Iterace Monitorování Dezorientace Kvalita kódu Dodaná verze Operations Backlog

  7. Agenda • 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í

  8. Rychlá a agilní analýza • 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 …

  9. … PowerPoint. Cože??? Proč ne??? • 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í vzhledu • Vlastní knihovny tvarů specifických pro vývoj • Integrace s TFS pro zapojení do životního cyklu

  10. DEMO Storyboarding

  11. Agenda • 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í

  12. Problém • 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

  13. Agilní plánování a řízení • 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/do • Mož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

  14. Plánování produktu Product Backlog 3 8 5 3 Priorita 5 8 1

  15. Rozdělení do iterací Product Backlog Sprint Backlog 5 8 5

  16. Plánování iterace Sprint Backlog Product Backlog

  17. Řízení iterace Sprint Backlog Product Backlog

  18. DEMO Plánování produktu a iterace Task board pro sledování postupu

  19. Agenda • 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í

  20. Slyšeli jsme… • Typický postup: • Zapnu analýzu kódu – všechna pravidla • Analyzuji svoje 10 let vyvíjené řešení • Vypadne 20.000 porušení • 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

  21. Analýza kódu je užitečná • 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ýsledky • Nenechte 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ů

  22. Revize kódu • 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ódu • Přirozené předávání řízení procesu a komunikace • Flexibilní 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 • …

  23. DEMO Analýza kódu, revize kódu

  24. Agenda • 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í

  25. Agilní testování • 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

  26. Akceptační testy s menší režií • 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í

  27. Testovací prostředí 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

  28. DEMO Neformální testování

  29. Agenda • 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í

  30. Vytváříme správnou věc? • 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žadavky • Zpětná vazba často zcela chybí nebo je nahodilá • Nad poskytnutou zpětnou vazbou není efektivní proces

  31. Nástroj pro zpětnou vazbu • Okamžitá a přehledná zpětná vazba • Rychlé odhalení funkčních problémů aplikace • Minimá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

  32. DEMO Nástroj pro zpětnou vazbu

  33. Agenda • 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í

  34. Problém • 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 vymizet • Diagnostiku není možné spustit v okamžiku objevení problému

  35. Historické ladění v produkci • 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 aplikace • Analý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)

  36. DEMO IntelliTrace v produkčním prostředí

  37. Závěrem 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í

More Related