I ett webbprojekt (och alla andra projekt också för den delen) sätter man sig inte ned och skriver tre miljoner rader kod och trycker på spara-knappen. Man behöver veta vad koden ska göra först.
Därför finns det olika modeller man använder för att utveckla ett projekt, det vill säga ta det från idé till slutlig produkt.
- Vattenfall. Vattenfallsmodellen fokuserar på funktioner och att både mål och syften är klart dokumenterade. Varje problem måste lösas innan man kan gå vidare med nästa. Processen går framåt i en enda riktning, likt ett vattenfall. Den klassiska modellen.
- Iterativ utveckling. Att hela tiden gå tillbaka och göra om samma sak, gång på gång. Man har inget fast mål, utan varje framsteg som görs syftar till att förändra målet. Prototyping används ofta på detta vis.
- Evolutionär utveckling. Man utgår från nyttan och affärsprocessen. Vad vill man uppnå? Varje steg ska resultera i något som kan användas hos användaren. Reaktionerna från användarna tar man sedan in och går tillbaka till ritbordet för att se över vad man kan förbättra. Man kan likna det vid en symbol som ändrar form med tiden, för att närma sig målet. Formen är inte känd från början.
- Inkrementell utveckling. Man producerar något direkt, som går att använda omedelbart. Det är inte perfekt, men fungerar. Sedan samlar man in reaktioner. Man vet vilken helhet man vill skapa, och släpper sedan bit för bit. En del säger också att produkten är inkrementell, medan processen är iterativ/evolutionär.
Varje modell har sina för- och nackdelar och det går inte på rak arm säga vilken som är bäst. Den måste sättas i en situation med parametrar som tid, budget, sunt förnuft och korkade chefer.
Vidare läsning