Vad är kontinuerlig design?

Kontinuerlig design är ett tillvägagångssätt för att göra mjukvara och andra system där utvecklarna bestämmer designen och kodningen allt eftersom. Detta till skillnad från traditionell mjukvarudesign, där designen görs och sedan implementeras. En fördel med kontinuerlig design är att det vanligtvis är lättare för utvecklare att lägga till nödvändiga funktioner på plats, och de kan anpassa sig till problem. En annan fördel är att denna designmetod också kan användas för att minska risken om kunden får se den utvecklande mjukvaran och ge input längs vägen.

När kontinuerlig design används för att göra mjukvara har utvecklarna beslutat att göra mjukvaran utan statisk design. Detta betyder inte att det inte har gjorts något designarbete i förväg, eftersom vissa program gjorda med denna metod har en del designarbete redan gjort. Huvudpoängen med denna designmetod är att designen är formbar och kan ändras under programmering. Utvecklare kan också lägga till eller ändra funktioner under produktionen.

Före kontinuerlig design användes vanligen en statisk designmetod. Med denna metod gjordes en hel programvarudesignplan innan någon kodning inträffade. Trots eventuella svårigheter under produktionen skulle utvecklarna fortsätta att följa designen. Även om vissa ändringar kan göras med statisk design, är dessa vanligtvis allvarliga förändringar som uppstår eftersom det nuvarande designramverket inte är kompatibelt med kundens eller utvecklarnas behov.

Utvecklare som arbetar med kontinuerlig design kan ändra en mjukvarudesign allt eftersom projektet går framåt, vilket ger flera kodnings- och programmeringsfördelar. Om nya funktioner behövs, antingen på grund av kundens beställningar eller för att det kommer att gynna systemet mycket, är utvecklarna öppna för att lägga till dessa funktioner, även om mjukvarudesignen måste ändras. Eventuella problem som dyker upp under produktion med kontinuerlig design kan vanligtvis åtgärdas mer effektivt, eftersom utvecklarna kan ändra designen efter behov. Med en statisk designmetod skulle problemen fixas på ett sätt som bäst bevarade den ursprungliga designen.

Detta kan också användas som en riskhanteringsmanöver om utvecklarna gör ett program för en klient. Produktionen pågår dynamiskt, så teamet kan visa klientens delar av programmet för att se om han godkänner funktionerna eller ramverket. Om inte, kan programmet enkelt fixas. I en statisk designstrategi skulle programmet visas för klienten efter att det var klart, vilket gör det mycket svårare att hantera dessa problem.