前回の記事において、「IBM i(AS/400)」の旧来型アプリケーションはIBM i上でオープン化できることを紹介した。今回は更に一歩進めて、旧来型アプリケーションと新しいアーキテクチャで作られたIBM i内外のアプリケーションを連動したモダナイゼーションや、クラウドとの連携による更なる進化方法などを紹介する。
システムをつなぎ合わせるAPIの重要性
「APIエコノミー」という概念が語られだして久しくなった。これは、ネットワークを介してさまざまな企業が提供する機能と自社独自の機能をつなぎ合わせ、新しいサービスを構築できるようになったことで生まれたものである。
技術者ではない方は、企業のウェブサイトにおけるオフィス所在地の案内に、「Google Maps」の機能が組み込まれていることを思い出してほしい。日々利用しているスマートフォンのアプリケーションも、その提供会社が独自に作った機能だけでなく、ネットワークを介して他の企業が作った機能のAPIと連携して作られている。このAPIの利用は日々発展と応用の進歩を続け、企業内システムの新規構築においてもデジタルトランスフォーメーション(DX)化を背景に標準となりつつある。
前回までの記事でIBM iのリソースを評価後、スリム化や機能分割でモノリシック(1枚岩)な作りを解消し、それらをIBM i上でオープン化すること、特にRepresentational State Transfer(REST)APIに重きをおいていたのは、この理由がある。
また、前回の記事ではIBM iに標準搭載のアプリケーションサーバーである「Integrated Web Service Server」(統合アプリケーションサーバー)で既存の「RPG」や「COBOL」といったプログラミング言語をRESTの呼び出しに対応したサービスにできることを紹介したが、現在はプログラム抜きでデータベースをRESTで呼び出しできるように設定でき、更なる進化を続けている。新規のサービスアプリケーションは「Python」や「Node.js」で開発可能であり、IBM iのままでオープン系プログラマーがシステム構築できる基盤が実現している。
これらのことから、長年培ってきたIBM iのリソースはオンプレミスのAPIとなり、同じくオンプレミスのオープン系システムのAPIやSaaS(Software as a service)、取引先のAPIなどとつなぎ合わせてビジネスの変化に柔軟かつ迅速に対応できるシステム開発が可能となる。
また、APIをつなぎ合わせて実行できるシステムを作るということは、分散した機能実行を自動化できるプログラムを作成できることになる。近年、ロボティックプロセスオートメーション(RPA)を用いた画面インターフェースにおける人手の作業の自動化が着目されているが、その必要がなくなることも意味する。
以上のことは、メインフレームやオフコンで稼働するレガシーアプリケーションを、前述のAPIを活用しない同じような作りのモノリシックなオープンシステムに変換、書き換えてオンプレミスサーバーやクラウドで運用しても、モダナイゼーションやDX対応にはならないということも示唆している。