Co je to Waterfall Model?
Waterfall Model (vodopádový model) je tradiční metodologie vývoje software, kde projekt postupuje lineárně přes jasně definované fáze – požadavky, návrh, implementace, testování, nasazení a údržba. Každá fáze musí být kompletně dokončena před začátkem další, podobně jako voda teče vodopádem směrem dolů – nemůže téct zpět nahoru. Model vznikl v 70. letech a dlouho byl standardem ve vývoji software, zejména ve velkých korporacích a státních projektech.
V Waterfall modelu vývoj začíná detailní analýzou požadavků – co produkt má dělat, jaké funkce obsahovat, kdo ho bude používat. Tato fáze produkuje rozsáhlou dokumentaci specifikací. Následuje návrhová fáze, kde se vytváří architektura systému, databázové schéma, wireframy a technické blueprinty. Teprve poté začíná implementace – programátoři píší kód podle specifikací. Po dokončení kódování přichází testování – QA tým hledá a reportuje bugy. Následuje nasazení a dlouhodobá údržba. Teoreticky je vše naplánováno předem a vývoj postupuje přesně podle plánu.
Klíčová charakteristika Waterfall je neměnnost – jakmile je fáze dokončena, vrátit se zpět je nákladné a komplikované. Pokud po 6 měsících vývoje zákazník řekne „Vlastně bych chtěl tuto funkci jinak", znamená to přepracování požadavků, designu, kódu a testů – často nákladnější než původní vývoj. Proto Waterfall vyžaduje velmi precizní plánování a kompletní pochopení požadavků na začátku. To je zároveň jeho největší slabina – v reálném světě se požadavky mění, objevují se nové informace a není možné vědět všechno dopředu.