Tworzenie oprogramowania to skomplikowany proces , który polega na opracowywaniu, specyfikowaniu, projektowaniu, programowaniu, dokumentowaniu, testowaniu i usuwaniu błędów związanych z tworzeniem aplikacji, struktur oraz innych komponentów oprogramowania.
Jest to także proces polegający na pisaniu kodu źródłowego i jego utrzymaniu. Obejmuje wszystko począwszy od koncepcji pożądanego oprogramowania, a skończywszy na ostatecznej jego wersji. Do działań związanych z tworzeniem oprogramowania należy także prowadzenie badań, konserwacja, przeprojektowanie oraz inne działania, które prowadzą do powstania oprogramowania.
Do głównych i najczęściej stosowanych sposobów wytwarzania oprogramowania należą: