板倉製作所 オフコン(AS/400)刷新プロジェクト — 移植完了のご報告

自動車部品メーカー 板倉製作所 様の基幹業務システムは、長年 オフコン(AS/400) 上で動いてきました。受注・外製・出荷・号口・試作・工機・材料金型など、ものづくりの根幹をこの 1 台が支えています。この古いコンピュータと、その上で動く独自プログラムを 今のしくみ(Web アプリ+データベース)へ作り替える のがこのプロジェクトです。

このたび、お預かりした全業務プログラムの「作り替え(移植)」と、業務データを新システムへ移すための「変換のしくみ」づくりが完了 しました。本ページでは、専門用語をなるべくかみ砕いて「① 何があったのか」「② どう作り替えたのか」「③ どこまで完了したのか」「④ 本番稼働へ向けて残ること」をご報告します。

現状: 旧システムの全 11+1 サブシステム(受注・外製・出荷・号口・試作・技術情報・組付・支給品・材料金型・工機・システム管理)を新システムへ 移植完了。業務データを新しいデータベースへ移す 変換のしくみ(全 12 業務領域)も整備完了 しました。残るは 実データでの並行突き合わせ(最終検証)と本番切替 の一段階です。

旧オフコン(AS/400)から、新しい Web + データベースへ。業務ロジックの移植と、データ変換のしくみづくりが完了

🔎 移行カバレッジ・マップを公開しました — どの旧プログラムが新システムのどこへ対応したかを、一画面で見える化した対話型サイトです。サブシステム・プログラム単位で「何が・どこへ・どの状態か」をその場で確認できます。 https://migration.fab-forward.co.jp/(板倉製作所 — AS/400 → PMS 移行カバレッジ)

🖥️ 移植した新システムを、いまこのアドレスから実際に操作できます(デモ環境) — ログイン ID とパスワードは下表のとおりです。 https://itakura.fab-forward.co.jp/(板倉製作所 PMS — デモ環境 / 社員コード E001・パスワード password) → ログイン方法・おすすめコース


ひと目でわかる到達点

指標結果
お預かりした資産1,477 メンバー / 228,719 行(全数調査済み)
移植対象サブシステム全 12 領域 すべて移植完了
自動テスト5,193 件 が常時グリーン(265 ファイル)
逸脱・残課題の記録195 件(番号付きで全件管理)
データ変換のしくみ全 12 業務領域ぶん整備・自動照合済み
残り実データ並行検証 → 本番切替(最終ゲート)

背景 — なぜ作り替えるのか

オフコン(AS/400)は堅牢ですが、部品供給・保守の終焉、操作できる人の高齢化・退職、外部システムとの連携の難しさ という共通の課題を抱えています。板倉製作所様でも、システムの中身を知る方への引き継ぎが難しくなりつつありました。

6/11 に オフコンの引き継ぎ(仕組み・データ・プログラムの受け取り)を実施し、20 年以上積み上がった業務プログラムを丸ごとお預かりしました。方針は明確です — 元のプログラムこそが唯一の正解 とみなし、その挙動を一行ずつ読み解いて新システムへ移します。仕様書ではなく動いている現物に合わせ、最後は旧システムとの結果突き合わせ(並行検証)で正しさを担保します。

① 何があったのか — 資産の棚卸し

まず、お預かりしたプログラム資産を機械的に全数調査しました。

お預かりしたプログラム資産を全数調査し、使われていない約3分の1を移植対象から外した様子

種類中身本数行数
RPG プログラム業務ロジック(計算・判定・更新の本体)446150,575
CL(制御言語)処理の段取り・起動・連携49043,332
DSPF(画面定義)オフコンの入力画面24920,649
PRTF(帳票定義)印刷帳票のレイアウト335,645
PF(物理ファイル)データテーブルの定義1667,087
LF(論理ファイル)索引・ビュー931,431
合計1,477 メンバー228,719 行

