Komponentni softver, koji se ponekad naziva komponentni softver, odnosi se na zasebni modul ili programski objekt koji radi neovisno o drugim komponentama u sustavu, održavajući komunikaciju s cijelim sustavom. Jednostavnije rečeno, komponenta je izgrađena da pruži određeni zadatak ili uslugu. Iako se ova vrsta softverskog inženjeringa temelji na objektno orijentiranom programiranju, smatra se zasebnom i naprednijom klasifikacijom koja se naziva servisno orijentirano programiranje. Pojedinačni moduli komponenti omogućuju da sustav nastavi funkcionirati u slučaju pada jednog programa.
Termin komponentni softver prikladno opisuje način na koji svaki od pojedinačnih programskih modula čini komponentu ili dio cijelog sustava. Na primjer, razmotrite način na koji je automobil sastavljen od mnogo različitih dijelova. Neki dijelovi su bitniji za njegovu funkciju od drugih, ali, kao cjelina, ako pojedini nekritični sustav pokvari, kao što je radio, ostatak automobila će nastaviti funkcionirati. Programiranje komponentnog softvera slična je shema dizajna u kojoj više dijelova stvaraju cijeli sustav.
Ova vrsta softvera se obično koristi u programskim aplikacijama kada potpuni kvar sustava može stvoriti probleme sa sigurnošću ili biti smetnja. Takve aplikacije uključuju softver za obradu narudžbi i plaćanja, softver za vođenje evidencije, pa čak i internetske preglednike. Pojedinačni zadaci koje obavlja softver ove vrste delegiraju se pojedinačnim komponentama softvera. Ovi dijelovi osiguravaju stabilnu funkciju cijelog sustava, a istovremeno štite sigurnost sustava, jer je svaka komponenta izolirana od ostalih.
U slučaju internetskih preglednika, pojedinačne komponente mogu funkcionirati tako da nude višestruke sesije pregledavanja procesa. Za prosječnog korisnika to znači da kada je pet kartica otvoreno i lažna java skripta uzrokuje zamrzavanje stranice koja se gleda na jednoj kartici, samo je ta kartica ugrožena. Zatvaranjem kartice može se spremiti ostatak sesije. Ovaj višeprocesni sustav također povećava sigurnost u modernom internetskom pregledniku jer svaki proces drži u svom zasebnom prostoru.
Mnogi moderni računalni operacijski sustavi (OS) barem u određenoj mjeri koriste komponentni softver. Jedan primjer je Windows OS. U ovom sustavu korisnici mogu omogućiti ili onemogućiti komponente OS-a kako bi ga prilagodili svojim potrebama. Osim toga, ako se program zaustavi, uključene su zaštitne mjere za sigurno zaustavljanje pridruženog procesa i završetak programa bez ponovnog pokretanja računala. Ova sposobnost učinila je komponentni softver važnim dijelom softverskog inženjerstva.