Wat is computer software engineering?
Computer software engineering is het hele proces van het plannen, ontwerpen en ontwikkelen van een computer software product. De term software engineering verwijst specifiek naar de complexe, gedisciplineerde en systematische aanpak die wordt gebruikt om software te maken en te onderhouden. Veel mensen gebruiken de term om de vaardigheden uit te leggen die nodig zijn om softwareproducten te maken en te ondersteunen.
Om een software-ingenieur te worden, moeten kandidaten een universitair diploma computerwetenschappen behalen. Hoewel sommige scholen een computer software engineering major aanbieden, is dit niet erg gebruikelijk. Over het algemeen zijn de vereiste vaardigheden al opgenomen in het computerwetenschapsprogramma en heeft het het voordeel dat het een erkende discipline is. Het gebied van computer software engineering is relatief nieuw en kan meer tijd vergen om breed geaccepteerd te worden.
Het beroep zelf is niet in licentie gegeven of gereguleerd op dezelfde manier als ingenieurs. Er zijn verschillende initiatieven genomen om deze groep professionals een licentie te geven, met wisselend succes. In de Verenigde Staten heeft het Institute of Electrical and Electronics Engineers (IEEE) een licentieprogramma opgezet voor computer software-ingenieurs, maar heeft het een beperkte acceptatie. In Europa en Canada is het beroep gereguleerd en moeten kandidaten voldoen aan specifieke opleiding- en ervaringsvereisten om een professionele software-ingenieur te worden.
De primaire focus op dit gebied is de ontwikkeling van methodologie rond het creëren van nieuwe softwareproducten. De IEEE heeft een handleiding ontwikkeld met de naam Software Engineering Body of Knowledge (SWEBOK). Dit boek wordt beschouwd als het standaardniveau van kennis dat een software-ingenieur in Noord-Amerika na vier jaar werkervaring zou moeten hebben. Er is internationaal veel discussie geweest over de geldigheid van het boek als hulpmiddel, omdat veel instituten niet zijn geraadpleegd.
Computer software engineering kan worden onderverdeeld in verschillende subgebieden, waaronder softwareontwerp, testen en onderhoud. In totaal worden 10 verschillende deelgebieden officieel erkend door de IEEE. Er blijven zich echter aanvullende gebieden ontwikkelen en het kan enige tijd duren voordat de lijst als voltooid wordt beschouwd.
Veel mensen die een software-ingenieur willen worden, beginnen hun carrière als computerprogrammeur of ontwikkelaar. Het traditionele carrièrepad moet op dit gebied beginnen en vervolgens na acht tot tien jaar werkervaring op zoek gaan naar een promotiemogelijkheid voor software-ingenieur. Dit carrièrepad vereist extra opleiding en training gedurende deze periode, aangezien technologie en methodologie voortdurend veranderen. De verwachting is dat de vraag naar informatica engineering de komende vijf tot acht jaar bovengemiddeld zal groeien. Naarmate de kansen groeien, zou er meer duidelijkheid en ontwikkeling moeten komen van een internationaal aanvaarde norm voor professionele erkenning op dit gebied.