Amikor körvonalazódik egy igény, hogy egy problémát számítógépes programmal szeretnénk megoldani, akkor érdemes elgondolkodni azon, hogy ebből a zseniális ötletből hogyan lesz használható, és adott esetben eladható szoftver.
Ahhoz, hogy a fejlesztési folyamat hatékony legyen, érdemes előre meghatározott lépéseken végigmenni, hogy tudjuk, honnan indultunk, és azt is, hogy hova szeretnénk eljutni. (Ebből az alapötletből indul ki a szoftverprojekt-menedzsment, mint különálló tudomány)
Alapvetően a folyamat három nagy részből áll: tervezés, megvalósítás és karbantartás.