Vad gör en inbäddad programvaruingenjör?
Datoranvändare är förmodligen mest bekant med programvaran som körs på deras operativsystem. De många är dock inte så erfarna med programvaran som reglerar driften av vissa sofistikerade hårdvarukomponenter. Dessa komponenter programmeras av proffs som kallas inbäddade programvaruingenjörer.
Maskinvarukomponenter som utför specifika och specialiserade funktioner kallas inbäddade system . Dessa fungerar som datorer inom datorer, med egna processorer och minne. Inbyggda system tar in data från specifika hårdvarukomponenter, kör deras programmering och skickar sedan data till andra hårdvara i maskinen. Rollen som ett inbäddat system kan vara lika komplicerat som att konvertera data från en intern antenn till ett dataformat som resten av enheten kan använda, eller så enkelt som att överföra specifika signaler när de aktiveras med en knapp. En inbäddad programvaruingenjör skapar de program som kör dessa enheter.
Jobbet som en inbäddad programvaruingenjör liknar programvaruingenjörer som skapar program för stationära datorer. Källkoden för konvertering av data i ett format till ett annat är densamma på en persondator som i ett inbäddat system. Där den inbäddade programvaruingenjörens jobb skiljer sig är att lägga till ytterligare kod för att programmet ska kunna köras på den specialiserade hårdvaran som fungerar som det inbyggda systemet.
De operativsystem som skrivbordsapplikationer kör på inkluderar en mängd olika drivrutinsprogram. Detta är lämpligt för dessa system på grund av det hårdvara som kan finnas i datorn och den programvara som en användare kan köra. Inbyggda system är fristående och kör bara ett enda program. Av denna anledning behöver programmeraren bara ladda ett begränsat antal drivrutiner och själva programmet i enhetens begränsade minne. Den inbäddade programvaruingenjörens jobb innehåller vanligtvis att bestämma det minsta antalet drivrutiner som programmet kommer att behöva för att använda den inbäddade enheten.
När en inbäddad programvaruingenjör är klar med programmeringen av en enhet måste hans eller hennes arbete dokumenteras. Inbyggda system används aldrig på egen hand, utan som en del av ett större projekt. För att använda enheten måste andra ingenjörer veta information som:
- vilka data det inbäddade systemet förväntar sig
- vilket dataformat som dess programmering förväntar sig
- hur enheten kommer att reagera på olika ingångar
- formatet för data som enheten kommer att mata ut
Denna information ingår sedan i den tekniska dokumentationen som de inbäddade programvaruingenjörerna producerar själva, ofta i form av en manual. Ibland skapar tekniska författare snarare än de faktiska ingenjörerna sådana manualer från anteckningarna som programvaruingenjörerna ger. Att ha dokumentation att hänvisa till är ovärderligt för användare.