Program
utveckling

Framsida
Utvecklingsmodeller
Analys & undersökning
Design
Utveckling & testning       Utvecklings strategi
      Fundamental
       programutveckling

      Testning
Implementation
Underhåll
Demo

Utveckling & testning

När designen är avklarad och specifikationen är satt, börjar den egentliga program utvecklingen.
Specifikationen är vägkartan eller ritningen av det blivande programmet och den har tillkommit från diskussion i föregående delar av program utvecklingens livscykel. Fördelarna med en bra genomtänkt specifikation innan programmeringen börjar är många.

  • Tillåter kunden och användaren att få reda på exakt vad det nya programmet kommer att göra.
  • Demonstrerar programmerarnas förståelse för vad som behövs samtidigt de önskade egenskaperna hos programmet
  • Tillhandahåller kostnadsgränser likväl tidsgränser.
  • Tillkännager tekniska detaljer i början så att kostnadseffektiva medel kan användas.
  • Verkar för en aktiv kommunikation mellan utvecklingslaget och kunden.
  • Håller kostnaderna miniala.

När specifikationen har blivit mött och kunden är nöjd med vad som presenterats i och med analys och design så kan själva programmet börja ta form.

I utvecklingen inkluderas en komplex mix av planering, hårdvaru och mjukvaru inköp, dokumentering och programmering. För de flesta stora projekt involverar utvecklingsfasen en mängd programmering, teknisk dokumentering och diverse kontorsarbete. En stor del av utvecklingen planeras till testning av programmet. Medlemmar av arbetslaget koncentrerar sig på att utföra tidiga tester för att kunna lokalisera och ta bort buggar. Detta initiala testandet kallas för alpha testning. Senare potentiella användare som kan tänka sig att arbeta med nästan-färdiga program utför s.k. beta testning och anmäler fel och buggar till programmerarna. Många populära program och operativ system finns tillgängliga på Internet för allmän beta testning.

Utvecklings strategi

Fyra dimensioner

Vad man än gör inom utvecklingsarbetet så sker detta jämsides fyra dimensioner: människor, processen, produkten och teknologi. Människorna är motorn, processen är vägen, produkten är målet och teknologin är fordonet.

  • Människorna

    1. Topp talang - Använd bättre och färre folk.
    2. Arbets passform - Hitta arbete som passar kunskaperna och motivationen på de tillgängliga i arbetslaget.
    3. Självframsteg - Hjälp personerna att självaktivera sig istället för att tvinga dom att arbeta med det deras kunskapsbas anger eller där det behövs mest.
    4. Missanpassnings elimination - Byt ut folk som inte passar i laget så fort som möjligt.
    Vilken typ av människor du har i gruppen är givetvis viktigt, samt hur pass bra dom kan arbeta ihop. Motivationen är den viktigaste faktorn att ta hänsyn till.

  • Processen

  • Effekten som processen har på arbetet är oftast mycket lättare att förstå än den effekt som arbetslaget har. Processen måste jobbas mot perfektion. Det är inget som faller sig naturligt direkt. För att processen ska vara fulländad finns vissa saker som ska funka bra. Att i ett sent stadie i utveklingen behöva göra ändringar som betyder, ny design, omprogrammering och nya tester är ett exempel på att man har antingen gått för snabbt fram eller att man inte tagit hänsyn till alla specifikationer och man får omarbeta process designen.
    Processarbetet måste också givetvis uppfylla en acceptabel kvalitetsnivå. Också ska arbetet vara av kvalitativ sort så att problem kan upptäckas vid ett stadie där de kräver minst tid och pengar för att åtgärdas.
    Modern programutvekling baserar sig oftast, för att spara pengar, inte på att få produkten färdig så fort som möjligt utan med så lite folk som möjligt. Man borde också ha tagit fram nånslags av riskuppställning där man kan förhindra katastrofer.
    Viktiga delar i processen är att eliminera onödigt arbete, garantera kavlitet både på slutprodukt och arbete, vara väl medveten om risker innan man börjar, ha en budget, att man planerar arbetsform och har god kontakt med kunden.

  • Produkten

  • Det förmodligen mest påtagliga i program utvecklingen, eftersom den just är målet. Att kunna föreställa sig och engagera sig i produkt förståelse, d.v.s. vad är det egentligen som programmet ska göra, så kan man vinna mycket tid. Kan man reducera ett programs egenskaper så kan du reducera tiden på det den ska göras. Storleken är den som är störst betydelse när det gäller tidskonsumption. Att göra programmet hälften så stort brukar i regel skära ned tidsschemat med två-tredjedelar. Den tekniska utrustning spelar också en roll i hur produkten blir samt. Hur snabbt den kan bli klar.

  • Teknologin

  • Teknologin som används är inte alltid självklar och kan behövas köpas in. Både hårdvara och mjukvara. Dessa inköp ska givetvis vara planerade och vara med i budgeten.

Fundamental program utveckling

När själva konstruktionen börjar ska allt arbete vad gäller planering vara klar. Själva programmeringen kommer inte att bjuda på så mycket olika sätt att skära ner varken kostnaderna eller tidsschemat. Det som är mest påtagligt att se upp med är att slippa göra onödigt arbete, t.e.x. att finslipa kod som inte behövs finslipas. Om design delen lämnar mer att önska kan oväntade omskrivningar dyka upp. Man kan vänta sig en del problem också om man hastar för mycket i kodningen också, men oftast genererar detta mindre problem som kan lösas. För att inte skapa ett omöjligt råtthål av kod så är det praxis att lägga in mycket kommentarer för att möjliga problem senare på enklaste och snabbaste sätt ska lösas.

Testning

Det vanligaste sättet att se om produkten är av den kvalitet som kunden beställt är att testa den. Hitta fel genom att köra programmet och se vad det gör. Den första testningen utförs av programmeraren som testar sin egen kod och verifierar om den gör vad den ska. Sen testar en oberoende person hela systemet för att se om den gör vad som var förutsatt. Den sista testningen görs av användarna som rapporterar felen som senare får åtgärdas. Testningen är lite av det svarta fåret i programutvecklingen. Den tar vanligtvis mycket tid.