人工知能はあなたのために古いソフトウェアを更新します

IBM AIツールを使用すると、エンジニアはレガシーエンタープライズソフトウェアを使用する方法を探ることができます。



昨年、IBMは、AIがレガシーコードを更新することでソフトウェアを維持するという反復的な作業をどのように実行できるかを示しました 。同社は現在、レガシーアプリケーションを再エンコードして最新のコンピューティングプラットフォームで実行するためのAIベースの手法を導入しています。 Mono2Microおよび ApplicationModernizationAccelerator







と呼ばれる最近のIBMプロジェクト (AMA)は、アプリケーションアーキテクトにレガシーアプリケーションを更新および再利用するためのツールを提供します。IBMResearchのハイブリッドクラウドサービスのディレクターであるNickFullerよると 、これらのイニシアチブは、AIがCOBOLからJavaに自動的に移行できるポイントにAIを近づけるのに役立っています。



しかし、フラー氏は、これらの高度なAIベースのアプローチは、現在、モノリシックプログラムのレガシーマシンコードを個別のマイクロサービスに分割することしかできないと述べています。 AMAツールキットはCOBOLを最新化するように設計されていますが、現在このプロセスでは別のステップしか提供していないため、あるプログラミング言語から別のプログラミング言語への完全な翻訳を完了するには、もう1つのステップが残っています。 「ある言語から別の言語への翻訳はAIにとって根本的な課題であり、このレガシーコードの一部を最新のプログラミング言語で機能させるために取り組んでいます」と彼は付け加えました。



それまでの間、IBMの高度なAIを利用したツールは、いくつかの新しい機能を提供します。 Mono2Microの場合、このツールは最初に古いコードを分析して、その中に隠された接続を明らかにします。たとえば、多数の呼び出しと相互接続を含む、基盤となるビジネスロジックのさまざまなコンポーネントです。アプリケーションアーキテクトが自分でそのようなタスクを完了することは非常に困難で時間がかかります。



Mono2Microは、AIベースのクラスタリング手法を使用して、類似したコードをグループにグループ化します。これにより、コードのグループがどのように相互作用するかがより明確に示されます。 Mono2Microは最初にコードを受け入れ、次にソースコードとオブジェクトコードを静的(実行前にプログラムを分析することにより)と動的(実行中にプログラムを分析することにより)の両方で解析します。



次に、このツールは、Javaベースのモノリシックプログラムとそれに関連するビジネスロジックおよびユーザーインターフェイスをマイクロサービスに変換します。モノリスを特定の機能を備えた個別のマイクロサービスにリファクタリングすると、外部の動作を変更せずにアプリケーションの構造を変更することで、モノリシックプログラムのときにソフトウェアに存在していた接続が最小限に抑えられます。



AMAツールキットの目的は、レガシー言語(COBOL、PL / I)で記述された以前に開発されたアプリケーションの分析とリファクタリングの両方を行うことです。 AMAツールキットに関しては、ソースコードの静的分析とアプリケーションの構造の理解を組み合わせて、レガシーアプリケーションを表すグラフを作成します。このグラフベースのアプローチをディープラーニング手法と組み合わせて使用​​すると、データの永続性が促進されます。





画像:

Mono2MicroインターフェースのIBMResearch画像




IBMのAI戦略は、入力がコードであり、分析のパラメーターがボリュームと複数の値である機械学習の主要な課題に対処します。重要なレガシーアプリケーションには通常、数十万から数百万行のコードが含まれています。これに関連して、このような大量のデータに機械学習(ML)手法を適用することで、埋め込みの概念をより効率的にすることができます。



これらの埋め込みレイヤーは、データを数値に変換する方法です。埋め込み方式の利点は、多くの可能な値を持つ大量のコードに数式を割り当てることができることです。同じことが、たとえば、ベクトル単語の埋め込みを使用して自然な人間の言語を数値に翻訳するときにも起こります。これは、コード分析と関係があるため、グラフのコンテキストでも実行されます。



「埋め込みレイヤーがないと、効率的な機械学習システムのように見えるものを入手するのが難しいため、埋め込みレイヤーは素晴らしいです」とFuller氏は述べています。

彼は、コード分析の場合、機械学習システムは、アプリケーションの機能コンテンツを複製することにより、リファクタリングされたレガシーアプリケーションにマイクロサービスを提供するたびに優れていると付け加えました。



フラーノート:「現時点ではまだ息を吐くことはできませんが、作業の70%は遅れています。つまり、重要なアプリケーションをマイクロサービスアーキテクチャにリファクタリングすることにはるかに近づいています。」



All Articles