調査からわかったこと:

業務は 12 のサブシステムに分かれており、中でも 受注管理(MENUJ1)は 203 本・44,008 行 と全体の中核かつ最大で、ここを攻略できるかがプロジェクトの山場でした。

② どう作り替えたのか

「読める人がいなくなる前に、機械が読める形にしてから、確実に移す」を徹底しました。手順は毎回同じです。

AIが下書きを作り、人が中身とテスト結果を確認して承認する、品質を保った作り替えの流れ

  1. 全数解析(自動) — プログラムの棚卸し・呼び出し関係・デッドコード判定・データ構造の抽出を、繰り返し実行できるスクリプトで機械的に行います。「どこから手を付けるか」「何が何を呼ぶか」が地図になります。
  2. 画面・テーブルの自動変換 — 旧画面(DSPF)と旧テーブル(PF)から、新システムの画面仕様とデータベース設計図を自動生成します。
  3. 業務ロジックの読み解き(仕様化) — サブシステムごとに、元の RPG プログラムを一行ずつ読み、該当行を引用しながら 仕様としてまとめます。
  4. AI による実装と自動レビュー — まとめた仕様を細かい作業単位に分解し、強力な AI が基盤と見本を作り、安価な AI が個々の作業を自動テスト付きで実装 します。実装後は複数の AI が仕様との一致を相互レビューし、合格したものだけを取り込みます。
  5. 逸脱の全件記録 — 元の挙動から外れた点・元のプログラムに潜んでいた不具合・判断が必要な点は、すべて「逸脱メモ」に番号付きで記録(現在 195 件)。元のバグはあえて元どおりに再現し、その箇所にログを仕込む(後で旧システムと並行運用したときに差が見えるようにする)方針です。勝手に直さないことで、移植が正しいことを証明します。

この進め方の利点は、人手に頼らず一定品質で量をこなせる ことです。受注管理 1 サブシステムだけでも、8 回の波(ウェーブ)に分けて段階的に移植しました。

③ どこまで完了したのか — 全サブシステム移植完了 ✅

12 サブシステムすべての業務ロジックを新システムへ 移植完了 しました。

サブシステム規模(本 / 行)状況
受注管理(MENUJ1)203 / 44,008✅ 完了(8 波・最大の山場)
号口管理(MENUW1)84 / 19,564✅ 完了
試作管理(MENUT1)81 / 14,744✅ 完了
出荷管理(MENUS1)80 / 12,149✅ 完了
技術情報管理(MENUK1)61 / 9,847✅ 完了
マスター保守(MENUM1)45 / 4,804✅ 完了
組付・支給品管理(MENUA1)31 / 6,571✅ 完了
材料・金型管理(MENUZ1)29 / 4,636✅ 完了
外製管理(MENUG1)25 / 3,828✅ 完了
工機管理(MENUB1)14 / 2,337✅ 完了
システム管理保守(MENUX1)22 / 708✅ 完了(大半は OS 標準機能)
利用者認証・権限✅ 完了(ログイン・端末/権限ゲート)

最大の難関だった 受注管理(MENUJ1)は全 8 波を完了 — 見積〜受注入力・号口・受注データ修正・構成展開・出荷組付指示書・組付まとめ・アイシン/デンソー EDI 連携・照会/帳票まで、203 本すべてを移植し終えています。続く試作・技術情報・組付・材料金型・工機・システム管理も、受注・号口と共通の部品を再利用しながら同じループで完了させました。

品質の裏付けとして、新システム側には現在 5,193 件の自動テスト(265 ファイル) が常時グリーンで通っています。移植のたびにこのテストの壁を越えたものだけを取り込むため、後戻りが起きません。

実際に触ってみる — デモ環境

移植した新システムは、いまこのアドレスから実際に操作できます。役割(管理・承認・調達・経理・製造・設計・営業)によって見える画面・押せるボタンが変わるので、複数アカウントで見比べてください。

