はじめに
Mendixでアプリを作成する時、新規に作成する場合以外にも、既存の古いアプリをMendixプラットフォームに乗せ換えたいという場合があると思います。古いアプリは、ExcelやAccessで作られていたり、VBやJavaだったりするかと思います。システムの移行はどの場合も大変ですが、ローコードプラットフォームのMendixの場合も同様です。移行について検討してみましょう。
システム移行について
システムが長く使われていればいるほど、正式な設計書などのドキュメントが残っていなかったり、コードには複雑なロジックが埋め込まれていたりします。ハードウェアやミドルウェアなどの実行環境のサポート終了に伴って移行が必要になった時に、システムの中身はブラックボックスでも、ユーザーは現行踏襲で、などと言ったりします。しかし、Mendixに移行する場合、既存のリソースはほとんど役に立ちません。Mendixなどのローコードプラットフォームは独自のアーキテクチャで構成されているので、既存のロジック、画面定義などは使うことができません。
これはあくまで捉え方次第であり、DX時代に既存のリソースに足を引っ張られる必要はなく、新しいビジネスモデルが要求されているのだからシステムも新しくすべきというふうに捉えることもできます。
システム移行の流れ
Mendixへのシステム移行に既存のリソースがほとんど使えないと言いましたが、比較的安定しているデータモデルについては活用することができます。既存のデータモデルを分析して、新しいビジネスモデルに向けて見直しを行います。Mendixのようなローコード開発ではモデルの分析などいわゆる上流工程の重要性が高まります。
ERMaster
ERMasterはオープンソースのデータベース設計ツールです。歴史のあるツールですが、最近でも記事が記事が書かれているほど人気があります。EcliplseベースでMac、Window、Linuxなどで利用できます。
(参考サイト)
- Eclipse + ERMasterで既存DBからER図をリバース
- Pleiades(Eclipse)にERMasterをインするトールする方法
- ER図を作成するためのツール「ERMaster」をインストールしてみた
リバースエンジニアリング
ERMasterを使用して既存アプリのデータベースからデータベース定義書やER図を作成することができます。既存アプリから作成したデータベース定義書やER図を作成した後に、新しいビジネスモデルの視点でデータモデルを見直して、新しいデータベース定義書やER図を作成します。
大まかな流れ
既存アプリの分析 → データモデル見直し → 新しいモデルの作成
リバースエンジニアリングのポイント
- 辞書の利用 - ERMasterを使用したリバースエンジニアリング時に辞書を使うと、データベース項目から日本語項目名を生成してくれます。この機能をうまく使うことで、項目名の標準化を効率的に行うことができます。
こちらの サンプル辞書 を参考にしてください。
party,取引先
party_acctg_pref_and_group,取引先会計設定およびグループ
party_and_geo_point,取引先および位置地点
party_and_group,取引先およびグループ
party_and_person,取引先および個人
party_and_user_login,取引先およびユーザログイン
party_and_user_login_and_person,取引先およびユーザログインおよび個人
party_attribute,取引先属性
...
abbrev,略
abbreviation,省略
about_content_id,コンテンツIDについて
acc_dep_gl_account_id,減価償却累計GL勘定
acceptance_condition,受付状態
accept_coupons,受付クーポン
..
- Excelテンプレート - Excelテンプレートを使用してリバースエンジニアリングしたデータベース設計からデータベース定義書を作成することができます。
サンプルExcelテンプレート はこちら。
Mendixアプリ作成
Mendixはスプレッドシートからアプリを作成することができます。ERMasterで作成したデータベース提議書のExcelを編集してこのインプットに用いることができます。