De definitie van embedded software engineering is als volgt-
Embedded Software Engineering is het proces van het besturen van diverse apparaten en machines die anders zijn dan traditionele computers, met behulp van software engineering. De integratie van software engineering met niet-computerapparatuur leidt tot de vorming van ingebedde systemen. Ingebedde systemen zijn typisch populair in de medische wetenschap, consumentenelektronica, productiewetenschap, luchtvaart, automobieltechnologie. Een typisch ingebed systeem vereist een breed scala van programmeergereedschappen, microprocessoren en besturingssystemen. Embedded software engineering, uitgevoerd door embedded software ingenieurs, moet worden afgestemd op de behoeften van de hardware die het moet besturen en waarop het moet draaien.
Nu we het antwoord hebben op “wat is embedded engineering”, laten we begrijpen wat de eisen zijn van embedded systemen, waaronder de software voor embedded systemen valt. De eisen die aan de software en het besturingssysteem van een ingebed systeem worden gesteld, verschillen eveneens van die van een traditioneel op een computer gebaseerd systeem. Gewoonlijk gebruiken ingebedde systemen basissoftware voor ingebedde systemen, zoals C, C++, ADA, enz. Sommige gespecialiseerde ingebedde systemen kunnen gebruik maken van besturingssystemen zoals Windows CE, LINUX, TreadX, Nucleus RTOS, OSE, enz.
Embedded software engineering verschilt van traditionele applicatie-ontwikkeling door de extra aandacht voor externe factoren zoals temperatuur en andere omgevingsfactoren die de prestaties kunnen beïnvloeden.