Metodologia rozwoju oparta na AI
AI 와 개발자
Perspektywa, z jaką deweloperzy patrzą na AI, jest złożona. Wynika to z faktu, że AI umożliwiło bezprecedensowy wzrost produktywności oraz pozyskiwania informacji, a zarazem rola dewelopera ulega fundamentalnemu przekształceniu. Jedni przewidują, że AI ewoluuje w stronę AGI i zastąpi większość deweloperów, podczas gdy inni umniejszają znaczenie AI, uznając je za przecenione narzędzie, i twierdzą, że intrinsic value dewelopera pozostaje niezmieniona. Postawy te, choć na pierwszy rzut oka wydają się skrajnie odmienne, uderzająco przypominają się nawzajem pod względem oceny AI przez pryzmat dotychczasowych schematów myślowych.
Jednakże istotą sprawy nie jest ocenianie ani ewaluacja AI. Prawdziwesedno tkwi w tym, w jaki sposób paradygmat programowania oparty na AI powinien ulec zmianie oraz jak w ślad za tą zmianą należy zrekonfigurować role deweloperów i organizacji. W tym celu usystematyzowano metodologię developmentu AI w ramach poniższej trzystopniowej analizy.
AI 의존 개발
Development zależny od AI to etap, w którym AI staje się podmiotem orzekającym, a jej wyniki są przyjmowane w sposób bezkrytyczny. Deweloper na tym etapie postrzega AI jako byt organizujący i implementujący jego pomysły, a co więcej, akceptuje je jako substytut, któremu można powierzyć podejmowanie decyzji oraz odpowiedzialność.
Podejście to pozornie drastycznie zwiększa produktywność. W rzeczywistości jednak szybko kumuluje się kod, którego nie da się wyjaśnić ani za który nie można wziąć odpowiedzialności. Tak napisany kod sprawia, że w przypadku wystąpienia problemu nikt nie jest w stanie wydać pewnego osądu co do tego, dlaczego struktura przyjęła taką formę oraz które wybory były słuszne.
Na tym etapie AI generuje wyłącznie wyniki pozbawione wiarygodności, a deweloper popada w rolę konsumenta tych rezultatów. W efekcie zarówno AI, jak i deweloper są eksploatowani w sposób nieracyjny, a rzeczywiste kompetencje nie gromadzą się w żadnym miejscu.
AI 사용 개발
Development z wykorzystaniem AI to etap obserwowany u bardziej wprawnych deweloperów. Na tym etapie deweloper postrzega AI nie jako substytut osądu, lecz jako potężne narzędzie zwiększające produktywność. Deweloper pozostaje podmiotem odpowiedzialnym za design oraz ostateczne decyzje, delegując na AI zadania powtarzalne i kosztowne, takie jak generowanie kodu, refaktoryzacja, debugging czy podsumowywanie dokumentacji. Podejście to znacznie obniża udział powtarzalnych zadań dewelopera, pozwalając na dramatyczny wzrost produktywności przy jednoczesnym zachowaniu wiarygodności.
Podejście to ma jednak strukturalne ograniczenie polegające na braku cyrkulacji kontekstu designu oraz podejmowania decyzji. Ponieważ kierunek prac oraz proces decydujący ograniczają się do prywatnej refleksji poszczególnego dewelopera i nie są współdzielone z AI, system ten nie jest w stanie akumulować zmian i rozwoju dewelopera. W konsekwencji kontekst designu oraz zdolność oceny pozostają odizolowane u dewelopera.
Z tego powodu nie dochodzi do wytworzenia pętli uczenia się między deweloperem a AI, a zdolność korzystania z AI nie wykracza poza dotychczasowe kompetencje jednostki. Rozwój ma charakter przypisany do jednostki, a wraz z upływem czasu różnice w kompetencjach pomiędzy deweloperami pogłębiają się. Co więcej, ujawnia się ograniczenie polegające na tym, że kompetencje te są trudne do skumulowania lub odtworzenia w skali organizacji.
AI 네이티브 개발
Development natywny dla AI oznacza strukturę, która wykracza poza etap zaufania do AI lub traktowania go jako narzędzia, włączając AI w strukturę developmentu oraz proces decydujcy, w ramach której AI i człowiek wchodzą w interakcję i wspólnie się rozwijają. Na tym etapie AI funkcjonuje jako uczestnik, który wspólnie dzieli kontekst i osąd dewelopera, wchodząc z nim w interakcje.
Kluczem do tej struktury jest fakt, że relacja między AI a deweloperem nie ma charakteru jednokierunkowego, lecz cyrkuluje dwukierunkowo. Deweloper stale dzieli się z AI intencjami projektu oraz podstawami decyzji, dzięki czemu AI kumuluje tok myślenia dewelopera oraz kontekst organizacji. W efekcie AI przekracza rolę narzędzia przetwarzającego żądania, ewoluując w kierunku proponowania opcji dostosowanych do organizacji oraz wspierania i korygowania osądów dewelopera.
Development natywny dla AI nie opiera się na specyficznych umiejętnościach czy trikach poszczególnych osób. Jeśli kontekst AI jest zachowany pomimo rotacji pracowników, możliwe jest zadawanie pytań o podobnej perspektywie w obliczu tego samego problemu oraz podejmowanie lepszych decyzji w oparciu o przeszłe wybory i stojące za nimi powody. Kompetencje deweloperskie przestają być przypisane do jednostki, stając się skumulowane w całej organizacji i możliwe do odtworzenia.
Ostatecznie cel, do którego dąży development natywny dla AI, nie dotyczy konkretnej architektury czy metodologii programowania, lecz samego procesu developmentu, w którym osąd i uczenie się ze strony AI oraz człowieka ulegają ciągłemu wzmocnieniu. Wewnątrz tej struktury deweloper i AI nie zastępują się nawzajem. Zamiast tego ewoluują w relację, w której dzielą tę samą przestrzeń problemową, tworząc wspólnie lepsze osądy oraz bardziej solidne struktury.