A rendszerfejlesztés a programozást (az implementációt) a szoftverfejlesztés egyik lépéseként kezeli. A rendszerfejlesztés eszköztárát a feladat nagyságától, illetve céljától függően használják fel a programozás során: a szabványos modellező és rendszerfejlesztési módszertanok, projektmenedzsment, gyors alkalmazásfejlesztés, programverifikáció, stb.
Teljesen elektronikus működés (ez Neumann idejében elektroncsöves felépítést jelentett, amit később a tranzisztoros, majd az integrált áramkörös felépítés követett)
Kettes számrendszer használata (az összes művelet, pl. összeadás, szorzás, kettes számrendszerbeli logikai műveletekre redukálható)
Belső memória használata
Tárolt program elve. A számításokhoz szükséges adatokat és programutasításokat a gép azonos módon, egyaránt a belső memóriában (operatív tár) tárolja.
Soros utasításvégrehajtás (az utasítások végrehajtása időben egymás után történjen; ennek egy alternatívája a párhuzamos utasításvégrehajtás, amikor több utasítás egyidejűleg is végrehajtható: ezt a lehetőséget Neumann elvetette)
Univerzális felhasználhatóság, Turing-gép (programozhatóság; a különböző feladatok programokkal legyenek megoldva, nem pedig erre a célra épített hardverrel)
Szerkezet: öt funkcionális egység (aritmetikai egység, központi vezérlőegység, memóriák, bemeneti és kimeneti egységek)
A számítógép-programozás mai tudománya az 1980-as évektől kezdett kialakulni, amikor már komplett programrendszerekre volt szükség, amelyek nagyméretű adatbázisokat használtak.
A különféle programtervező, algoritmusleíró és vezérlő szerkezetek a programozási feladat műveletekre bontását, és az elemi műveletek végrehajtási sorrendjét írják le.
A módszertanok mindegyike abból indul ki, hogy egy program algoritmusa háromféle típusú vezérlési szerkezet segítségével írható le:
Szekvencia: a sorban egymást követő elemi utasítások végrehajtása
Szelekció: feltétel(ek)től függő tevékenység(ek) végrehajtása, több irányban folytatva az előrehaladást
Iteráció: ismétlési szerkezet, elemi utasítások ciklikus végrehajtása feltétel alapjánAz idők során különféle módszertanok és grafikus - a program algoritmusának vizuális leírására alkalmas - tervezési eszközök jöttek létre:
Folyamatábra (Control flow graph)
Struktogram (Chapin-chart)
Jackson-diagram (JSP diagram)
A szoftver egy gyűjtőnév a számítógépes programokra és adatokra.