Adempiereを試してERPの常識・仕組みを体得しよう:業務アプリの常識をJavaオープンソースで身につける(1)(2/2 ページ)
Java言語を使って構築されることが多い、オープンソースの業務用ソフトウェア/アプリケーションを紹介しながら、企業で行われる業務処理の常識を身に付けていく連載
Adempiereのアプリケーション構造
Adempiereのメニューから表示できる300個以上のウィンドウ、ウィンドウ内のタブ、タブ内のテキストエリアなどの項目(フィールド)は、コード(プログラム)として書かれているのではなく、すべてデータベース内に保存されています。
これらのデータを使って、画面にどのような項目を表示するかを決定します(Adempiere内のすべての要素が、この方法で表示されているわけではありません)。この構造によって、項目の修正やカスタマイズ、新機能の追加などが効率的に行えます。
Adempiereで実装されているERPの機能を、一部だけ残して無効にして(または、すべて無効にして)、業務管理システムの基盤として使うこともできます。
■構造の要「Application Dictionary」とは
Adempiereには、「Application Dictionary」というフレームワーク(のようなもの)があります。Application Dictionaryとは、Adempiereで表示するウィンドウやタブなどの情報をデータベース内に格納したデータの集まりです。
また、Application Dictionaryは、アプリケーション構成を定義したデータの集まりを表す言葉で、正確にはフレームワークの名前ではありません。画面(ウィンドウ、タブ、フィールド)を描画する部分も含めた機能に名前を付けるとしたら、「Adempiereフレームワーク」「Compiereフレームワーク」という名前になるのではないかと思います。
■Strutsなど基盤となるフレームワークとERPに特化したフレームワークの違いは?
Strutsは、WebアプリケーションのMVC構造を実現することを主な目的としているフレームワークです。一方、Adempiereフレームワーク、Application Dictionaryは、業務管理に特化した機能を簡単に構築することを目的としています。
このように目的の違いがありますが、この2つは排他的なものではありません。受け持つ階層(レイヤ)が違うということもできます。SpringフレームワークとStrutsの両方を使ってアプリケーションを構築できるように、AdempiereのWeb画面をApplication Dictionary+Strutsで構築することも可能です。
■JavaScript/Ajaxフレームワーク「ZK」でWeb用UIを構築
AdempiereのクライアントUIは、当初JavaのGUIアプリケーションだけでしたが、Adempiereコミュニティによって、「ZK」というJavaScript/Ajaxフレームワークを使ったWeb用UIが追加されました。この2つのUIは、同じシステム内で同時に使えます。
■ほかのオープンソースフレームワークとの対応表
アプリケーションの構成には、上記Application Dictionaryというフレームワーク(のようなもの)もあります。もし、ZKのAdempiereをStrutsやSpring(DI)を使って構築しようとすると、表のようになります。
Adempiere Web用UI(既存) | Adempiere Javaクライアント(既存) | MVCのコントローラにStrutsを使う場合 | ビジネスロジックにDIを使う場合 | DBアクセスにO/Rマッピングを使う場合 | |
---|---|---|---|---|---|
View | ZKフレームワーク | Adempiere独自(クライアント) | Struts | ZKフレームワーク | ZKフレームワーク |
Controller(コントローラ) | |||||
Model(ビジネスロジック) | Adempiere独自(サーバ) | Adempiere独自(サーバ) | Spring(DI) | Adempiere独自(サーバ) | |
DBアクセス | Adempiere独自(サーバ) | Hibernate | |||
DBMS | OracleまたはPostgreSQL(Application Dictionaryのデータが保存されている) |
Adempiereを使う4つの利点
■【1】無料で試用できる
オープンソースでない既存のERPパッケージは、企業向けのソフトウェアということもあり、体験版などを手軽に入手できません。実務でERP導入に携わっているエンジニアやユーザー企業の担当者でなければ、ERPに触れる機会はあまりないのではないかと思います。
これに対してオープンソースのERP、例えばAdempiereは、GPL(GNU General Public License)で配布されていて、ソフトウェア本体をインターネット上から入手して、インストールして自由に使用できます。
■【2】企業の業務の広い範囲をカバー
すでに説明したとおり、Adempiereには、販売管理や購買管理、取引先管理、在庫管理、会計処理などの機能があり、企業の業務の広い範囲をカバーしています。
■【3】画面の追加が容易
Adempiereは、すでに説明したとおり、各画面の情報をデータベースに保存しています。ウィンドウやタブ、フィールドなどの情報をApplication Dictionaryに追加することで、データの登録・編集を行う画面を非常に簡単に作成できます。最小構成の画面ならば、慣れてしまえば10分もかからずにウィンドウを作成できると思います。
具体的には、「ウィンドウの追加方法」を参照してください。
■【4】Java言語でカスタマイズができる
どんなに高機能なERPでも企業の業務に完全に適合させようとすると、必ずカスタマイズが必要です。Adempiereはオープンソースであり、柔軟なアプリケーション構造を持っています。
Adempiereは、Javaで書かれていて、内容もそれほど難解ではないので、おそらくJavaでの開発経験が2〜3年程度あれば、ソースコードを読んで理解できるのではないかと思います。Eclipseなどのデバッグ機能で、Adempiereのコードをステップ実行して動作を確認できるのも魅力です。
Adempiereを使ってみるには
Adempiereのソースコードは、SourceForge.netにあるAdempiereプロジェクトのソースコードリポジトリから入手可能です。Adempiereのリポジトリに関する情報は、「SourceForge.net: ADempiere ERP Business Suite - Develop」に書かれています。
ソースコードの取得方法やEclipseでのデバッグ、ソースからのビルドなどについては、「チェックアウト方法」「デバッグ方法」などに書かれているので、参照してください。
ERP構築に、なぜオープンソースを使った方がいいのか
ApacheやLinux、PostgreSQLなど、すでに普及しているオープンソースは、ソースコードが公開されていても、configファイルの設定変更などで目的を達成できることが多いため、独自にソースコードを書き換えて使う人はあまりいません。
これらのオープンソースは、大多数の人にとっては、ソースコードが公開されていることよりも、無料で使えることに意味があります。しかし、ERPなどの業務管理ソフトウェアでは、カスタマイズのためにソースコードを書き換える必要性があり、また、オープンソースだと書き換えることが比較的簡単にできることが利点となるでしょう。
ERPは、非常に広い範囲の業務をカバーするシステムです。もし、ERPを一から自力で構築しようとすると、数年間の開発が必要でしょう。特殊な業務を行っていて、既存のERPではまったく業務に適合しないという企業ならば、独自のERPを構築することもあるかもしれません。しかし、そうでないのならば、既存のERPパッケージを利用する方が費用を抑えられます。
オープンソースのERPは、「オープンソース=ソースコードが公開されている」という、本当の意味でのオープンソースの価値があるのではないかと思います。Adempiereに興味を持っていただけたら、ぜひ使ってみてはいかがでしょうか。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- 中堅・中小企業のためのERP徹底活用術 第1回 全社の営業マインドを変えたERP
- 中堅・中小企業のためのERP徹底活用術 第2回 毒にも薬にもなるERPの“ベストプラクティス”
- 中堅・中小企業のためのERP徹底活用術 第3回 自主性があればERPで「見せる化」も実現可能
- 中堅・中小企業のためのERP徹底活用術 第4回 コア業務を認識すれば、ERPはもっと安く導入できる!
- 中堅・中小企業のためのERP徹底活用術 第5回 そのERPとBI、本当に使いこなせますか?
- 中堅・中小企業のためのERP徹底活用術 第6回 大企業のまねをするとシステム構築・運用は失敗する
- 中堅・中小企業のためのERP徹底活用術 第7回 業務破壊の地雷原、野放しのExcelシートをなくそう
- 中堅・中小企業のためのERP徹底活用術 第8回 野放しのExcelシートが、ERPを台無しにする
- 中堅・中小企業のためのERP徹底活用術 第9回 「今だからできること」もある。復興こそ長期的な展望を
- 中堅・中小企業のためのERP徹底活用術 第10回 基幹系へのクラウド活用、そのメリットと落とし穴
- ERPリノベーションのススメ 第1回 ERPはフロントシステムから見直せ!
- ERPリノベーションのススメ 第2回 “割り切り”がERP再生のコツ
- ERPリノベーションのススメ 第3回 ERPで「見える化」も実現!
- ERPリノベーションのススメ 第4回 マスタデータ整備が、ERP活用の大前提
- ERPリノベーションのススメ 第5回 “いいとこ取り”して、ERPをもっと生かそう
- ERPリノベーションのススメ 第6回 不況に乗じて“勝てる”コスト構造を構築せよ
- ERPリノベーションのススメ 第7回 いま、ERPを買うべき理由
- ERPリノベーションのススメ 第8回 ERPの“事業仕訳け”でIT予算をもっと有効に!
- ERPリノベーションのススメ 第9回 クラウド時代に向けて、情シスの在り方を見直せ
- SAPで実現するIFRS対応 第1回 SAPユーザーがIFRS対応で考えるべきこととは?
- SAPで実現するIFRS対応 第2回 SAPのIFRS対応クイック・ソリューションを見る
- SAPで実現するIFRS対応 第3回 ERPのIFRS対応 成功へのシンプルな必須条件
- SAPで実現するIFRS対応 第4回 公開! SAPを使った業界別IFRS対応事例
- ERP導入プロジェクト失敗の法則 第1回 ユーザー部門が“抵抗勢力”になって失敗!
- ERP導入プロジェクト失敗の法則 第2回 ERP導入プロジェクト体制作りにおける“誤解”で失敗
- ERP導入プロジェクト失敗の法則 第3回 ERPパッケージと導入業者の選定で失敗
- ERP導入プロジェクト失敗の法則 第4回 ERP導入フェイズで、社内理解が得られずに失敗
- ERP導入プロジェクト失敗の法則 第5回 システム稼働するも、安定運用できずに失敗
- ERP導入プロジェクト失敗の法則 最終回 ERP導入効果が見えず、アップグレードもできずに失敗
- ミドルサイズERP大研究 第1回 中堅・中小企業にとってのERPの意味と効用
- ミドルサイズERP大研究 第2回 中堅・中小企業がERP導入に成功するためには
- ミドルサイズERP大研究 第3回 中堅・中小企業におけるERPパッケージ選びのポイント