Narzędzie IBM do generowania sztucznej inteligencji ma na celu refaktoryzację starożytnego kodu COBOL na potrzeby komputerów mainframe
W systemach produkcyjnych na całym świecie działają setki miliardów linii kodu COBOL . Nie jest to idealne rozwiązanie w przypadku języka, który ma ponad 60 lat i którego główni architekci są w większości na emeryturze lub nie żyją.
IBM, chcąc zachować dotychczasowe funkcje w swoich systemach mainframe Z , chce, aby ten kod został przepisany w Javie. Kilka lat temu próbował nakłonić do tego ludzi , ale teraz wpadł na inny pomysł. Tak, zgadłeś: wykorzystuje sztuczną inteligencję do pracy.
Rozwiązanie IBM watsonx Code Assistant , które ma być dostępne w czwartym kwartale tego roku, ma w dużym stopniu zaangażować ludzi, ale przy wsparciu generatywnej sztucznej inteligencji w zakresie analizowania, refaktoryzacji i testowania nowego kodu obiektowego. Nie jest to również proces typu „wszystko albo nic”, ponieważ IBM twierdzi, że kod wygenerowany przez Watsonx powinien współpracować z językiem COBOL i niektórymi funkcjami komputera mainframe Z.
W technicznym poście na blogu poświęconym konwersji języka COBOL Kyle Charlet, dyrektor ds. technicznych oprogramowania zSystems z IBM, od razu podchodzi do tematu i mówi to, co wiele osób powiedziało o języku COBOL: To nie tylko kod; jest to logika biznesowa, przypadki skrajne i pamięć instytucjonalna lub jej brak.
Niektórzy klienci… spędzili lata i miliony na próbach unowocześnienia swojego kodu COBOL, a mimo to zmodernizowano tylko jego ułamek. Przepisanie języka COBOL wymaga wielu programistów i żmudnej pracy ręcznej. Ludzie próbowali modernizować te aplikacje na wiele różnych sposobów i, jak wynika z mojego doświadczenia, z różnymi rezultatami. Żaden nie jest wzorowy.
Charlet pisze, że watsonx firmy IBM może pomóc dużym organizacjom oddzielić poszczególne usługi od monolitycznych aplikacji w języku COBOL. Zdaniem IBM będzie to przebiegać w trzech etapach:
- Refactor, w którym poszczególne usługi są „chirurgicznie” oddzielane lub wyodrębniane z większego kodu
- Przekształć kod Java na przyjazny dla komputerów mainframe lub COBOL, który może komunikować się bezpośrednio z Javą
- Waliduj, korzystając ze sztucznej inteligencji pomagającej w tworzeniu przypadków testowych, ale z programistami wciąż „posiadającymi kierowcę”
Wydaje się, że pod pewnymi względami pomoc sztucznej inteligencji może jedynie pomóc w rozwiązaniu pokoleniowego wyzwania, jakim jest rozwój języka COBOL przy jednoczesnym zachowaniu jego funkcjonalności. Chociaż bazy kodów COBOL mogą być stosunkowo stabilne i bezpieczne — gdy w szerokim badaniu zostaną uznane za jedne z najmniej problematycznych — koszty ich aktualizacji i rozbudowy są gigantyczne . Starsza wersja języka COBOL była jedną z przyczyn głęboko inwazyjnego włamania do Biura Zarządzania Personelem w 2015 r ., ponieważ przestarzałego kodu nie można było zaszyfrować ani zmusić do współpracy z innymi bezpiecznymi systemami.
Powtarza się jednak argument, że język COBOL jest dobry w zarządzaniu systemami i wymianami specyficznymi dla danej firmy w sposób, który ( niektórzy mogą twierdzić ) stwarza mniej wektorów ataku. Możesz też argumentować , że kod wygenerowany i zrestrukturyzowany przez sztuczną inteligencję może wyglądać poprawnie i wydawać się gotowy do testów, ale bez ludzi w pobliżu, którzy dokładnie wiedzą, dlaczego kod robi to, co robi, kod przeskalowany przez sztuczną inteligencję mógłby mieć tyle samo szumu co sztuczna inteligencja. przeskalowane wideo.
W następnej kolejności zostanie wdrożony moduł IBM watsonx Code Assistant for Z, zapewniający prędkość Red Hat Ansible Light. Biorąc pod uwagę, że watsonx.ai został rzekomo przeszkolony w zakresie ponad 100 języków kodowania, prawdopodobnie wkrótce pojawi się więcej pilotów AI obsługujących stary kod komputerów mainframe.
Dodaj komentarz