AI-nativ udviklingsmetodologi: Tovejs kontekstcirkulation ud over værktøjsanvendelse

AI og udviklere
Udviklernes syn på AI er komplekst. AI har gjort en hidtil uset produktivitetsforøgelse og informationsindhentning mulig, men samtidig er udviklernes rolle ved at ændre sig fundamentalt. Nogle mennesker forudser, at AI vil udvikle sig til AGI og erstatte størstedelen af udviklerne, mens andre nedvurderer AI som et overvurderet værktøj og hævder, at udviklernes grundlæggende værdi forbliver uændret. Disse holdninger ser ud til at være diametralt modsatte, men de ligner hinanden overraskende meget, idet de begge bedømmer AI ud fra eksisterende tankegange.
Det vigtige her er imidlertid ikke at bedømme eller evaluere AI. Den egentlige kerne ligger i, hvordan tankegangen om udvikling bør ændre sig under forudsætning af AI, og hvordan udviklernes og organisationens roller bør omstruktureres i takt med denne forandring. Med henblik herpå har vi systematiseret metodikken for AI-udvikling i en analyse i tre trin nedenfor.
AI-afhængig udvikling
AI-afhængig udvikling er et stadie, hvor AI betragtes som en dommer og resultaterne accepteres ukritisk. Udvikleren på dette stadie opfatter AI som en entitet, der ordner og implementerer deres idéer, og accepterer endvidere AI som en erstatning, til hvilken både vurdering og ansvar kan delegeres.
Denne tilgang synes overfladisk set at have eksplosivt øget produktiviteten. I virkeligheden akkumuleres dog kode, som ikke kan forklares og ikke kan stå til ansvar for, i hurtigt tempo. Kode, der er skabt på denne måde, gør det, når der opstår problemer, umuligt for nogen at træffe en sikker afgørelse om, hvorfor strukturen blev til, og hvilke valg der er korrekte.
På dette stadie producerer AI kun resultater, der ikke kan stoles på, mens udvikleren forbliver i rollen som forbruger af disse resultater. Som følge heraf bliver både AI og udvikleren brugt op, og den reelle kompetence akkumuleres ingen steder.
AI-anvendende udvikling
AI-anvendende udvikling er et stadie, der ses hos mere dygtige udviklere. På dette stadie opfatter udvikleren AI ikke som en erstatning for vurdering, men som et kraftfuldt værktøj, der øger produktiviteten. Udvikleren på dette stadie forbliver ansvarlig for design og de endelige beslutninger og delegerer gentagne og omkostningstunge opgaver, såsom kodegenerering, refaktorering, fejlfinding og dokumentopsummering, til AI. Denne tilgang reducerer i høj grad andelen af udviklerens gentagne arbejde og kan, samtidig med at tilliden opretholdes, øge produktiviteten markant.
Denne metode har dog en strukturel begrænsning: designkonteksten og vurderingen cirkulerer ikke. Udviklingens retning og beslutningsprocessen forbliver begrænset til udviklerens individuelle overvejelser og deles ikke med AI, hvorfor AI ikke kan akkumulere udviklerens ændringer og vækst. Som resultat isoleres designkonteksten og dømmekraften hos udvikleren.
Herved dannes der ingen læringscyklus mellem udvikleren og AI, og evnen til at anvende AI udvides ikke ud over udviklerens eksisterende kompetencer. Væksten tilskrives den enkelte, og over tid forøges kompetencegabet mellem udviklerne. Desuden viser denne kompetence en begrænsning ved, at den vanskeligt kan akkumuleres eller reproduceres på organisationsniveau.
AI-nativ udvikling
AI-nativ udvikling går ud over det stadie, hvor AI blot stoles på eller anvendes som værktøj, og refererer til en struktur, hvor AI integreres i udviklingsstrukturen og beslutningsprocessen, og hvor AI og mennesker interagerer og vokser sammen. På dette stadie fungerer AI som et medlem, der deler udviklerens vurdering og kontekst og interagerer med dem.
Kernen i denne struktur er, at AI og udvikleren cirkulerer i en tovejsrelation og ikke en envejsrelation. Udvikleren deler løbende designets hensigt og begrundelsen for beslutninger med AI, og AI akkumulerer gennem dette udviklerens tankegang og organisationens kontekst. Som resultat udvikler AI sig fra blot at behandle anmodninger til at tilbyde valgmuligheder skræddersyet til organisationen og til at assistere og korrigere udviklerens beslutninger.
AI-nativ udvikling er ikke afhængig af en bestemt persons dygtighed eller kunnen. Selv når medlemmer skifter, kan der, forudsat at AI-konteksten bevares, stilles spørgsmål med lignende perspektiver til samme problem, og tidligere valg og deres begrundelser kan danne grundlag for stadig bedre beslutninger. Udviklingskompetencen tilskrives ikke den enkelte, men akkumuleres og kan reproduceres på tværs af hele organisationen.
I sidste ende sigter AI-nativ udvikling ikke mod en bestemt arkitektur eller udviklingsmetodologi, men mod selve udviklingsprocessen, hvor AI's og menneskers vurdering og læring kontinuerligt styrkes. Inden for denne struktur erstatter udvikler og AI ikke hinanden. I stedet deler de samme problemrum og udvikler sig til et forhold, hvor de sammen skaber bedre vurderinger og mere robuste strukturer.