Základní charakteristiky iterativních a agilních metodik.
Wednesday, May 29, 2013
4:51 PM
[aswi [file], [file]]
Agile Manifest
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
From <[link]> 
Průběh iterace
Plánování cíle iterace (funkčnost)
Doplnění a zpřesnění požadavků (základ: plán projektu, vize, předchozí feedback)
Dotváření návrhu
Implementace přírůstku funkčností
Integrace přírůstku (ověření, otestování)
Předání do provozu (validace zákazníkem)
Počet a pravidla iterací
Počet: charakter projektu, fáze vývoje, obvykle alespoň 3 celkem
Pevné datum ukončení: plánováno nejpozději na začátku iterace
Běžící iterace uzavřena změnám zvenčí (nutné pro stabilitu projektu), potřebuje dobré změnové a projektové řízení, zdroje tlaku na změnu: čas, funkčnost, postup
Délka iterace
Malá je lepší – blízký cíl, menší složitost/riziko, rychlá adaptace, vysoká produktivita
1-4 týdny pro malé, 3-6 týdnů velké projekty, zřídka měsíce
Vždy pevné datum ukončení
Timeboxované iterace = délka známa předem
LCO (Lifecycle Objectives)
Srozumění s rozsahem, cenou, harmonogramem
Souhlas s požadavky a jejich klíčovostí
Navrhovaný postup vývoje souhlasí
Rizika identifikována a řešení známo
Artefakty
Vize produktu, business case
Seznam rizik a strategie jejich řešení
Slovník pojmů a přehled klíčových požadavků
Koncept technického řešení (architektura + prototypy)
Plán projektu
Popis procesu a infrastruktury
LCA (Lifecycle Architecture)
Vize a klíčové požadavky jsou stabilní
Testy ověřily, ze architektura řeší rizikové požadavky/faktory
Jsou přesnější odhady pracnosti, na nich postaveny plány
Nástroje a postupy pro realizaci jsou v provozu
Stakeholders: vize realizovatelná, spotřebované zdroje adekvátní
Artefakty
Vize produktu
Seznam rizik a strategie jejich řešení
Popis architektury, validační testy
Plán projektu, popis infrastruktury
Dokument specifikace požadavků (DSP)
IOC (Initial Operational Capability)
Je hotová beta verze produktu
Implementace je dokumentovaná, existují používané testy
Je rozpracována uživatelská dokumentace
Jsou aktualizovány popisy návrhu, datového modelu, požadavků
Artefakty
Testovací sady + reporty
Architektura (aktualizována) + popis implementace
Uživatelská příručka
GA (General Availability)
Uživatel je spokojen s produktem
Stakeholders jsou spokojeni s produktem
uvést produkt do rutinního provozu – „krabice“ s produktem, website launch, raut :-)
support team v provozu
Artefakty
Release produktu
Podpůrné materiály (uživatelská dokumentace)
Baseline kompletní konfigurace release
Charakter iterací dle fáze
Základní schéma pevné, mění se činnosti a artefakty
Zahájení – analytické činnosti, validace vize zákazníkem (1-2 iterace)
Projektování – analytické a designérské činnosti, ověřování prototypy, implementace (2+ iterací)
Konstrukce – designérské a programátorské činnosti, změnové řízení, testování a ověřování (N iterací)
Nasazení – integrační a konzultační činnosti, ověřování provozem, náběh uživatelské podpory (1-2 iterace)
From <[link]> 
Základní charakteristiky iterativních a agilních metodik.
Iterativní a agilní metodiky
Postupujeme po jednotlivých iteracích, v rámci jedné iterace postupujeme sekvenčně (ala vodopád), na konci každé iterace musí být k dispozici funkční software. 
V rámci iterace máme fáze: requirements, design, implementation, testing, deploy
V rámci všech iterací jsou to pak fáze: inception, elaboration, construction, transition
Funkční software můžeme předvést zákazníkovi a na základě zpětné vazby upřesnit požadavky.
Konce iterace jsou pevně dány, pokud se nestíhá, je možné omezit funkcionalitu, ale konec iterace nelze posunout. Během iterace nemůže dojít ke změně požadavků, je to zakázáno. Na konci iterace se hned plánuje další iterace. 
Minimum jsou alespoň 3 iterace, ale může jich být samozřejmě více, záleží na charakteru projektu. Délka iterací je typicky 2 týdny, ale může být více i méně. Na konci každé iterace je provedeno review, neboli zhodnocení.
LCO
Life Cycle Objectives – milník, kdy již máme první verzi specifikace požadavků, seznam rizik, cena, rozsah, harmonogram…
Artefakty: vize produktu, business case, seznam rizik a strategie řešení, slovník pojmů a přehled klíčových požadavků, plán projektu, koncept technického řešení (architektura + prototypy)…
LCA
Life Cycle Architecture – milník, kdy již máme ustálenou architekturu systému, zpřesněnou specifikaci požadavků, ověřenou architekturu, eliminována kritická rizika (prototypy)
Artefakty: zpřesněná vize, seznam rizik a jejich řešení, popis architektury, validační testy…
IOC
Initial Operational Capability – milník, kdy máme funkční spustitelnou verzi programu, která už vykonává základní funkcionalitu (beta)
Artefakty: spustitelná verze aplikace, dokumentace, uživatelský manuál, testovací sady + reporty, plán nasazení…
GA
General Availability – milník, kdy support tým je v pohotovosti, software v krabicích připraven k distribuci a my organizujeme raut
Artefakty: Release produktu, podpůrné materiály, baseline kompletní konfigurace