Metodologie vývoje AI-native
AI a vývojáři
Pohled vývojářů na AI je komplexní. Zatímco AI umožnila bezprecedentní nárůst produktivity a získávání informací, zároveň se zásadně mění role vývojářů. Někteří předpovídají, že AI se vyvine v AGI a nahradí většinu vývojářů, zatímco jiní AI odmítají jako přeceňovaný nástroj a tvrdí, že základní hodnota vývojářů zůstává nezměněna. Ačkoli se tyto postoje zdají být protichůdné, jsou překvapivě podobné v tom, že AI posuzují na základě stávajícího způsobu myšlení.
Důležité však není posuzovat nebo hodnotit AI. Skutečným jádrem je, jak se musí změnit způsob myšlení o vývoji s předpokladem AI a jak se musí rekonfigurovat role vývojářů a organizací, aby se této změně přizpůsobily. Za tímto účelem jsme shrnuli metodologii vývoje AI v následující třífázové analýze.
Vývoj závislý na AI
Vývoj závislý na AI je fází, ve které je AI považována za subjekt rozhodování a její výsledky jsou nekriticky přijímány. Vývojáři v této fázi vnímají AI jako entitu, která organizuje a implementuje jejich nápady, a dokonce ji přijímají jako náhradu, které lze svěřit rozhodování a odpovědnost.
Tato metoda se na první pohled zdá, že exponenciálně zvyšuje produktivitu. Ve skutečnosti se však rychle hromadí kód, který nelze vysvětlit ani za něj převzít odpovědnost. Když se vyskytne problém s takto vytvořeným kódem, nikdo nemůže s jistotou rozhodnout, proč vznikla tato struktura nebo která volba je správná.
V této fázi AI produkuje pouze nespolehlivé výsledky a vývojáři zůstávají v roli spotřebitelů těchto výsledků. V důsledku toho jsou AI i vývojáři pouze neproduktivně využíváni a skutečná kompetence se nikde nehromadí.
Vývoj s využitím AI
Vývoj s využitím AI je fáze, která je vidět u zkušenějších vývojářů. V této fázi vývojáři vnímají AI nikoli jako náhradu za rozhodování, ale jako silný nástroj pro zvýšení produktivity. Vývojáři v této fázi zůstávají subjektem návrhu a konečného rozhodování a delegují na AI opakující se a nákladné úkoly, jako je generování kódu, refaktoring, ladění a shrnování dokumentů. Tato metoda výrazně snižuje podíl opakujících se úkolů vývojářů a může dramaticky zvýšit produktivitu při zachování spolehlivosti.
Tato metoda má však strukturální omezení v tom, že kontext návrhu a rozhodování není cyklický. Vzhledem k tomu, že směr vývoje a proces rozhodování zůstávají pouze v rámci uvažování jednotlivých vývojářů a nejsou sdíleny s AI, AI nemůže akumulovat změny a růst vývojářů. V důsledku toho jsou kontext návrhu a rozhodovací schopnosti izolovány u vývojářů.
Tím se nevytváří cyklus učení mezi vývojářem a AI a schopnost využívat AI se nerozšiřuje nad stávající schopnosti vývojáře. Růst je přičítán jednotlivci a rozdíly v kompetencích mezi vývojáři se časem zvětšují. Kromě toho se tyto kompetence obtížně hromadí nebo reprodukují na úrovni organizace.
AI Native Vývoj
AI Native vývoj znamená strukturu, ve které AI a lidé interagují a vzájemně se rozvíjejí, překračující fázi důvěry v AI nebo jejího používání jako nástroje, a začleňuje AI do vývojové struktury a procesu rozhodování. V této fázi AI funguje jako interaktivní člen, který sdílí rozhodnutí a kontext vývojářů.
Jádrem této struktury je, že AI a vývojáři cyklují obousměrně, nikoli jednosměrně. Vývojáři neustále sdílejí záměry návrhu a základy rozhodování s AI, a AI prostřednictvím toho akumuluje myšlení vývojářů a kontext organizace. V důsledku toho se AI vyvíjí nad rámec pouhého nástroje pro zpracování požadavků a směřuje k nabízení přizpůsobených možností pro organizaci a k podpoře a opravování rozhodnutí vývojářů.
AI Native vývoj nezávisí na konkrétní dovednosti nebo triku jednotlivce. I když se členové změní, pokud se kontext AI udržuje, lze klást podobné otázky k témuž problému a lze činit lepší rozhodnutí na základě minulých voleb a jejich důvodů. Vývojové kompetence nejsou přičítány jednotlivci, ale stávají se akumulovatelnými a reprodukovatelnými pro celou organizaci.
Nakonec AI Native vývoj se nezaměřuje na konkrétní architekturu nebo metodologii vývoje, ale spíše na samotný vývojový proces, ve kterém se neustále posiluje rozhodování a učení AI a člověka. V této struktuře se vývojáři a AI navzájem nenahrazují. Místo toho sdílejí stejný problémový prostor a vyvíjejí se ve vztah, který společně vytváří lepší rozhodnutí a robustnější struktury.