Fresche社、Web UIとAIスマート機能によってX-Analysisを大幅刷新
Fresche Solutions社は先日、広く使用されている同社の影響分析ツール、X-Analysisの新たなリリースを発表しました(Application Intelligenceブランドの下で提供)。この製品は、新リリースに向けて大幅に刷新されました。新たなWebユーザー インターフェースが採用され、人気を博しているAIモデルへの接続機能も追加されています。これにより、AIを活用した、RPGアプリケーションのコード解説およびドキュメンテーション機能が提供されるようになります。
Fresche Solutions 社は、アプリケーション モダナイゼーション事業をグローバルに展開し、IBM i 顧客がRPG、COBOL、およびJavaアプリケーションをレガシーな過去の時代からモダンな現代へと連れ出すのを支援する、数多くの製品およびサービスを提供しています。しかし、レガシー コードを1バイトでも変更、改修、または削除しようとする場合には、IBM i のショップは、アプリケーション内部でどのようなことが行われているのか必ず事前に理解しておく必要があります。そのような場面で実に有用となるのが、新たな名前に変わったApplication Intelligence(またはX-Analysis)製品ということになります。
X-Analysis(Fresche社は2013年に Databorough社の買収 によって取得)は、アプリケーション モダナイゼーション プロジェクトで広く使用され、高い評価を受けているツール スイート製品です。このツールは、クロスリファレンス、ドキュメンテーション、設計情報リカバリー、リエンジニアリング、およびコード生成(EGLおよびJ2EE)などの機能を備え、Fiserv社、Mazda社、Siemens社、およびHalliburton社といった企業がユーザーとして名前を連ねています。
4月に発表されたX-Analysisの新リリースでは、Fresche社は同ソフトウェアの大幅改修に取り組みました。まず、一部のRPGコンポーネントのJavaへの置き換えに着手し、これにより、製品のパフォーマンス向上がもたらされたと、Fresche社CTO(最高技術責任者)のJohn Clark氏は述べています。
しかし、まず、ユーザーの目に留まりそうなのは、ユーザー インターフェースの機能強化かもしれません。すなわち、新たなWebインターフェースや、X-Analysisに自然言語インターフェースを提供する大規模言語モデル(LLM)との統合機能です。
Clark氏によれば、新たなReactベースのフロントエンドは、この製品の2つの現行インターフェース(Rational Developer for IBM i(RDi)顧客によって使用されているEclipseベースのプラグインと、SEUユーザーの間で幅広く使用されているグリーンスクリーン インターフェース)を補完し、もうひとつの選択肢を提供するということです。
VS Codeユーザーにとって作業がしやすくなることに加えて、新たなWeb UIは、ユーザーがプレーン イングリッシュで質問することによって製品とやり取りすることを実質的に可能にする、新たなAIベースの自然言語処理(NLP)機能も備えています。
新たなAI活用ドキュメンテーション機能は、データベース ファイルおよびプログラム ファイルのマッピングを行ったり、コード片にビジネス ルールを定義したりする機能など、X-Analysisの既存のドキュメンテーション機能を補完します。このソフトウェアは、 OpenAI または AnthropicからLLMへの接続機能を備えており、これにより、ユーザーは自然言語のコマンドを使用して、実質的にはX-Analysis製品を駆使してその影響分析機能を活用することが可能になるとClark氏は述べています。
「たとえば、(英語で)「このプログラムはどのような処理を行うのか説明してください」と尋ねてみることができます。あるいは、コードをハイライトして「このサブルーチンはどのような処理を行うのですか」と尋ねることもできます。そうすると、ダイアログ ボックスに、質問に対する回答が英語で示されるのです」と彼は述べます。

Fresche社は、XAの機能を変更したのではなく、Webブラウザを通じて既存機能により簡単にアクセスできるようにしたのだとClark氏は述べています。たとえば、ユーザーが既存製品でファイルの関係性を調べているとしたら、そうした情報はブラウザに表示できるようになっているため、情報にアクセスしやすくなったと言えるでしょう。また、その情報は、外部での分析用にExcelまたはテキスト ファイルに出力することもできます。
「XAの情報とLLMの情報を組み合わせて使用することで、コードの内容を要約して、コードについての意味ある説明を顧客に提供することができます」と彼は述べています。「より簡単にアクセスできるようになりましたが、それとともに、多くのケースでより迅速に処理できるようにもなっています。Eclipseプラグインを使用した場合に比べて、最大で10倍、迅速に処理できるようになりました。」
Clark氏は、RPGアプリケーションの保守を担当するプログラマーだった頃には、手当たり次第にありとあらゆるツールを使用したと述べています。しかし、何百万行もの長さのコードであっても、座って見ているだけで、コードがどのように機能するか理解できるとしたら、それに取って代われるようなものはなかったでしょう。
「ドキュメンテーション機能は、一部のビジネス ルールについてはすでにあります。しかし、これは、その機能をまったく新しいレベルに引き上げます」とClark氏は述べています。「何年も前にこのようなものがあったらよかったのにと、つくづく思います。当時は、そのような業務に就いていたため、非常に扱いにくいプログラムについて把握する必要があったのです。常に注意を払う必要がありました。」
IBM i 市場で入手可能なクロスリファレンスまたは影響分析ツールは他にもあるものの、X-Analysisが提供している幅広い機能をすべて提供するツールはほとんどないとClark氏は述べています。
「X-Analysisには、ユーザーが、彼らのシステムをシステム レベルで分析するのにも本当に役に立つ付加的な機能がいくつかあります。つまり、扱いやすい小さな部分に分割することができるわけです」と彼は述べます。「そのようなツールは、より初歩的な影響分析ツールでは利用できないものもあります。」
Clark氏によれば、具体例を挙げると、X-Analysisの「アプリケーション エリア」と呼ばれるコンポーネントを使用することで、開発者は、彼らのレガシー コードがどのような構造になっているのか理解して、モダンなマイクロサービスベースの方式で機能を複製できるようなやり方でビジネス ロジックを再構築するのに役立てることができるということです。これは、多くのモダナイゼーションの取り組みで有用だったようです。
XAはAIを使用してコードのドキュメント化に役立てることができますが、Fresche社が使用しているAIは、RPGを生成しません。この点は、IBMがRPG向けに開発している新たなコーディング コパイロットと異なるところです。 来月リリース 予定のその製品は、IBM i コミュニティによって提供されているRPGコードを特に理解するようにトレーニングされているIBM watsonxモデルを基盤としています。
「私たちは、彼らとまったく同じ道筋を辿ってきたわけではありません」とClark氏は述べています。「しかし、現状としては、これは私たちの差別化要因でもありますが、私たちには、そうしたシステム内での関係性に関するナレッジがあるということです。したがって、私たちはそうしたナレッジを頼りに、ユーザーのアプリケーションについての情報を提供しているわけです。」
人気のLLMは、見たところ、COBOLについてはさほど苦もなく把握できたように思われるものの、RPGには戸惑っているようだとClark氏は述べています。Fresche社は、同社のラボで、RPGを理解するようにAIモデルをトレーニングしようと試みましたが、大きな成果は挙げられませんでした。同社の経験からすると、AIモデルは、暗黙、データ域、およびサイクルといった、RPGのコア概念を理解するのに苦労していたと彼は述べます。
Fresche社は、ラボでのLLMの試みを続けているものの、X-Analysisで採ってきたAIアプローチは必ず報われると楽観的です。「まだこの製品を世に出したばかりで、ユーザーの反応を見守っているまさに初期段階です。そのうち彼らは、まったく思いも寄らない形でそれを使用するようになるのだろうと思います」とClark氏は述べます。