Hva er kontinuerlig design?
Kontinuerlig design er en tilnærming til å lage programvare og andre systemer der utviklerne utgjør design og koding når de går. Dette i motsetning til tradisjonell programvaredesign, der designet er laget og deretter implementert. En fordel med kontinuerlig design er at det vanligvis er lettere for utviklere å legge til nødvendige funksjoner på stedet, og de kan tilpasse seg problemer. En annen fordel er at denne designmetoden også kan brukes til å redusere risiko hvis klienten får vist den fremgangsrike programvaren og gir input underveis.
Når kontinuerlig design brukes til å lage programvare, har utviklerne bestemt seg for å lage programvaren uten statisk design. Dette betyr ikke at det ikke er gjort noe designarbeid på forhånd, fordi noen programmer laget med denne metoden har noe designarbeid som allerede er gjort. Hovedpoenget med denne designmetoden er at designet er formbart og kan endres under programmering. Utviklere kan også legge til eller endre funksjoner under produksjonen.
Før kontinuerlig design ble det ofte brukt en statisk designmetode. Med denne metoden ble det laget en hel programvaredesignplan før noen koding skjedde. Til tross for problemer under produksjonen, ville utviklerne fortsette å følge designet. Selv om noen endringer kan gjøres med statisk design, er dette vanligvis alvorlige endringer som skjer fordi det nåværende designrammeverket ikke er kompatibelt med kundens eller utviklernes behov.
Utviklere som jobber med kontinuerlig design, er i stand til å endre en programvaredesign når prosjektet går fremover, noe som gir flere kodings- og programmeringsfordeler. Hvis det trengs nye funksjoner, enten på grunn av kundens bestillinger eller fordi det vil være til stor nytte for systemet, er utviklere åpne for å legge til disse funksjonene, selv om programvaredesignet må endres. Eventuelle problemer som oppstår under produksjon med kontinuerlig design kan vanligvis løses mer effektivt, fordi utviklerne kan endre designen etter behov. Med en statisk designmetode ville problemene bli løst på en måte som best bevart det originale designet.
Dette kan også brukes som en risikostyringsmanøver hvis utviklerne lager et program for en klient. Produksjonen foregår dynamisk, slik at teamet kan vise klientens deler av programmet for å se om han godkjenner funksjonene eller rammeverket. Hvis ikke, kan programmet enkelt fikses. I en statisk designtilnærming vil programmet bli vist til klienten etter at det var ferdig, noe som gjorde det mye vanskeligere å håndtere disse problemene.