Detta är Programvaruteknik!
Nedan finner du en längre informationstext om vad som är kärnan i Programvaruteknik och Software Engineering.
/Mikael
Software Engineering
Software Engineering (Programvaruteknik) är tillämpningen av en systematisk, disciplinerad och mätbar metod för utvecklande, användande och underhåll av programvara. Ämnesområdet Software Engineering omfattar kunskap, verktyg, och metoder för att definiera krav på programvara och utföra programvarudesign, konstruktion av programvara, testning av programvara samt underhåll av befintlig programvara.
Det är ett faktum att Software Engineering är att betrakta som en ingenjörskonst. Likaledes vill vissa göra gällande att Software Engineering är mer att betrakta som ett hantverk. Oavsett vad så är det ett ingenjörsmässigt ämnesområde som omfattar alla aspekter av produktion av programvara. Det omfattar också etablerandet och användandet av förnuftiga ingenjörsmässiga principer för att på ett ekonomiskt försvarbart sätt ta fram programvara som är pålitlig och fungerar effektivt och ändamålsenligt på verkliga maskiner i sin tänkta omgivning.
Programvara finns ofta i produkter och förhållande där synnerligen hög tillgänglighet förväntas, även under de mest krävande omständigheter, till exempel för att övervaka ett kärnkraftverk eller att hålla en jumbojet flygande. Sådana applikationer består av miljoner rader kod, vilket gör dem jämförbara, i komplexitet, med de mest komplexa moderna maskiner. Ett modernt flygplan består av flera miljoner fysiska delar (ett rymdfartyg består av 10 miljoner fysiska delar) och mjukvaran till ett modernt flygplan består av 4 miljoner rader kod.

Vanligtvis kommer vi i kontakt med programvaran när vi använder datorer i olika former, vanliga bordsdatorer, handdatorer, mobiltelefoner, spelkonsoler, etc. I dessa datorer finner vi dels programvaran som maskinnära operativsystem och kompilatorer men också i form av ordbehandlare, webbläsare och tv-spel.
I företagsvärlden styrs många beslut av affärssystem, programvara som hanterar ekonomi, order, lager och finansiella transaktioner. I stora databaser samlas all information för att sedan bearbetas så att rätt affärsmässiga beslut kan tas. Behovet och vikten av pålitlig programvara kommer bara att öka med tiden.
Utveckling av programvara sker ofta i projektform. Vissa organisationer har specialister som utför de olika aktiviteterna i ett programutvecklingsprojekt medan andra organisationer låter programvarutekniker utföra flera eller tom alla av aktiviteterna. I stora projekt kan personer specialisera sig för en roll. I små projekt kan en person få fylla alla rollerna. Dessa specialiserade roller omfattar i industrin kravanalys, systemarkitekter, utvecklare, testare, support, dokumentation, managers och inom akademin utbildare, forskare.







