{"id":11740,"date":"2024-09-03T21:55:34","date_gmt":"2024-09-03T19:55:34","guid":{"rendered":"https:\/\/proetcon.de\/?page_id=11740"},"modified":"2025-11-04T12:27:59","modified_gmt":"2025-11-04T11:27:59","slug":"ki-tools","status":"publish","type":"page","link":"https:\/\/proetcon.de\/index.php\/software-migration\/ki-tools\/","title":{"rendered":"KI-Tools und Software-Migration"},"content":{"rendered":"<div id=\"pl-gb11740-69d103e3b9684\" class=\"panel-layout wp-block-siteorigin-panels-layout-block\"><div id=\"pg-gb11740-69d103e3b9684-0\" class=\"panel-grid panel-no-style\"><div id=\"pgc-gb11740-69d103e3b9684-0-0\" class=\"panel-grid-cell\"><div id=\"panel-gb11740-69d103e3b9684-0-0-0\" class=\"so-panel widget widget_text panel-first-child panel-last-child\" data-index=\"0\"><div class=\"panel-widget-style panel-widget-style-for-gb11740-69d103e3b9684-0-0-0\">\t\t\t<div class=\"textwidget\"><p><strong><a href=\"https:\/\/proetcon.de\/\">HOME<\/a> &gt; <a href=\"https:\/\/proetcon.de\/index.php\/software-migration\/\">SOFTWARE-MIGRATION<\/a> &gt; <a href=\"https:\/\/proetcon.de\/index.php\/software-migration\/ki\/\">KI<\/a><\/strong><\/p>\n<\/div>\n\t\t<\/div><\/div><\/div><\/div><div id=\"pg-gb11740-69d103e3b9684-1\" class=\"panel-grid panel-has-style\"><div class=\"panel-row-style panel-row-style-for-gb11740-69d103e3b9684-1\"><div id=\"pgc-gb11740-69d103e3b9684-1-0\" class=\"panel-grid-cell\"><div class=\"panel-cell-style panel-cell-style-for-gb11740-69d103e3b9684-1-0\"><div id=\"panel-gb11740-69d103e3b9684-1-0-0\" class=\"so-panel widget widget_text panel-first-child panel-last-child\" data-index=\"1\"><div class=\"panel-widget-style panel-widget-style-for-gb11740-69d103e3b9684-1-0-0\">\t\t\t<div class=\"textwidget\"><h2><img fetchpriority=\"high\" decoding=\"async\" class=\" wp-image-11706 alignleft\" src=\"https:\/\/proetcon.de\/wp-content\/uploads\/2024\/09\/KI_4_zu_3.jpeg\" alt=\"Hand eines Gesch\u00e4ftsmanns mit KI-Glaskugel und Fragezeichen\" width=\"543\" height=\"407\">SOFTWARE-MIGRATION UND&nbsp;KI<\/h2>\n<p>Alan Turing, einer der einfluss\u00adreichs\u00adten Vorden\u00adker im Bereich der K\u00fcnst\u00adli\u00adchen Intel\u00adli\u00adgenz, formu\u00adlierte 1950 einen Intel\u00adli\u00adgenz\u00adtest f\u00fcr Computer:<br>\nEin Compu\u00adter sei intel\u00adli\u00adgent, wenn ein Mensch in einer Unter\u00adhal\u00adtung mit dem Compu\u00adter nicht erken\u00adnen k\u00f6nne, ob es sich um einen Compu\u00adter oder einen Menschen handelt.<\/p>\n<p>Turings Visio\u00adnen sind heute Wirklich\u00adkeit. KI-Sprach\u00ad\u00admo\u00ad\u00addelle k\u00f6nnen durch Erken\u00adnung statis\u00adti\u00adscher Korre\u00adla\u00adtio\u00adnen zwischen W\u00f6rtern das wahrschein\u00adlich n\u00e4chste Wort ermit\u00adteln (seman\u00adti\u00adsche Wahrschein\u00adlich\u00adkeit) und erm\u00f6g\u00adli\u00adchen menschen\u00ad\u00e4hn\u00adli\u00adche Kommunikation.<\/p>\n<p>Die aktuel\u00adlen Anwen\u00addungs\u00adge\u00adbiete der KI gehen jedoch weit \u00fcber die Kommu\u00adni\u00adka\u00adtion hinaus. Dies provo\u00adziert die Frage, worin die M\u00f6glich\u00adkei\u00adten und die Grenzen der KI-Nutzung in der Software-Migration bestehen.<\/p>\n<p>Nachfol\u00adgend werden verschie\u00addene KI-Tools bez\u00fcg\u00adlich ihrer Nutzung in der Software-Migration betrachtet.<\/p>\n<\/div>\n\t\t<\/div><\/div><\/div><\/div><\/div><\/div><div id=\"pg-gb11740-69d103e3b9684-2\" class=\"panel-grid panel-has-style\"><div class=\"panel-row-style panel-row-style-for-gb11740-69d103e3b9684-2\"><div id=\"pgc-gb11740-69d103e3b9684-2-0\" class=\"panel-grid-cell\"><div class=\"panel-cell-style panel-cell-style-for-gb11740-69d103e3b9684-2-0\"><div id=\"panel-gb11740-69d103e3b9684-2-0-0\" class=\"so-panel widget widget_text panel-first-child panel-last-child\" data-index=\"2\"><div class=\"panel-widget-style panel-widget-style-for-gb11740-69d103e3b9684-2-0-0\">\t\t\t<div class=\"textwidget\"><h3>Abgren\u00adzung des Untersuchungsgegenstandes<\/h3>\n<p>Unter dem Begriff Software-Migration wird im Folgen\u00adden die toolge\u00adst\u00fctzte, compi\u00adler\u00adba\u00adsierte Software-Migration verstan\u00adden. Und hier konkret der Prozess der Konver\u00adtie\u00adrung von Program\u00admen von einer Legacy-Sprache in eine moderne Program\u00admier\u00adspra\u00adche unter Nutzung von Konver\u00adtie\u00adrungs\u00adtools. Alter\u00adna\u00adtive Migra\u00adti\u00adons\u00adan\u00ads\u00e4tze wie z.B. die manuelle Migration werden nicht betrach\u00adtet. Auch die Unter\u00adst\u00fct\u00adzung von Migra\u00adti\u00adons\u00adpro\u00adjek\u00adten durch z.B. Analy\u00adse\u00adtools oder Tools zur Testun\u00adter\u00adst\u00fct\u00adzung etc. sind nicht Inhalt der nachfol\u00adgen\u00adden Betrachtung.<\/p>\n<p>Die Unter\u00adsu\u00adchun\u00adgen beinhal\u00adten die Konver\u00adtie\u00adrung eines typischen COBOL-Program\u00ad\u00admes nach Java und dessen Abarbei\u00adtung: zum einen mit diver\u00adsen im Netz verf\u00fcg\u00adba\u00adren KI-Tools, zum anderen mit dem von pro et con entwi\u00adckel\u00adten Konver\u00adtie\u00adrungs\u00adtool CoJaC (COBOL-Java-Conver\u00ad\u00ad\u00adter). Die Ergeb\u00adnisse werden vergli\u00adchen und bewertet.<\/p>\n<p>Die Auswer\u00adtung soll Aussa\u00adgen liefern, inwie\u00adweit die Ergeb\u00adnisse der KI-Tools seman\u00adtisch \u00e4quiva\u00adlent zu den korrek\u00adten Ergeb\u00adnis\u00adsen sind, wie sie z.B. ein COBOL-Compi\u00ad\u00adler liefert. Seman\u00adti\u00adsche \u00c4quiva\u00adlenz ist ein wesent\u00adli\u00adches, wenn nicht das wichtigste Krite\u00adrium in einem Migrationsprojekt.<\/p>\n<\/div>\n\t\t<\/div><\/div><\/div><\/div><\/div><\/div><div id=\"pg-gb11740-69d103e3b9684-3\" class=\"panel-grid panel-has-style\"><div class=\"panel-row-style panel-row-style-for-gb11740-69d103e3b9684-3\"><div id=\"pgc-gb11740-69d103e3b9684-3-0\" class=\"panel-grid-cell\"><div class=\"panel-cell-style panel-cell-style-for-gb11740-69d103e3b9684-3-0\"><div id=\"panel-gb11740-69d103e3b9684-3-0-0\" class=\"so-panel widget widget_text panel-first-child panel-last-child\" data-index=\"3\"><div class=\"panel-widget-style panel-widget-style-for-gb11740-69d103e3b9684-3-0-0\">\t\t\t<div class=\"textwidget\"><h3>Testba\u00adsis<\/h3>\n<p>Die Testba\u00adsis bildet ein einfa\u00adches COBOL-Programm. Das Programm besitzt keine Logik. Es beinhal\u00adtet jedoch COBOL-typische Anwei\u00adsun\u00adgen, welche im produk\u00adti\u00adven Umfeld zahlreich Anwen\u00addung finden. Das COBOL-Programm erschlie\u00dft sich versier\u00adten COBOL-Program\u00ad\u00admie\u00ad\u00adrern unmit\u00adtel\u00adbar. Es werden unter\u00adschied\u00adli\u00adche Daten\u00adde\u00adfi\u00adni\u00adtio\u00adnen mit gleich\u00adzei\u00adti\u00adger Initia\u00adli\u00adsie\u00adrung vorge\u00adnom\u00admen. Die Daten werden manipu\u00adliert, z.B. durch Wertzu\u00adwei\u00adsun\u00adgen bzw. \u00dcberla\u00adge\u00adrun\u00adgen, und nach jeder Manipu\u00adla\u00adtion mit DISPLAY angezeigt.<\/p>\n<p><strong>Micro\u00ad\u00adFo\u00ad\u00adcus-COBOL-Compi\u00ad\u00adler:<\/strong><\/p>\n<p>Das Programm wurde mit dem Micro\u00ad\u00adFo\u00ad\u00adcus-COBOL-Compi\u00ad\u00adler \u00fcbersetzt und anschlie\u00ad\u00dfend ausge\u00adf\u00fchrt. Es lieferte die folgen\u00adden Ergebnisse.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone \" src=\"https:\/\/proetcon.de\/wp-content\/uploads\/2024\/12\/cobol_ergebnis.png\" width=\"184\" height=\"149\"><\/p>\n<\/div>\n\t\t<\/div><\/div><\/div><\/div><div id=\"pgc-gb11740-69d103e3b9684-3-1\" class=\"panel-grid-cell\"><div id=\"panel-gb11740-69d103e3b9684-3-1-0\" class=\"so-panel widget widget_text panel-first-child panel-last-child\" data-index=\"4\"><div class=\"panel-widget-style panel-widget-style-for-gb11740-69d103e3b9684-3-1-0\">\t\t\t<div class=\"textwidget\"><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-12828 size-full\" src=\"https:\/\/proetcon.de\/wp-content\/uploads\/2024\/12\/cobol_quellcode_v2-1.png\" alt width=\"434\" height=\"570\" srcset=\"https:\/\/proetcon.de\/wp-content\/uploads\/2024\/12\/cobol_quellcode_v2-1.png 434w, https:\/\/proetcon.de\/wp-content\/uploads\/2024\/12\/cobol_quellcode_v2-1-228x300.png 228w\" sizes=\"(max-width: 434px) 100vw, 434px\"><\/p>\n<\/div>\n\t\t<\/div><\/div><\/div><\/div><\/div><div id=\"pg-gb11740-69d103e3b9684-4\" class=\"panel-grid panel-has-style\"><div class=\"panel-row-style panel-row-style-for-gb11740-69d103e3b9684-4\"><div id=\"pgc-gb11740-69d103e3b9684-4-0\" class=\"panel-grid-cell\"><div class=\"panel-cell-style panel-cell-style-for-gb11740-69d103e3b9684-4-0\"><div id=\"panel-gb11740-69d103e3b9684-4-0-0\" class=\"so-panel widget widget_text panel-first-child panel-last-child\" data-index=\"5\"><div class=\"panel-widget-style panel-widget-style-for-gb11740-69d103e3b9684-4-0-0\">\t\t\t<div class=\"textwidget\"><h2>KI-TOOLS<\/h2>\n<p>Die Experi\u00admente wurden mit folgen\u00adden KI-Tools durch\u00adge\u00adf\u00fchrt: ChatGPT (GPT-4o und GPT\u20113.5), DeepSeek, Copilot, CodeCon\u00advert, CodeGPT, Cursor und Black\u00adbox&nbsp;AI.<br>\nAus dem COBOL-Programm wurden von allen KI-Tools Java-Programme erzeugt, welche eine identi\u00adsche Funktio\u00adna\u00adli\u00adt\u00e4t besit\u00adzen sollten. Es muss angemerkt werden, dass die verschie\u00adde\u00adnen KI-Tools nicht f\u00fcr die gestellte Aufgabe spezi\u00adell trainiert wurden.<\/p>\n<p>Nachfol\u00adgend werden die generier\u00adten Java-Programme einschlie\u00df\u00adlich der Ergeb\u00adnisse zur Laufzeit dokumen\u00adtiert. Es wird sich dabei auf die zwei KI-Tools ChatGPT-4o und DeepSeek konzen\u00adtriert. Die Tests der \u00fcbrigen unter\u00adsuch\u00adten KI-Tools liefer\u00adten identi\u00adsche Ergebnisse:<\/p>\n<\/div>\n\t\t<\/div><\/div><\/div><\/div><\/div><\/div><div id=\"pg-gb11740-69d103e3b9684-5\" class=\"panel-grid panel-has-style\"><div class=\"panel-row-style panel-row-style-for-gb11740-69d103e3b9684-5\"><div id=\"pgc-gb11740-69d103e3b9684-5-0\" class=\"panel-grid-cell\"><div id=\"panel-gb11740-69d103e3b9684-5-0-0\" class=\"so-panel widget widget_text panel-first-child panel-last-child\" data-index=\"6\"><div class=\"panel-widget-style panel-widget-style-for-gb11740-69d103e3b9684-5-0-0\">\t\t\t<div class=\"textwidget\"><h2><a href=\"https:\/\/openai.com\/index\/hello-gpt-4o\/\" target=\"_blank\" rel=\"noopener\">ChatGPT-4o<\/a><\/h2>\n<p><a href=\"https:\/\/proetcon.de\/wp-content\/uploads\/2024\/12\/chatgpt4o_java-zielcode_mit_ergebnissen_v2.png\"> <img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-12824 size-full\" src=\"https:\/\/proetcon.de\/wp-content\/uploads\/2024\/12\/chatgpt4o_java-zielcode_mit_ergebnissen_v2.png\" alt=\"Java-Konvertierungsergebnis 1 und 2 von ChatGPT-4o\" width=\"1920\" height=\"1080\" srcset=\"https:\/\/proetcon.de\/wp-content\/uploads\/2024\/12\/chatgpt4o_java-zielcode_mit_ergebnissen_v2.png 1920w, https:\/\/proetcon.de\/wp-content\/uploads\/2024\/12\/chatgpt4o_java-zielcode_mit_ergebnissen_v2-300x169.png 300w, https:\/\/proetcon.de\/wp-content\/uploads\/2024\/12\/chatgpt4o_java-zielcode_mit_ergebnissen_v2-1024x576.png 1024w, https:\/\/proetcon.de\/wp-content\/uploads\/2024\/12\/chatgpt4o_java-zielcode_mit_ergebnissen_v2-768x432.png 768w, https:\/\/proetcon.de\/wp-content\/uploads\/2024\/12\/chatgpt4o_java-zielcode_mit_ergebnissen_v2-1536x864.png 1536w, https:\/\/proetcon.de\/wp-content\/uploads\/2024\/12\/chatgpt4o_java-zielcode_mit_ergebnissen_v2-1320x743.png 1320w\" sizes=\"auto, (max-width: 1920px) 100vw, 1920px\"><\/a><\/p>\n<p>Bei der Ausf\u00fch\u00adrung des konver\u00adtier\u00adten Programms liefert dieses falsche Ergebnisse.<br>\nEine nochma\u00adlige Konver\u00adtie\u00adrung liefert einen anderen Source Code.<br>\nDie (fehler\u00adhaf\u00adten) Ergeb\u00adnisse beider Konver\u00adtie\u00adrun\u00adgen unter\u00adschei\u00adden&nbsp;sich.<\/p>\n<p><a href=\"https:\/\/proetcon.de\/wp-content\/uploads\/2025\/10\/fehler_in_ki_uebersetzung_chatgpt4o.pdf\" target=\"_blank\" rel=\"noopener\">Sehen Sie hier eine genaue Analyse.<\/a><\/p>\n<\/div>\n\t\t<\/div><\/div><\/div><div id=\"pgc-gb11740-69d103e3b9684-5-1\" class=\"panel-grid-cell\"><div id=\"panel-gb11740-69d103e3b9684-5-1-0\" class=\"so-panel widget widget_text panel-first-child panel-last-child\" data-index=\"7\"><div class=\"panel-widget-style panel-widget-style-for-gb11740-69d103e3b9684-5-1-0\">\t\t\t<div class=\"textwidget\"><h2><a href=\"https:\/\/www.deepseek.com\/\" target=\"_blank\" rel=\"noopener\">DeepSeek<\/a> (v3.1)<\/h2>\n<p><a href=\"https:\/\/proetcon.de\/wp-content\/uploads\/2025\/08\/deepseek_konvertierung_java_1_und_2.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-14893 size-full\" src=\"https:\/\/proetcon.de\/wp-content\/uploads\/2025\/08\/deepseek_konvertierung_java_1_und_2.png\" alt=\"Java-Konvertierungsergebnis 1 und 2 von DeepSeek v3.1\" width=\"2557\" height=\"1440\" srcset=\"https:\/\/proetcon.de\/wp-content\/uploads\/2025\/08\/deepseek_konvertierung_java_1_und_2-300x169.png 300w, https:\/\/proetcon.de\/wp-content\/uploads\/2025\/08\/deepseek_konvertierung_java_1_und_2-1024x576.png 1024w, https:\/\/proetcon.de\/wp-content\/uploads\/2025\/08\/deepseek_konvertierung_java_1_und_2-768x432.png 768w, https:\/\/proetcon.de\/wp-content\/uploads\/2025\/08\/deepseek_konvertierung_java_1_und_2-1536x864.png 1536w, https:\/\/proetcon.de\/wp-content\/uploads\/2025\/08\/deepseek_konvertierung_java_1_und_2-2048x1152.png 2048w\" sizes=\"auto, (max-width: 2557px) 100vw, 2557px\"><\/a><\/p>\n<p>Bei der Ausf\u00fch\u00adrung des konver\u00adtier\u00adten Programms liefert dieses falsche Ergebnisse.<br>\nEine nochma\u00adlige Konver\u00adtie\u00adrung liefert einen anderen Source Code.<br>\nDie (fehler\u00adhaf\u00adten) Ergeb\u00adnisse beider Konver\u00adtie\u00adrun\u00adgen unter\u00adschei\u00adden&nbsp;sich.<\/p>\n<p><a href=\"https:\/\/proetcon.de\/wp-content\/uploads\/2025\/10\/fehler_in_ki_uebersetzung_deepseek.pdf\" target=\"_blank\" rel=\"noopener\">Sehen Sie hier eine genaue Analyse.<\/a><\/p>\n<\/div>\n\t\t<\/div><\/div><\/div><\/div><\/div><div id=\"pg-gb11740-69d103e3b9684-6\" class=\"panel-grid panel-has-style\"><div class=\"panel-row-style panel-row-style-for-gb11740-69d103e3b9684-6\"><div id=\"pgc-gb11740-69d103e3b9684-6-0\" class=\"panel-grid-cell\"><div class=\"panel-cell-style panel-cell-style-for-gb11740-69d103e3b9684-6-0\"><div id=\"panel-gb11740-69d103e3b9684-6-0-0\" class=\"so-panel widget widget_text panel-first-child panel-last-child\" data-index=\"8\"><div class=\"panel-widget-style panel-widget-style-for-gb11740-69d103e3b9684-6-0-0\">\t\t\t<div class=\"textwidget\"><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/proetcon.de\/wp-content\/uploads\/2024\/12\/java_zielcode_verkuerzt_v2.png\" alt width=\"649\" height=\"900\"><\/p>\n<\/div>\n\t\t<\/div><\/div><\/div><\/div><div id=\"pgc-gb11740-69d103e3b9684-6-1\" class=\"panel-grid-cell\"><div id=\"panel-gb11740-69d103e3b9684-6-1-0\" class=\"so-panel widget widget_text panel-first-child panel-last-child\" data-index=\"9\"><div class=\"panel-widget-style panel-widget-style-for-gb11740-69d103e3b9684-6-1-0\">\t\t\t<div class=\"textwidget\"><h2>COJAC (COBOL TO JAVA CONVERTER)<\/h2>\n<p>CoJaC wird neben anderen Tools in Migra\u00adti\u00adons\u00adpro\u00adjek\u00adten von pro et con f\u00fcr die Konver\u00adtie\u00adrung der COBOL-Programme nach Java genutzt.<br>\nDeshalb bietet es sich an, die Ergeb\u00adnisse von CoJaC mit denen der KI-Tools zu vergleichen:<\/p>\n<p>Das COBOL-Programm wurde mit dem Werkzeug CoJaC von pro et con nach Java konvertiert.<br>\nDas Java-Programm wurde kompi\u00adliert und ausge\u00adf\u00fchrt. Zur Laufzeit lieferte das Java-Programm identisch zum COBOL-Programm die korrek\u00adten Ergebnisse.<\/p>\n<p>Auch eine erneute Konver\u00adtie\u00adrung lieferte logischer\u00adweise identi\u00adschen Java-Code und identi\u00adsche, korrekte Ergeb\u00adnisse zur Laufzeit.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-12344\" src=\"https:\/\/proetcon.de\/wp-content\/uploads\/2024\/12\/cobol_ergebnis.png\" alt width=\"194\" height=\"156\"><\/p>\n<\/div>\n\t\t<\/div><\/div><\/div><\/div><\/div><div id=\"pg-gb11740-69d103e3b9684-7\" class=\"panel-grid panel-has-style\"><div class=\"panel-row-style panel-row-style-for-gb11740-69d103e3b9684-7\"><div id=\"pgc-gb11740-69d103e3b9684-7-0\" class=\"panel-grid-cell\"><div class=\"panel-cell-style panel-cell-style-for-gb11740-69d103e3b9684-7-0\"><div id=\"panel-gb11740-69d103e3b9684-7-0-0\" class=\"so-panel widget widget_text panel-first-child panel-last-child\" data-index=\"10\"><div class=\"panel-widget-style panel-widget-style-for-gb11740-69d103e3b9684-7-0-0\">\t\t\t<div class=\"textwidget\"><h2>DISKUS\u00adSION DER ERGEBNISSE<\/h2>\n<ol>\n<li>Alle getes\u00adte\u00adten KI-Tools liefern falsche Ergeb\u00adnisse. Die Ursache liegt darin, dass COBOL-spezi\u00ad\u00adfi\u00ad\u00adsche Sprach\u00adele\u00admente mit Java-Bordmi\u00adt\u00ad\u00adteln abgebil\u00addet werden. Das funktio\u00adniert nur bedingt, da z.B. f\u00fcr die komple\u00adxen COBOL-Daten\u00ad\u00ad\u00adbe\u00ad\u00adschrei\u00ad\u00adbun\u00ad\u00adgen und deren Eigen\u00adschaf\u00adten keine seman\u00adtisch \u00e4quiva\u00adlen\u00adten Java-Daten\u00ad\u00ad\u00adty\u00ad\u00adpen\/-Varia\u00ad\u00adblen existie\u00adren. KI-Modelle treffen anhand von Wahrschein\u00adlich\u00adkeit Vorher\u00adsa\u00adgen, welche sich einer 100%igen seman\u00adti\u00adschen \u00c4quiva\u00adlenz nur ann\u00e4hern k\u00f6nnen. Zwar k\u00f6nnen die zugrun\u00adde\u00adlie\u00adgen\u00adden Machine- oder Deep-Learning-Modelle durch laufen\u00addes Training optimiert werden, jedoch bleibt offen, ob \u2013 und wenn ja, mit welchem Trainings\u00adauf\u00adwand \u2013 diese 100%ige seman\u00adti\u00adsche \u00c4quiva\u00adlenz vollst\u00e4n\u00addig erreicht werden kann. Demge\u00adgen\u00ad\u00fcber besitzt CoJaC eine Biblio\u00adthek, in welcher alle in COBOL vorkom\u00admen\u00adden Daten\u00adbe\u00adschrei\u00adbun\u00adgen in Form von Java-Klassen und \u2011Packa\u00adges enthal\u00adten sind. Diese emulie\u00adren die COBOL-Daten\u00ad\u00ad\u00adbe\u00ad\u00adschrei\u00ad\u00adbun\u00ad\u00adgen im Java-Code. So ist eine seman\u00adti\u00adsche \u00c4quiva\u00adlenz zwischen COBOL-Programm und Java-Programm gegeben.<\/li>\n<li>Alle getes\u00adte\u00adten KI-Tools liefer\u00adten bei wieder\u00adhol\u00adter Java-Generie\u00adrung einen ver\u00e4n\u00adder\u00adten Source Code. Eine Konver\u00adtie\u00adrung bei einem KI-Tool ist demnach nicht 1:1 wieder\u00adhol\u00adbar. In einem meist mehrere Millio\u00adnen LOC umfas\u00adsen\u00adden Migra\u00adti\u00adons\u00adpro\u00adjekt besteht die Notwen\u00addig\u00adkeit, eine bestimmte Menge von Program\u00admen (z.B. bei Weiter\u00adent\u00adwick\u00adlun\u00adgen) in mehre\u00adren Itera\u00adtio\u00adnen erneut zu konver\u00adtie\u00adren. Ein dadurch sich st\u00e4ndig \u00e4ndern\u00adder Source Code erzeugt Diskre\u00adpan\u00adzen bei zusam\u00admen\u00adh\u00e4n\u00adgen\u00adden Kompo\u00adnen\u00adten (Referen\u00adzie\u00adrun\u00adgen, Klassen, Schnitt\u00adstel\u00adlen), da jedes Programm \u00fcber Schnitt\u00adstel\u00adlen mit anderen Program\u00admen des Programm\u00adsys\u00adtems kommu\u00adni\u00adziert. Das ist in einem Migra\u00adti\u00adons\u00adpro\u00adjekt nicht zu akzep\u00adtie\u00adren. Mit einem compi\u00adler\u00adba\u00adsier\u00adten Migra\u00adti\u00adons\u00adtool wie CoJaC kann eine Programm\u00adkon\u00adver\u00adtie\u00adrung belie\u00adbig oft wieder\u00adholt werden und liefert immer identi\u00adschen Source Code.<\/li>\n<li>Quali\u00adfi\u00adzierte COBOL-Program\u00ad\u00admie\u00ad\u00adrer werden erkannt haben, dass das COBOL-Programm an mehre\u00adren Stellen unsau\u00adber program\u00admiert ist (z.B. wird eine zweistel\u00adlige Zahl auf eine einstel\u00adlige Varia\u00adble zugewie\u00adsen). Das ist offen\u00adsicht\u00adlich kein guter Stil, kommt aller\u00addings in der Reali\u00adt\u00e4t nun mal vor, beson\u00adders bei langlau\u00adfen\u00adden, komple\u00adxen Projek\u00adten, was bei Legacy-Software in der Regel der Fall ist. Es kann niemand garan\u00adtie\u00adren, dass zum Zeitpunkt einer Migration alles sauber program\u00admiert ist. Und diesem Umstand muss eine Migration gerecht werden, indem bei kriti\u00adscher Software auch jeder Sonder\u00adfall 1:1 seman\u00adtisch \u00e4quiva\u00adlent abgebil\u00addet wird. Genau das k\u00f6nnen KI-Tools defini\u00adtiv nicht leisten, der compi\u00adler\u00adba\u00adsierte Ansatz hinge\u00adgen&nbsp;schon.<\/li>\n<li>\u201cDas\u201d COBOL existiert nicht. Die Sprache ist abh\u00e4n\u00adgig von der Hardware-Platt\u00ad\u00adform, von Compi\u00ad\u00adler-Dialek\u00ad\u00adten und projekt\u00adspe\u00adzi\u00adfi\u00adschen Compi\u00ad\u00adler-Einstel\u00ad\u00adlun\u00ad\u00adgen, welche das Verhal\u00adten des Systems ver\u00e4n\u00addern und nicht im COBOL-Code selbst stehen. Auch verschie\u00addenste Pr\u00e4com\u00adpi\u00adler sind verbrei\u00adtet. Dadurch ist jedes Legacy-System indivi\u00addu\u00adell und setzt eine ebenso indivi\u00addu\u00adelle Bearbei\u00adtung voraus. Auch hier sto\u00dfen KI-Tools an ihre Grenzen, wohin\u00adge\u00adgen der compi\u00adler\u00adba\u00adsierte Ansatz diese indivi\u00addu\u00adelle Bearbei\u00adtung unterst\u00fctzt.<\/li>\n<\/ol>\n<\/div>\n\t\t<\/div><\/div><\/div><\/div><\/div><\/div><div id=\"pg-gb11740-69d103e3b9684-8\" class=\"panel-grid panel-has-style\"><div class=\"panel-row-style panel-row-style-for-gb11740-69d103e3b9684-8\"><div id=\"pgc-gb11740-69d103e3b9684-8-0\" class=\"panel-grid-cell\"><div class=\"panel-cell-style panel-cell-style-for-gb11740-69d103e3b9684-8-0\"><div id=\"panel-gb11740-69d103e3b9684-8-0-0\" class=\"so-panel widget widget_text panel-first-child\" data-index=\"11\"><div class=\"panel-widget-style panel-widget-style-for-gb11740-69d103e3b9684-8-0-0\">\t\t\t<div class=\"textwidget\"><h2>FAZIT<\/h2>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-12001 alignright\" src=\"https:\/\/proetcon.de\/wp-content\/uploads\/2024\/09\/KI_turmoil_3_zu_2.jpg\" alt width=\"492\" height=\"328\" srcset=\"https:\/\/proetcon.de\/wp-content\/uploads\/2024\/09\/KI_turmoil_3_zu_2.jpg 980w, https:\/\/proetcon.de\/wp-content\/uploads\/2024\/09\/KI_turmoil_3_zu_2-300x200.jpg 300w, https:\/\/proetcon.de\/wp-content\/uploads\/2024\/09\/KI_turmoil_3_zu_2-768x512.jpg 768w, https:\/\/proetcon.de\/wp-content\/uploads\/2024\/09\/KI_turmoil_3_zu_2-272x182.jpg 272w\" sizes=\"auto, (max-width: 492px) 100vw, 492px\"><\/p>\n<ul>\n<li>Aktuell k\u00f6nnen KI-Tools in einem Migra\u00adti\u00adons\u00adpro\u00adjekt zum Einsatz kommen, aber eben nur als Assis\u00adten\u00adten. Beim IBM watsonx Code Assistant for Z ist diese Funktio\u00adna\u00adli\u00adt\u00e4t schon im Namen hinter\u00adlegt. Es lassen sich damit z.B. Unit-Tests generie\u00adren, deren manuelle Erstel\u00adlung aufwen\u00addig ist. Auch k\u00f6nnen sie z.B. bei der Kommen\u00adtie\u00adrung des Codes, bei der Refak\u00adto\u00adri\u00adsie\u00adrung und der Programm\u00addo\u00adku\u00admen\u00adta\u00adtion unter\u00adst\u00fct\u00adzen. Es finden sich sicher noch weitere Einsatzm\u00f6glichkeiten.<\/li>\n<li>Bei der eigent\u00adli\u00adchen Konver\u00adtie\u00adrung von Program\u00admen sind KI-Tools aktuell nur bedingt einsetz\u00adbar. Ohne Training bzw. manuelle Anpas\u00adsung liefern sie Ergeb\u00adnisse zur Laufzeit, welche nicht seman\u00adtisch \u00e4quiva\u00adlent zum origi\u00adna\u00adlen Programm sind. <strong>Seman\u00adti\u00adsche \u00c4quiva\u00adlenz ist aber unabding\u00adbare Voraus\u00adset\u00adzung f\u00fcr ein erfolg\u00adrei\u00adches Projekt.<\/strong><\/li>\n<li>Sowohl das Training der KI-Tools als auch die manuelle Anpas\u00adsung sind ressour\u00adcen- und zeitauf\u00adwen\u00addig und n\u00e4hern sich so bez\u00fcg\u00adlich des Aufwan\u00addes dem einer Neuent\u00adwick\u00adlung&nbsp;an.<\/li>\n<li><strong>Wenn der Kunde in \u00fcberschau\u00adba\u00adrer Projekt\u00adzeit und mit \u00fcberschau\u00adba\u00adrem Budget einen Wechsel der Program\u00admier\u00adspra\u00adche und\/oder einen Platt\u00adform\u00adwech\u00adsel w\u00fcnscht, dann ist aktuell die toolge\u00adst\u00fctzte, compi\u00adler\u00adba\u00adsierte Software-Migration das Mittel der Wahl. KI-Tools k\u00f6nnen dabei wertvolle, assis\u00adtenz\u00adba\u00adsierte Unter\u00adst\u00fct\u00adzung leisten.<\/strong><\/li>\n<\/ul>\n<\/div>\n\t\t<\/div><\/div><div id=\"panel-gb11740-69d103e3b9684-8-0-1\" class=\"so-panel widget widget_sow-button panel-last-child\" data-index=\"12\"><div class=\"panel-widget-style panel-widget-style-for-gb11740-69d103e3b9684-8-0-1\"><div class=\"so-widget-sow-button so-widget-sow-button-flat-33da4ff7b339-11740\"><div class=\"ow-button-base ow-button-align-left\">\n\t\t\t<a href=\"https:\/\/proetcon.de\/index.php\/software-migration\/success-stories\/\" class=\"sowb-button ow-icon-placement-left ow-button-hover\">\n\t\t<span>\n\t\t\t\n\t\t\t<b>ZU UNSEREN SUCCESS STORIES<\/b>\t\t<\/span>\n\t\t\t<\/a>\n\t<\/div>\n<\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>HOME &gt; SOFTWARE-MIGRATION &gt; KI SOFTWARE-MIGRATION UND KI Alan Turing, einer der einfluss\u00adreichs\u00adten Vorden\u00adker im Bereich der K\u00fcnst\u00adli\u00adchen Intel\u00adli\u00adgenz, formu\u00adlierte 1950 einen Intel\u00adli\u00adgenz\u00adtest f\u00fcr Compu\u00adter: Ein Compu\u00adter sei intel\u00adli\u00adgent, wenn ein Mensch in einer Unter\u00adhal\u00adtung mit dem Compu\u00adter nicht erken\u00adnen k\u00f6nne, ob es sich um einen Compu\u00adter oder einen Menschen handelt. Turings Visio\u00adnen sind heute\u00adCon\u00adti\u00adnue reading&nbsp;\u2192<\/p>\n","protected":false},"author":1,"featured_media":12037,"parent":7585,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"inline_featured_image":false,"wp_typography_post_enhancements_disabled":false,"footnotes":""},"class_list":["post-11740","page","type-page","status-publish","has-post-thumbnail","hentry","has-thumb"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/proetcon.de\/index.php\/wp-json\/wp\/v2\/pages\/11740","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/proetcon.de\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/proetcon.de\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/proetcon.de\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/proetcon.de\/index.php\/wp-json\/wp\/v2\/comments?post=11740"}],"version-history":[{"count":0,"href":"https:\/\/proetcon.de\/index.php\/wp-json\/wp\/v2\/pages\/11740\/revisions"}],"up":[{"embeddable":true,"href":"https:\/\/proetcon.de\/index.php\/wp-json\/wp\/v2\/pages\/7585"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/proetcon.de\/index.php\/wp-json\/wp\/v2\/media\/12037"}],"wp:attachment":[{"href":"https:\/\/proetcon.de\/index.php\/wp-json\/wp\/v2\/media?parent=11740"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}