メニューボタン
IBMiコラム2025.12.24

IBM i のウンチクを語ろう:その114
- Code AssistantからProject Bobへ -

安井 賢克 著

皆さん、こんにちは。正式発表前の意向表明は必ずしも当初の想定のままに実現されるとは限らない、という事例の一つだと言えるでしょう。だからと言って180度転換したわけではなく、むしろ強化版を提供するべく前向きな見直しが図られた結果だと私は考えています。これまでの発表経緯を辿ると、2024年10月に「code assistant for RPG」の開発意向表明がなされたのが発端でした。その後2025年5月のIBMイベント「IBM THINK 2025」では「IBM watsonx Code Assistant for i 」(以降「WCA4i」)と公式名称がお披露目されましたが、同年10月の「IBM TechXchange 2025」では「Project Bob」へと発展・拡張されています。すなわちIBM i 用のCode Assistant、ないし「コーディングの補佐役」と名付けられた機能が日の目を見ることはない、ということです。

私自身その後の情報収集に努めてきたのですが、明らかなのは単なる名称の変更ではないという点です。スケジュールやコストなどを含めた詳細情報は公式には未発表ではあるものの、当コラムではProject BobがCode Assistantとは何がどう違うのかを探ってみたいと思います。これまでに私自身が開発部門から見聞きし、YouTubeに投稿されているデモ動画(英語)から理解した内容に基づいています。なお、プロジェクトの進捗に応じてだと思いますが、当コラム公開時には状況が少々変化している可能性があることをあらかじめお断りしておきます。

そもそもWCA4i はどのような機能を提供する想定だったのでしょうか。ベータ・プログラムの使用感を第112回の当コラム「IBM watsonx Code Assistant for i ベータ版に触ってみた」で報告させていただきましたように、一言で表現するならばコーディング支援が主な狙いでした。そして当初は既存プログラムを理解・説明する機能を利用可能にし、その後はプログラムの生成、テスト・プログラムの生成、リファクタリング、変換といった機能群を実現してゆく構想が描かれておりました。念のためリファクタリングとは、プログラムの可読性と保守性を向上させるために、機能は変更せずに内部構造を変更・整理することを言います。

IBMのプレスリリースでは、Bobを「Your AI partner for faster, smarter software development」、すなわち「より迅速でスマートなソフトウェア開発のためのAIパートナー」であると表現しています。パートナー(協力者)ですから、WCA4i のAssistant(補佐役)よりも一歩踏み込んだ存在です。例えるならば、WCA4i は一つ一つの作業指示をもらわなければ動けない受身的な新入社員であるのに対して、Bobは課題を受け取れば自ら手順を決めて必要なツールやシステムを駆使して主体的に動く中堅社員を目指す、といったところでしょうか。これは生成AIを一歩進めたエージェントAIの考え方だと言えそうです。そしてパートナーとしての位置付けをより明確にするために、擬人化されたBobというキャラクタをプロジェクト名に選んだのでしょう。後日の正式発表における名称はわかりませんが。

もう少し詳しくProject Bobの位置付けを探ってみましょう。開発部門の説明を聞くと、IBM i 市場のサーベイデータを参照することで課題を認識し、Bobが果たすべき役割を決定したことがわかります。対象となったのは、米Fortra社によるレポート「2025 IBM i Marketplace Survey Results」です。私もこのコラムで何度か引用したことがあるものです。市場を知ってソリューション開発につなげるというプロセスは、IBM i の開発部門にとっては正攻法であり、伝統的な取り組みです。なお、当コラム執筆時点で新たなサーベイを実施中ですので、年明け早々には2026年版が公開されるものと思います。

レポートの中で注目するべき個所は、IBM i ユーザーが抱える課題を取りまとめた、「3. IT Initiatives & Trends」の中の設問「What are your top 5 concerns as you plan your IT environment?」(IT環境を計画する上で優先的に取り組むべき5つの課題は何ですか)に対する答えです。トップはサイバーセキュリティ77%、その後IBM i スキル60%、アプリケーションのモダナイズ57%と続き、やや離れてAI・機械学習30%が挙げられています。セキュリティについては、バージョン7.5におけるシステム値QSEQURITY=20の廃止、7.6では統合MFAのサポートなど、製品側での継続的な強化が図られています。アプリケーションについては、IBM i のスキル要員を確保するのが容易ではない中で、既存の古いアプリケーションをモダナイズしなければならないが、AIが効果的な手段になるのかもしれない、といったユーザー側の思惑が表れているようです。

念のためにアプリケーションはどのようにして作られたものなのか、「2. IBM i in the Data Center」の中の設問「Which business applications are you running on IBM i?」(IBM i 上で稼働させているビジネス・アプリケーションはどのようなものですか?)の回答を見てみましょう。複数選択があり得るので計算してみると全選択肢の合算値は149%になるのですが、内製(In-house written: 70%)ないし外注(Other-write in: 28%)によって個別に開発されたアプリケーションの合計値は98%ですから、全体のざっと2/3を占めています。その後はInforやOracleなどのERP製品が10ほど続きます。要するにほとんどのケースにおいて、モダナイゼーションはパッケージ・ベンダ頼みではなく、ユーザー自らが取り組まなくてはならないのですね。Project Bobが解決しようとしているのがまさにこの点です。

