Софтвер представља програмски систем рачунара. Практично софтвер представља збирни појам за програме који хардвер рачунара претварају у користан уређај. На тај начин захваљујући програмима рачунар постаје уређај који помаже човеку у решавању различитих задатака. Као што се види о појму и значењу софтвера може се нашироко писати. Циљ овог текста није да се бави образовним већ практичним аспектима софтвера. Опште је познато да се софтвер дели на: системски и апликативни. Развојем рачунарске технике, а посебно ширењем примене рачунара дошло је до даљег рашчлањавања у структури софтвера. Између две традиционалне врсте софтвера уметнула се и трећа врста – алати за пројектовање софтвера.
Системски софтвер обухвата све програме који у заједници са хардвером рачунара граде платформу на којој се базира конкретна примена. И на којој се развија апликативни софтвер. Најважнији делови системског софтвера су: оперативни систем, језички преводиоци и линкери. Део системског софтвера чине и тзв. помоћни програми. Они служе за анализу и одржавање рачунара. У те програме спадају, антивирусни програми, програми за прављење резервних копија датотека, менаџери датотека и алати за компресију диска.
Што се тиче апликативног софтвера он обухвата програме који су намењени за извршавање специфичних функција корисника. С обзиром да су неке операције заједничке за више корисника на тржишту се могу наћи готови програми за ту намену. Типични примери су програми за обраду текста, табеларна израчунавања, претраживање Интернета, савремене мобилне апликације, итд. С друге стране специфични захтеви корисника задовољавају се развојем наменских апликативних програма.
Потреба за све сложенијим рачунарским програмима утицао је на потребу за развојем алата за пројектовање софтвера. Поред стандардних послова везаних за унос текста програма, превођење и повезивање ови системи нуде читав низ додатних могућности. Пре свега подршку у развоју алгоритама, тестирању и отклањању грешака у програмима. Такође, ови програми обезбеђују и израду документације која треба да прати сваки програм.