Co je vývoj softwaru?
Vývoj softwaru je proces, kterým společnost, tým nebo jednotlivec vymyslí a realizuje celkový plán vytvoření nového softwarového programu. Tento proces lze také použít na zavedený program k vytvoření nové verze tohoto softwaru, i když se jedná obvykle o zkrácenou verzi procesu, pokud se nová verze do značné míry neliší od předchozí verze. Do tohoto procesu je zapojeno mnoho kroků, počínaje pochopením toho, co je potřeba od softwaru, vypracováním plánu jeho vytvoření, napsáním kódu a testováním chyb před spuštěním. Vývoj softwaru může být proces, který zahrnuje cokoli od jednoho programátora po desítky nebo stovky jednotlivců.
Proces vývoje softwaru obvykle začíná výzkumem nebo obecným pochopením toho, jaký typ softwaru je na trhu zapotřebí. Může se jednat o zcela nový program, který řeší nenaplněné potřeby nebo nový kus softwaru na stávajícím trhu. Jak vývoj softwaru začíná, tento výzkum stanoví účel vyvíjeného softwaru a celkové cíle vývoje.
Jakmile mají osoby zapojené do vývoje softwaru cíl pro program, na kterém pracují, mohou začít vyvíjet plán implementace tohoto softwaru. Před vytvořením jakéhokoli skutečného kódu je obvykle zapotřebí hodně práce, zejména pro aspekty programu, jako je uživatelské rozhraní a základní architektura. Do této fáze vývoje mohou být zapojeni grafičtí designéři, vývojáři rozhraní, programátoři a výrobci velkého týmu.
Vývoj softwaru pak obvykle přechází od těchto raných fází nápadů k brainstormingu k vytvoření celkové struktury programu ke skutečnému psaní kódu pro software. Tato implementace obvykle zahrnuje jednoho nebo více počítačových programátorů a zdrojový kód je vytvořen v libovolném počtu různých aplikací, programovacích jazyků a dalších nástrojů. Během a po vytvoření kódu se obvykle provádí velké množství testů, aby se zajistilo, že program běží správně a že je bez chyb, závad a chyb.
Probíhající vývoj softwaru může pokračovat i po napsání, testování a spuštění programu pro širokou veřejnost. Takový vývoj může sloužit k opravě chyb nalezených po spuštění nebo k zavedení drobných vylepšení a některých nových funkcí. Zpětná vazba od uživatele může být také použita ke shromažďování informací o způsobech, jak by se program mohl vylepšit ve větším smyslu. Tato zpětná vazba pak může být použita k opětovnému zahájení vývoje softwaru na nové verzi programu, která může nabídnout funkce a nástroje, které nebyly nalezeny v předchozí verzi.