Metodologie vývoje nativní pro AI: bidirekcionální cirkulace kontextu přesahující využití nástrojů

AI a vývojáři
Pohled vývojářů na AI je složitý. AI umožnila bezprecedentní nárůst produktivity a snadnější přístup k informacím, zároveň se ale zásadně mění role vývojářů. Někteří předpokládají, že AI se vyvine v AGI a nahradí většinu vývojářů, jiní AI považují za přeceňovaný nástroj a tvrdí, že podstatná hodnota vývojářů se nemění. Tyto postoje se zdánlivě zcela liší, avšak v tom, že AI posuzují měřítkem stávajícího způsobu myšlení, jsou překvapivě podobné.
Podstatné však není hodnotit nebo posuzovat AI. Skutečným jádrem je to, jak se musí změnit myšlenkový přístup k vývoji předpokládajícímu AI a jak se v souladu s touto změnou musí přestavit role vývojářů a organizací. Za tímto účelem jsme vývoj s podporou AI shrnuli do následující tříkrokové analýzy.
Vývoj závislý na AI
Vývoj závislý na AI je fáze, v níž je AI považována za subjekt rozhodování a její výsledky jsou přijímány bez kritického zhodnocení. Vývojář v této fázi vnímá AI jako nástroj, který za něj organizuje jeho nápady a realizuje je, a dále ji přijímá jako náhradu, které lze přenést i úsudek a odpovědnost.
Tento způsob zdánlivě velmi zvyšuje produktivitu. Ve skutečnosti se však rychle hromadí kód, který nelze vysvětlit ani za něj nelze nést odpovědnost. Takto vytvořený kód při vzniku problémů způsobuje, že nikdo nemůže s jistotou posoudit, proč má takovou strukturu a která volba je správná.
V této fázi AI produkuje pouze nespolehlivé výsledky a vývojář zůstává v roli toho, kdo tyto výsledky spotřebovává. Výsledkem je, že AI i vývojář jsou používáni destruktivně a skutečné schopnosti se nikde nekumulují.
Vývoj s využitím AI
Vývoj s využitím AI je fáze, která se projevuje u zkušenějších vývojářů. V této fázi vývojář vnímá AI nikoli jako náhradu úsudku, nýbrž jako výkonný nástroj zvyšující produktivitu. Vývojář v této fázi zůstává subjektem návrhu a konečného rozhodnutí a deleguje na AI opakující se a nákladné práce, jako jsou generování kódu, refaktorizace, ladění a shrnutí dokumentace. Tento způsob výrazně snižuje podíl opakující se práce vývojáře a umožňuje dramaticky zvýšit produktivitu při zachování důvěry.
Tento přístup však má strukturální omezení v tom, že kontext návrhu a úsudek necirkulují. Směr vývoje a proces rozhodování zůstávají pouze v osobním uvažování vývojáře a nejsou sdíleny s AI, a proto AI nedokáže akumulovat vývojářovy změny a růst. Výsledkem je, že kontext návrhu a úsudek zůstávají izolované u vývojáře.
Z tohoto důvodu se mezi vývojářem a AI nevytváří cyklus učení a schopnost využívat AI se nerozšiřuje nad rámec stávajících kompetencí vývojáře. Růst je přiřazen jednotlivci a s postupem času se rozdíly ve schopnostech mezi vývojáři prohlubují. Tato schopnost se také jen obtížně akumuluje a reprodukuje na úrovni organizace.
AI nativní vývoj
AI nativní vývoj přesahuje fázi, v níž AI slouží jako důvěryhodný nástroj, a označuje strukturu, která začleňuje AI do vývojové architektury i procesu rozhodování a v níž AI a lidé spolu interagují a vzájemně se rozvíjejí. V této fázi AI funguje jako člen, který sdílí a interaktivně zpracovává úsudek a kontext vývojáře.
Jádrem této struktury je, že AI a vývojář cirkulují obousměrně, nikoli jednosměrně. Vývojář průběžně sdílí s AI záměr návrhu a důvody rozhodnutí, zatímco AI prostřednictvím toho akumuluje myšlení vývojáře a kontext organizace. Výsledkem je, že AI se nevyvíjí jen jako nástroj, který zpracovává požadavky, ale směřuje k tomu, aby nabízela volby přizpůsobené organizaci a podporovala vývojářův úsudek a opravovala jej.
AI nativní vývoj nezávisí na zkušenostech nebo know-how konkrétní osoby. I když se členové změní, pokud zůstane kontext AI zachován, lze se na stejné problémy ptát z podobných pohledů a na základě minulých rozhodnutí a jejich důvodů pokračovat v přijímání lepších rozhodnutí. Vývojové schopnosti nejsou přiřazeny jednotlivci, nýbrž se akumulují a reprodukují na úrovni celé organizace.
Cílem AI nativního vývoje tedy není určitá konkrétní architektura nebo metodika vývoje, ale samotný vývojový proces, v němž se neustále posiluje úsudek a učení AI i člověka. V rámci této struktury se vývojáři a AI navzájem nenahrazují. Místo toho sdílejí stejný problémový prostor a vyvíjejí se ve vztah, v němž společně vytvářejí lepší úsudek a pevnější strukturu.