Florida開発の経緯
■ 1990年代から2000年代前半
私どもでは、AS/400基幹システム開発(RPG)に携わって参りました。
■ 2000年代中盤以降
基幹システムのオープン化のニーズが高まり、その対応をいたして参りました。
その対応の中での問題点は、AS/400系エンジニアからビジネスロジックをオープン系エンジニアに継承する方法が確立できていないことでした。
取扱う言語やデータベースの特性の違いからくるプログラムロジックの組立て方の違いが、コミュニケーションを阻害する原因でした。
■ 設計書ツールの開発
AS/400系エンジニアが、設計ツールに詳細設計内容を入力することで、オープン系エンジニアが、プログラムを組むことができる詳細仕様書を生成する変換ツールの開発に取組み、成功しました。
また、設計作業を支援するツールとして、既存のAS/400システムの資産であるDDS RPGソースなどを取り込み、仕様書に変換するプログラムの開発しました。
出来上がるJavaプログラムが、MVC型になるように画面プログラムは、画面制御をビジネスロジックから切り離し(コントローラ)、データアクセスも部品化(DAO)し、ビジネスロジック(モデル)だけを記述することで仕様書の作成が可能になりました。
■ Java生成ツールとして
データベース環境やJavaプログラム作成の工数を削減するために、DDSに基づいて作成されたデータテーブル定義書からRDBのテーブル定義をクリエートする、データアクセス部品(基底部品)の自動生成、論理ファイルの定義からSQLを作成するなどのプログラム自動生成の機能を実装しました。
また、AS/400特性であるサブファイル、ファンクションキーによる改ページ操作などの操作性を継承できる基盤プログラム(Canaveral)を開発しました。
これにより、入力された仕様書より、MVC型のJavaプログラムに変換(自動生成)することができました。(Floridaツール)
仕様書のビジネスロジックを記述する言語をMiami言語と命名しました。
Floridaツールは、Java生成ツールとして、スタートを切りました。
AS/400系のシステムエンジニアとオープン系システムエンジニアのコミュニケーションもMiami言語を通して取ることができます。
■ 2010年以降
RPGの基幹システムは、ERPに置換えられることを迫られながら、ERPを適用できない業種・業務に対して、現行RPGのビジネスロジックを移行できないかというテーマに取組むことになりました。
RPG、CL、DDSソースプログラムを中間言語Miamiに変換する機構を開発することで、RPG toJavaのコンバージョンツールに発展しました。
中間言語Miamiは、RPGスキル、Javaスキルのどちらからでも容易に理解できる言語なので、どちらかのスキルだけで、保守、仕様変更、パフォーマンスチューニングを行うことができます。
■ 2014年
RPG to Java モダナイゼーション専業企業として、株式会社フロリダ を設立いたしました。
■ 2015年以降 Db2 for i をデータサーバーとした移行に成功
国内で初めて、POWER SYSTEMS上で、Linux(アプリサーバー)とiOS(データサーバー)というかどう環境への移行に成功しました。
成功の鍵は、 Db2 for i が、RDBとして強力なPOWERを発揮したことでした。
この実績により、RPGとJavaが共存して運用できることが判明し、RPGをJavaに変換して稼働させた後、DBを Db2 for i から RDBに移行するという段階的なプランが可能になりました。
■ 2020年以降 新稼働環境に対する対応
既に基幹システムのJava化が進み、残ったRPGを現行のオープン系基盤に合わせて移行したいという要望が多くあがりました。
このニーズに対応し、アプリ基盤(Spring、Springboot、JavaEEなど)に対する対応だけではなく、プロジェクト構成に合わせたJavaが生成できるように個別カスタマイズが可能になりました。
また、画面のリッチ化ツール、帳票出力のバリエーションなどUIツールも開発整備しました。
■ 2024年 AIに対する取組み
RPGの分析:個性ある組み方のRPG、難解な組み方のRPGの解析に利用しています。
→ プログラムの構造を把握し、変換不能構造箇所の修正を短縮します。
仕様書(新)、テストケースを作成する場合に活用できます。
変換不能構造の自動化:変換不能構造箇所とその修正パターンを学習させて、自動変換する、修正工数を減らす、取組みをしています。
→ 現在は、変換不能構造と修正方法のマニュアルを蓄積しています。
自動テストとAI:
オプションとして、自動テストツール、AI機能を搭載した自動テストツールによるテストを実施できます。
■ Floridaツールのクラウド化
AWSにプロジェクトごとの変換環境を構築できるようになっています。
クラウド化により、お客様の環境から、Floridaツールを使用できる様になり、少なくなりつつあるお客様のRPG保守要員の方が、自社でJava化をすするというソリューションが可能になりました。