Popište proces vývoje softwaru, jeho jednotlivé fáze a charakterizujte profese, které se na něm podílejí. Odlište vodopádový a spirálový styl vývoje. Vysvětlete, jak se typicky označují jednotlivé verze

Software (dále jen SW), neboli programové vybavení počítače, které provádí nějakou činnost. Jedná se o nehmotnou část počítače, tedy opak hardwaru.

Historie

Vývoj software

Metodika vývoje

Metodika vývoje softwaru je souhrn různých postupů, plánování a řízení vývoje a zároveň také samostatný obor zabývající se vytvářením, prováděním a ovlivňováním jednotlivých metodik vývoje SW. Metodikou se také může chápat využití určitého frameworku a dalších postupů. Dříve se používaly tradiční metodiky vývoje, které se ale nakonec neujaly, kvůli velké byrokratické zátěži a přešlo se k agilním metodám.

Fáze vývoje

Profese podílející se na vývoji

Styly vývoje

Vodopádový (Watterfall)

Vodopádový model.png

Framework - lineární nebo také tzv. sekvenční typ
Vodopádový styl vývoje SW je považován za první kompletní metodiku vývoje SW. Vývoj je v tomto modelu vyobrazen jako neustále se svažující tok činností. Postup je přesně daný, jde od první fáze k další přísně sekvenčním způsobem. Fáze jdou za sebou bez iterací a po každé fázi následuje schvalovací proces, kterým musí projit také veškerá dokumentace. Bez tohoto procesu schválení není možné pokračovat a začít další fázi vývoje. Pokud se i přes schválení najde v další fázi chyba, je nutné se vrátit zpět do fáze předchozí.

Klady

  • jednoduchost - jednoduchý na pochopení, práci i jeho řízení.
  • přehlednost - je snadno zjistitelné v jaké fázi se projekt právě nachází, co už je splněno a kde nastala chyba, pokud se tak stane.

Zápory

  • stáří - změna postoje společnosti na vývoj SW od jeho zavedení.
  • není flexibilní - pokud se během vývoje objeví nový požadavek na SW, musí se celý proces začít znovu od začátku.
  • zákazník vidí až konečný výsledek - není možné během vývoje prezentovat zákazníkovi jak bude vypadat výsledek, jelikož jsou hotové jen určité fáze vývoje. Konečný výsledek, tedy nemusí být pro zákazníka uspokojivý.

Spirálovitý

Spirálovitý model.png

Framework - kombinace sekvenčního a iterativního typu.
Novější metodika, než watterfall. Je výsledkem snahy napravit nedostatky předchozího modelu. Vznikl v roce 1958 z iniciativy Barryho Boehma. Tento model se dá označit spíše za model životního cyklu SW než metodiky vývoje jelikož je v něm vyobrazeno cyklické opakování jednotlivých kroků vývoje (tzv. iterace).
Vychází z předchozího modelu, ale přináší mnoho novinek:

  • interaktivní přístup
  • podrobná analýza rizik