AI-native utvecklingsmetodik: bidirektionell kontextcirkulation bortom verktygsanvändning

AI och utvecklare
Utvecklares syn på AI är komplex. AI har gjort oöverträffad produktivitetsökning och informationsinhämtning möjlig, men samtidigt förändras utvecklarens roll i grunden. Vissa förutspår att AI kommer att utvecklas till AGI och ersätta en stor del av utvecklarna, medan andra underskattar AI som ett överskattat verktyg och hävdar att utvecklarens väsentliga värde inte förändras. Dessa ståndpunkter verkar motsatta till varandra vid ytlig anblick, men de liknar varandra förvånansvärt mycket i det avseendet att de bedömer AI utifrån befintliga tankesätt.
Det viktiga här är dock inte att bedöma eller utvärdera AI. Det egentligt centrala är hur tankesättet kring utveckling bör förändras under förutsättningen att AI finns, och hur utvecklarnas och organisationernas roller bör omstruktureras i takt med denna förändring. För detta ändamål har AI-utvecklingsmetodiken sammanfattats i följande tredelade analys.
AI-beroende utveckling
AI-beroende utveckling är ett stadium där AI görs till beslutsfattare och dess resultat accepteras utan kritisk granskning. Utvecklare i detta stadium uppfattar AI som något som organiserar och implementerar deras idéer, och de accepterar dessutom AI som ett substitut till vilket även bedömning och ansvar kan delegeras.
Detta tillvägagångssätt verkar till synes ha ökat produktiviteten explosionsartat. I praktiken ackumuleras dock kod som varken kan förklaras eller ställas till ansvar. När sådan kod ger upphov till problem kan ingen med säkerhet avgöra varför strukturen blivit som den blivit eller vilka val som är korrekta.
I detta stadium producerar AI endast resultat som inte kan litas på, och utvecklaren förblir i rollen att konsumera dessa resultat. Följaktligen används både AI och utvecklaren på ett förbrukande sätt, och ingen verklig kompetens ackumuleras någonstans.
AI-användande utveckling
AI-användande utveckling är ett stadium som framför allt framträder hos mer skickliga utvecklare. I detta stadium uppfattar utvecklaren AI inte som ett substitut för bedömning utan som ett kraftfullt verktyg som höjer produktiviteten. Utvecklare i detta stadium förblir ansvariga för design och slutliga beslut, och delegerar repetitiva och kostsamma arbetsuppgifter, såsom kodgenerering, refaktorisering, felsökning och dokumentsammanfattning, till AI. Detta tillvägagångssätt minskar avsevärt andelen repetitivt arbete för utvecklaren och gör det möjligt att dramatiskt öka produktiviteten samtidigt som förtroendet upprätthålls.
Metoden har dock en strukturell begränsning: designens sammanhang och bedömningar cirkulerar inte. Utvecklingens riktning och beslutsprocessen stannar hos utvecklaren individuellt och delas inte med AI, varför AI inte kan ackumulera utvecklarens förändring och tillväxt. Som följd isoleras designens sammanhang och bedömningsförmåga hos utvecklaren.
Detta leder till att ingen inlärningscirkel mellan utvecklare och AI bildas, och förmågan att använda AI expanderar inte bortom utvecklarens befintliga kompetens. Tillväxten tillfaller individen, och skillnaderna i kompetens mellan utvecklare ökar med tiden. Dessutom visar detta på en begränsning: sådan kompetens är svår att ackumulera eller reproducera på organisationsnivå.
AI-nativ utveckling
AI-nativ utveckling innebär ett steg bortom det stadium där AI litas på eller används som verktyg. Det avser en struktur där AI integreras i utvecklingens struktur och beslutsprocess, och där människa och AI växer tillsammans genom att interagera med varandra. I detta stadium fungerar AI som en medlem som delar utvecklarens bedömningar och sammanhang och interagerar med dem.
Kärnan i denna struktur är att AI och utvecklaren cirkulerar i dubbla riktningar, inte i en enkelriktad relation. Utvecklaren delar fortlöpande designens avsikt och grunder för bedömningar med AI, och AI ackumulerar genom detta utvecklarens tankesätt och organisationens kontext. Som resultat utvecklas AI bortom att enbart hantera förfrågningar till ett verktyg som presenterar alternativ anpassade till organisationen och som assisterar och korrigerar utvecklarens bedömningar.
AI-nativ utveckling är inte beroende av en specifik individs skicklighet eller knep. Även om medlemmar byts ut kan, så länge AI-kontexten bevaras, frågor med liknande perspektiv ställas till samma problem, och bättre beslut kan fattas utifrån tidigare val och deras skäl. Utvecklingskompetensen tillhör inte längre individen utan ackumuleras och blir reproducerbar för hela organisationen.
Slutligen syftar AI-nativ utveckling inte till en viss arkitektur eller utvecklingsmetodik, utan till utvecklingsprocessen själv, där AI:s och människans bedömning och lärande ständigt förstärks. Inom denna struktur ersätter utvecklare och AI inte varandra. De delar i stället samma problemrymd och utvecklas till ett förhållande där de tillsammans skapar bättre bedömningar och mer robusta strukturer.