IBM i の主力開発言語がRPGであることは、先のFortra社のレポート「3. IT Initiatives & Trends」の設問「Which development language do you use today for new development on IBM i ?」(現在、IBM i での新規開発にどの開発言語を使用していますか?)への回答を見ても明らかです。トップはRPGで91%のシェアを占めています。そのテクノロジー世代、古い方からRPG/400(RPGⅢ)、固定フォーム型ILE RPG(RPGⅣ)、フリー・フォーム(FF) RPGとある中で、特に日本において最もシェアが高いのは、最も古いRPG/400という結果がアイマガジン社のサーベイ結果に表れています。FF RPGが登場したのは2013年であり、それ以来日本IBMも私達ビジネス・パートナーもこの新しいRPGのメリットを訴求し続けてきたはずなのですが、市場のトレンドを動かすには至っていないと言わざるを得ません。

私個人の経験に照らしてみると、多くのお客様は将来性や他のオープン系言語との親和性などFF RPGのメリットをご存知ないわけではありません。ただし従来から存在している手段を駆使したとしても、作業負荷やリスクを考慮すると移行に踏み切れない、得られるメリットは労力に比べて十分に大きいという確信を持てない、と感じているのが実情のようです。Project Bobが備えるとされているリファクタや変換機能は、このようなケースにおいて有効だと考えられます。そして私の理解が正しければ、とは言っても明らかになるのは公式発表においてですが、開発部門は最初の段階からこれら機能を利用可能にするようです。

RPGプログラムと言ったところで、周辺にはCLやDDSなどの関連ファイル類、RPGそのものについてもサブルーチンやネイティブのレコード・レベル・アクセス、文字数制限ゆえの暗号のような変数名などが含まれています。これら全てに注意を払い改善しなければ、モダナイズされた、IBM i 未経験者でも取り組めるプログラムにはなりません。Project Bobはこれらに対する解の提供、少なくともそうなる事を目指しています。

実際にBobは利用可能になっていないのに、何故そのように言えるのか、と懐疑的な方もいらっしゃるかもしれません。そこで参照いただきたいのは、開発部門がYouTubeにアップロードしたデモ動画です。YouTubeトップページから「@ibm-bob」をキーワードに検索してProject Bobの動画一覧を確認するか、直接Project Bob関連動画にアクセスするリンクをクリックしてみてください。音声解説付きの40本近くの動画を視聴できます。ちなみに資料も解説音声も英語なのですが、字幕ボタンで字幕表示を有効化してから、設定ボタンで字幕オプションとして「英語(自動生成)>>日本語」を選択すれば、解説については日本語で読むことができるようになります。私自身はこのオプションを初めて使ってみたのですが、翻訳精度は非常に高いと感じました。

お薦めを選定するのは難しいのですが、私が興味を持った動画の一つは「Bob Transform OPM to ILE, create procedures, Fixed to Free, and update variables to be self d・・・」(Bobはプロシージャ化と同時にOPMをILEに、固定形式をフリー・フォームに、変数名を説明的なものに変換する)です。ちなみにOPMとはILEと対比されていることから想像できるように、RPG言語で言えばILEの前、すなわちRPGⅢないしそれ以前の古いバージョンのことです。動画では一連の操作を通じて、BobがSystem/36用に開発されたRPGⅡプログラムをFF RPGへと変換する様子がわかります。もう一つは、「Generate SQL, RPG and Python Frontend」(SQL、RPGとフロントエンドのPythonを生成する)です。こちらは全く新規に車両管理アプリケーションを構築します。Bobが生成できるのはRPGだけではないのですね。

詳細は動画解説に委ねるとして、文字通り見る見るうちにという感じでアプリケーションができあがってゆくのは、それなりに仕込んだ結果であることは想像に難くありません。なかなかこうはならないにしても、今後のIBM i のプログラミング・シーンが大きく変わってゆく可能性を感じさせるのに十分ではないでしょうか。私自身もここまで完成度が高まっているのかと感心した次第です。

ではまた

あわせて読みたい記事

サイト内全文検索

著者プロフィール

パワーシステム・エバンジェリスト

安井 賢克
やすい まさかつ

2017 年 11 月付けで、日本アイ・ビー・エム株式会社パワーシステム製品企画より、ベル・データ株式会社東日本サービス統括部に転籍。日本アイ・ビー・エム在籍時はエバンジェリストとして、IBM i とパワーシステムの優位性をお客様やビジネス・パートナー様に訴求する活動を行うと共に、大学非常勤講師や社会人大学院客員教授として、IT とビジネスの関わり合いを論じる講座を担当しました。ベル・データ移籍後は、エバンジェリストとしての活動を継続しながら、同社のビジネス力強化にも取り組んでいます。

PAGE TOP