Programari incrustat (embedded software), és aquell programari que corre dins d'un sistema incrustat (embedded system).
En general, i donat la naturalesa dels sistemes on s'inclouen, aquest software acostuma a funcionar de forma autònoma, amb cap o molt poca intervenció humana, interactuant amb l'entorn físic o informàtic. Aquests sistemes autònoms poden ser aïllats, tot i que són també poden ser connectats a través d'una xarxa. Aquests sistemes estan subjectes a restriccions funcionals que impliquen la seva definició, la seva robustesa, el seu disseny, la seva capacitat per complir una tasca amb recursos específics sovint associades a sancions temporals o del seu consum d'energia.[1][2]
Amb la difusió massiva de sensors i actuadors electrònics, els sistemes complexos es beneficien d'una instrumentació important. Els intercanvis d'informació amb l'exterior i la capacitat d'adaptació d'aquests sistemes a l'entorn requereixen un control estricte sobre el bon funcionament d'aquests sistemes amb mòduls flexibles, autocarregables i autoconfigurables. Els sistemes incrustats o programari encastat han de posseir doncs propietats, a nivell local, ja que aquests sistemes autònoms han de suportar sols a sol·licituds imprevisibles del seu entorn.[1][2]