Belangrijk verschil: een softwareontwikkelaar houdt zich bezig met facetten van het softwareontwikkelingsproces. Hun taak omvat het ontwerpen, implementeren en testen van de software. Een software engineer, aan de andere kant, is een beoefenaar van software engineering. Ze passen de principes van engineering toe op het ontwerp, de ontwikkeling, het onderhoud, de tests en de evaluatie van de software en systemen die computers of alles wat software bevat, maken.
Een softwareontwikkelaar is een persoon die zich bezighoudt met facetten van het softwareontwikkelingsproces. Hun taak omvat het ontwerpen, implementeren en testen van de software. Een software engineer, aan de andere kant, is een beoefenaar van software engineering. Ze passen de principes van engineering toe op het ontwerp, de ontwikkeling, het onderhoud, de tests en de evaluatie van de software en systemen die computers of alles wat software bevat, maken. Vandaar dat kan worden beweerd dat de taak van een software-engineer een groter bereik heeft.
Een softwareontwikkelaar ontwikkelt stand-alone software, wat meer is dan alleen een eenvoudig programma. Hij raakt betrokken bij alle fasen van de ontwikkeling, het ontwerp en de codering. Hij neemt deel aan ontwerp, computerprogrammering of softwareprojectbeheer. Een ontwikkelaar kan bijdragen aan het overzicht van het project op toepassingsniveau in plaats van op componentniveau of individuele programmeeropdrachten. Onder de 15-0000 Computer en Mathematische Beroepen Major Group kunnen softwareontwikkelaars worden ingedeeld in een van de 3 titels:
- 15-1131 Computerprogrammeurs
- 15-1132 Softwareontwikkelaars, Toepassingen
- 15-1133 Softwareontwikkelaars, systeemsoftware
De taak van een ontwikkelaar omvat:
- Software ontwerp
- Werkelijke kernimplementatie (programmeren, wat vaak het belangrijkste deel van softwareontwikkeling is)
- Andere vereiste implementaties (bijv. Installatie, configuratie, aanpassing, integratie, datamigratie)
- Deelname aan de definitie van softwareproducten, inclusief business case of gap-analyse
- Specificatie
- Vereisten analyse
- Ontwikkeling en verfijning van wegwerpsimulaties of prototypen om de vereisten te bevestigen
- Haalbaarheids- en kosten-batenanalyse, inclusief de keuze van de applicatiearchitectuur en -kader, leidend tot het budget en het tijdschema voor het project
- Authoriseren van documentatie die gebruikers en implementatiepartners nodig hebben, enz.
- Testen, inclusief het definiëren / ondersteunen van acceptatietesten en het verzamelen van feedback van pre-release testers
- Deelname aan activiteiten voor software-release en post-release, inclusief ondersteuning voor evangelisatie met productlancering (bijv. Het ontwikkelen van demonstraties en / of monsters) en competitieve analyse voor opeenvolgende product-build / release-cycli
- Onderhoud