▶ デモ環境: https://itakura.fab-forward.co.jp/

社員コードパスワード氏名 / 役割デモで見えること
E001password板倉義雄(管理者・経営管理部)全画面・全機能。システム全体を俯瞰し、設定まで操作できる
E002password田中博之(部門長・製造部)見積・受注などの 承認。システム設定以外はほぼ全権限
E003password鈴木洋(調達・調達部)外製発注・受入・仕入先管理 中心
E004password渡辺真弓(経理・総務経理部)売上・入金・支払・月次締め 中心
E005password山本浩二(製造・製造部)工機指示・日報入力 中心
E006password松田真一(設計・技術部)設計№管理・品番マスタ、工機指示の参照
E007password大沢清美(営業・営業部)受注・号口管理 中心、外製・工機は参照のみ

⚠️ 上記はデモ期間中の共通仮パスワードです。本番運用の前に、全アカウントのパスワードを変更します。表示される社員名・取引先名なども、実データ移行(最終ゲート)の時点で実際のものへ置き換わります。

おすすめデモコース(5 分)

  1. E001(管理者)でログイン → メニューから各サブシステム(受注・外製・号口・出荷・請求など)を開き、移植した画面が一通りそろっている ことを俯瞰
  2. E003(調達)で入り直す → 外製発注・受入の画面が中心に見え、役割で画面・操作が変わる(権限ゲート) ことを確認
  3. E004(経理)で入り直す → 売上・入金・支払・月次締めの導線を確認

④ データの引っ越し — 「変換のしくみ」も整備完了

プログラムを作り替えるだけでなく、20 年分の業務データを新しいデータベースへ移す「変換のしくみ」 も用意しました。業務領域ごとに「旧データ → 新データ」の変換ルールを定め、変換結果が元と一致するかを 自動で照合(リコンサイル) できる状態にしています。

旧データベースから新データベースへ、業務領域ごとに仕分けしながらデータを移す変換のしくみ

整備した業務領域(全 12):

業務領域内容
在庫(Inventory)在庫数・引当・保管場所
外製(Procurement)発注・受入・仕入先
受注(Sales-Order)受注№・号口・得意先
出荷(Shipping)納入実績・出荷
請求(Billing)請求・売上
号口(量産)くりかえし生産・内示
工機(Tooling)治工具
金型(Mold)金型ライフサイクル
材質(Material)材料マスタ
支給品(Consigned)支給部品
試作(Prototype)試作伝票
自動倉庫(Warehouse)棚位置・格納

この段階では 合成データ(テスト用の仮データ) で変換と照合のしくみを完成させています。実際の本番データには、合成データには現れない「クセ」(空欄・1990 年代の日付・桁あふれ等)が潜むため、その検証は次の最終ゲートで行います。

⑤ 本番稼働へ向けて — 残るは「最終検証」と「切替」

移植と変換のしくみは整いました。最後の仕上げは、実データを使った旧・新の突き合わせ(並行検証)と、現場での切替 です。

旧システムと新システムに同じ入力を通し、結果が一致することを天秤で確かめる並行検証

最終検証では、合成データでは見えない実データ特有の項目(空欄、1990 年代日付、在庫の超過引当、採番カウンタの連続性など)を一つずつ点検します。この最終ゲートを通過するまで本番切替は行いません。 旧システムを止めず、同じ入力を両方に通して結果が一致することを確かめてから、安全に切り替えます。

この刷新がもたらすもの

一台の古いコンピュータへの依存から解放され、世代を越えて引き継げる業務基盤へ

検証の考え方 — 「正しさ」をどう保証するか

板倉製作所様の業務はきわめて独自性が高く、仕様書も最新ではありません。そこで 「動いている旧システムが正解」 と割り切り、二段構えで正しさを担保します。


技術メモ

画像はイメージ(AI 生成)。