Hovedforskjell: En programvareutvikler er en person som er involvert i fasetter av programvareutviklingsprosessen. Deres jobb inkluderer utforming, implementering og testing av programvaren. En programvareingeniør, derimot, er utøver av programvare engineering. De bruker prinsippene for engineering til design, utvikling, vedlikehold, testing og evaluering av programvaren og systemene som lager datamaskiner eller noe som inneholder programvarearbeid.
En programvareutvikler er en person som er involvert i fasetter av programvareutviklingsprosessen. Deres jobb inkluderer utforming, implementering og testing av programvaren. En programvareingeniør, derimot, er utøver av programvare engineering. De bruker prinsippene for engineering til design, utvikling, vedlikehold, testing og evaluering av programvaren og systemene som lager datamaskiner eller noe som inneholder programvarearbeid. Derfor kan det hevdes at jobben til en programvareingeniør har et større omfang.
En programvareutvikler utvikler frittstående programvare, som er mer enn bare et enkelt program. Han blir involvert i alle faser av utvikling, design og koding. Han deltar i design, dataprogrammering eller programvare prosjektledelse. En utvikler kan bidra til oversikten over prosjektet på applikasjonsnivå i stedet for komponentnivå eller individuelle programmeringsoppgaver. Under 15-0000 Computer og Mathematical Occupations Major Group, kan programvareutviklere klassifiseres i en av tre titler:
- 15-1131 Dataprogrammerere
- 15-1132 Programvareutviklere, applikasjoner
- 15-1133 Programvareutviklere, systemprogramvare
En utvikler jobb inkluderer:
- Programvare design
- Faktisk kjernen implementering (programmering som ofte er den viktigste delen av programvareutvikling)
- Andre nødvendige implementeringer (f.eks. Installasjon, konfigurasjon, tilpasning, integrasjon, dataoverføring)
- Deltakelse i programvareproduktdefinisjon, inkludert forretningssak eller gapanalyse
- spesifikasjon
- Krav analyse
- Utvikling og forfining av throw-away simuleringer eller prototyper for å bekrefte kravene
- Feasibility og cost-benefit analyse, inkludert valg av applikasjonsarkitektur og rammeverk, som fører til budsjett og tidsplan for prosjektet
- Utstedelse av dokumentasjon som trengs av brukere og gjennomføringspartnere etc.
- Testing, inkludert å definere / støtte aksepttesting og samle tilbakemelding fra pre-release testere
- Deltakelse i programvareutgivelse og etter utgivelsesaktiviteter, inkludert støtte til produktstartevangelisering (f.eks. Utvikling av demonstrasjoner og / eller prøver) og konkurransedyktig analyse for påfølgende produktbygging / utgivelses sykluser
- Vedlikehold