Hva er programvareteknikk?
Programvareteknikk er definert som en prosess for å analysere brukerkrav og deretter designe, bygge og teste programvare som vil tilfredsstille disse kravene.
La oss se på de forskjellige definisjonene av programvareteknikk:
- IEEE definerer i sin standard 610.12-1990 programvareteknikk som anvendelse av en systematisk, disiplinert, som er en beregningsbar tilnærming for utvikling, drift og vedlikehold av programvare.
- Fritz Bauer definerte det som 'etablering og brukte standard ingeniørprinsipper. Det hjelper deg å skaffe deg økonomisk, programvare som er pålitelig og fungerer effektivt på de virkelige maskinene.
- Boehm definerer programvareteknikk, som innebærer 'praktisk anvendelse av vitenskapelig kunnskap til kreativ design og bygging av dataprogrammer. Den inkluderer også tilhørende dokumentasjon som trengs for å utvikle, betjene og vedlikeholde dem. '
I denne programvareingeniørveiledningen vil du lære:
- Hva er programvareteknikk?
- Hvorfor programvareteknikk? Programvarekrise og løsningen
- Hvorfor programvareteknikk er populært?
- Forholdet mellom programvareteknikk og andre fagområder
- Utfordringer med programvareteknikk
- Attributter for programvareprodukter
- Kjennetegn ved god programvare
Hvorfor programvareteknikk? Programvarekrise og løsning:
Hva var programvarekrisen?
- Det var på slutten av 1960-tallet da mange programvareprosjekter mislyktes.
- Mange programvare ble over budsjett. Output var en upålitelig programvare som er dyr å vedlikeholde.
- Større programvare var vanskelig og ganske kostbart å vedlikeholde.
- Mye programvare som ikke kan tilfredsstille de voksende kravene til kunden.
- Kompleksiteten til programvareprosjekter økte når maskinvarefunksjonen økte.
- Etterspørselen etter ny programvare økte raskere sammenlignet med muligheten til å generere ny programvare.
Alle de ovennevnte problemene fører til 'Software Crisis.'
Løsningen
Løsningen var at problemet var å transformere uorganisert kodingsinnsats til en programvareteknikk. Disse ingeniørmodellene hjalp selskaper med å effektivisere driften og levere programvare som oppfyller kundenes krav.
- På slutten av 1970-tallet ble det utbredt bruk av programvaretekniske prinsipper.
- På 1980-tallet ble automatiseringen av programvareteknikk prosessen og veksten av (CASE) Computer-Aided Software Engineering.
- På 1990-tallet har man økt vekt på 'ledelsesaspekter' av prosjektstandard for kvalitet og prosesser akkurat som ISO 9001
Hvorfor programvareteknikk er populært?
Her er viktige grunner bak populariteten til programvareteknikk:
- Stor programvare - I vårt virkelige liv er det ganske mer behagelig å bygge en vegg enn et hus eller en bygning. På samme måte, når størrelsen på programvaren blir stor, hjelper programvareteknikk deg med å bygge programvare.
- Skalerbarhet - Hvis programvareutviklingsprosessen var basert på vitenskapelige og tekniske konsepter, er det lettere å gjenskape ny programvare for å skalere en eksisterende.
- Tilpasningsevne : Når programvareprosessen var basert på vitenskapelig og teknisk utvikling, er det enkelt å lage ny programvare ved hjelp av programvareteknikk.
- Kostnad - Maskinvareindustrien har vist sine ferdigheter, og enorm produksjon har redusert kostnadene for datamaskinen og elektronisk maskinvare.
- Dynamic Nature - Alltid voksende og tilpasset programvarens natur. Det avhenger av miljøet brukeren jobber i.
- Kvalitetsstyring : Tilbyr bedre metode for programvareutvikling for å tilby kvalitetsprogramvareprodukter.
Forholdet mellom programvareteknikk og andre fagområder
Her, hvordan programvareteknikk relatert til andre fagområder:
- Datavitenskap: Gir det vitenskapelige grunnlaget for programvaren da elektroteknikk hovedsakelig avhenger av fysikk.
- Ledelsesvitenskap: Programvareteknikk er arbeidskrevende arbeid som krever både teknisk og ledelseskontroll. Derfor er det mye brukt i ledelsesvitenskap.
- Økonomi: I denne sektoren hjelper programvareteknikk deg med ressursestimering og kostnadskontroll. Datasystemet må utvikles, og data bør vedlikeholdes regelmessig innenfor et gitt budsjett.
- Systemteknikk: Mesteparten av programvaren er en komponent i et mye større system. For eksempel programvaren i et industriovervåkingssystem eller flyprogramvaren på et fly. Programvaretekniske metoder bør brukes på studiet av denne typen systemer.
Utfordringer med programvareteknikk
Her er noen kritiske utfordringer som programvareingeniører står overfor:
- I sikkerhetskritiske områder som rom, luftfart, atomkraftverk osv. Kan kostnadene ved programvarefeil være enorme fordi liv er i fare.
- Økte markedskrav til rask leveringstid.
- Håndterer den økte kompleksiteten i programvarebehovet for nye applikasjoner.
- Mangfoldet av programvaresystemer bør kommunisere med hverandre.
Attributter for programvareprodukter
Kjennetegnene til ethvert programvareprodukt inkluderer funksjoner som vises av produktet når det installeres og tas i bruk.
De er ikke tjenestene som tilbys av produktet. I stedet har de relatert til produktets dynamiske oppførsel og bruken av produktet.
Eksempler på disse attributtene er:
Efficiency, reliability, robustness, maintainability, etc.
Imidlertid varierer den relative betydningen av disse egenskapene fra ett programvaresystem til et annet.
Produktegenskaper | Beskrivelse |
Vedlikehold | Programvaren skal utvikle seg for å møte de skiftende kravene til kundene. |
Pålitelighet | Pålitelighet inkluderer forskjellige egenskaper. Pålitelig programvare skal aldri forårsake fysisk eller økonomisk skade på tidspunktet for systemfeil. |
Effektivitet | Programvaren skal overbruke systemressurser som minne og prosessorsyklus. |
Brukervennlighet | Programvaren skal ha spesifikk brukergrensesnitt og dokumentasjon. |
Å optimalisere attributtet ovenfor er veldig utfordrende. Hvis du for eksempel tilbyr et bedre brukergrensesnitt, kan det redusere systemeffektiviteten.
Kjennetegn ved god programvare
Enhver programvare skal vurderes etter hva den tilbyr, og hva er metodene som hjelper deg å bruke den.
Hver programvare må tilfredsstille følgende attributter:
- Operasjonelt
- Overgangsperiode
- Vedlikehold
Her er noen viktige egenskaper ved god programvare utviklet av profesjonelle programvare
Operasjonelt
Denne egenskapen gir oss beskjed om hvor godt programvare fungerer i operasjonene som kan måles på:
- Budsjett
- Effektivitet
- Brukervennlighet
- Pålitelighet
- Korrekthet
- Funksjonalitet
- Sikkerhet
- Sikkerhet
Overgangsperiode
Dette er et viktig aspekt når programvaren flyttes fra en plattform til en annen:
- Interoperabilitet
- Gjenbrukbarhet
- Bærbarhet
- Tilpasningsevne
Vedlikehold
Dette aspektet snakker om hvor godt programvare har evnen til å tilpasse seg i det raskt skiftende miljøet:
- Fleksibilitet
- Vedlikehold
- Modularitet
- Skalerbarhet
Sammendrag
- Programvareteknikk er en prosess for å analysere brukerens krav og deretter designe, bygge og teste programvare som vil tilfredsstille disse kravene
- Viktige grunner for å bruke programvareteknikk er: 1) Stor programvare, 2) Skalerbarhet 3) Tilpasningsevne 4) Kostnad og 5) Dynamisk natur.
- På slutten av 1960-tallet blir mange programmer over budsjettet. Derfor tilbyr den upålitelig programvare som er dyr å vedlikeholde.
- På slutten av 1970-tallet ble det utbredt bruk av programvaretekniske prinsipper.
- Programvareteknikkonsept 1) Informatikk 2) Ledelsesvitenskap 3) Systemteknikk og 4) Økonomi
- Økte markedskrav til rask leveringstid er de største utfordringene innen programvareutvikling.
- 1) Vedlikehold, 2) Pålitelighet, 3) Effektivitet og, 4) Brukervennlighet er de viktigste egenskapene til programvareprodukter.
- Tre viktigste kjennetegn ved god programvare er 1) Operasjonell 2) Overgangsperiode 3) Vedlikehold.