自由にカスタマイズする

通常、商用ERPでは標準機能のソースコードを修正する事はできません。そのため、カスタマイズがパラメータ設定や、Add-Onプログラムの開発に限られます。しかしオープンソースなら、ソースコードが公開されているので、ソースコードレベルで自由にカスタマイズする事ができます。既存機能を上手に活用しつつ、足りない機能があったり、要件と機能にギャップがある場合には機能を追加開発してより自社の業務に適合した業務アプリケーションを作成する事ができます。

JPiere広告

カスタマイズのコツ

既存機能を上手に活用する

既存機能を上手に活用する事が、開発工数の削減及びトラブル防止にもつながります。既存機能を上手に活用するためにはSIerは既存機能を熟知するための努力を怠ってはいけないと思います。Compiere Distributionには、大手商用ERPほど至れり尽くせりの機能は無いにしても、とても多くの機能を有しています。その機能を1つづつ熟知するのは一朝一夕にできるものではありません。日々の弛まぬ調査及び研究が大切だと思います。

 

エンジンと呼ばれるプログラムを修正する際には細心の注意を払う

エンジンと呼ばれるプログラムは影響範囲が大きいので、モディフィケーションする際には、細心の注意が必要です。できれば、エンジンプログラムはモディフィケーションせずに導入する事を推奨します。Compiere Distributionは通常、エンジンプログラムは修正する事無く導入する事ができるようになっています。

 

業務をシステムに合わせる事も検討する

自由にカスタマイズすると言っても、開発工数の関係上、やりたい事をすべて実装できるわけではありません。時には、業務をシステムに合わせてもらう事も必要です。オープンソースのERPでは、業務をシステムに合わせる部分とカスタマイズする部分を区分する基準が大切になってくると思います。

バージョンアップは気にせずにカスタマイズ!!

バージョンアップを意識してシステム導入を行うと、通常はカスタマイズでModification(標準機能のソースコードを修正する事)が行えません(修正する事自体は可能だが、バージョンアップ時に上書きされて元に戻ってしまう可能性が高い)。Modificationは行わず、ADD-ONプログラムとパラメータ設定だけでカスタマイズを行うことは、オープンソースという特徴を活かせていると言えるのでしょうか?

会社毎にカスタマイズが必ずといって良いほど必要となる業務アプリケーションにおいて、オープンソースのメリットを最大限に享受する方法は、バージョンアップの事は気にせず、導入時に導入企業の要件に合うようにModificationも含めたカスタマイズを自由に施し、その後はビジネスの変化に応じて必要な機能が出てきたら、追加開発してシステムを運用していく方法なのではないでしょうか!?

この考え方は、Compiere Distributionを"スクラッチ開発の基盤(業務アプリケーションの開発基盤)"と考えると理解しやすいと思います。スクラッチ開発するシステムにおいて、バージョンアップされたシステムがどこからか提供されるということはありません。スクラッチ開発したシステムは必要な時に機能を追加開発し運用していくのが普通だと思います。Compiere Distributionをスクラッチ開発の基盤だと考えれば、開発基盤なしにフルスクラッチ開発したシステムよりも、低コスト/短納期/低リスクで高機能な業務アプリケーションを作る事ができるのでCompiere Distributionのメリットを享受できていると言えるのではないでしょうか!!

将来的にどのような機能が追加されるかわからないバージョンアップを期待してオープンソースと言えどもライセンス料を支払ったり、バージョンアップを考慮して、Modificationで簡単に実現できる機能をADD-ONプログラムで開発するのは、正しい判断なのでしょうか?バージョンアップを意識してModificationは行わず、その代わりにADD-ONとして開発された機能は皮肉にもバージョンアップ時には動作確認などの工数発生要因にもなってしまいます。

商用ERPのバージョンアップには通常、多額の費用が必要になるので、商用ERPを導入している企業の多くはバージョンアップをサポート期間切れなどのネガティブな理由でしかたなく行っているのが実情でしょう。商用ERPを使用している企業でさえ本音ではバージョンアップはできれば避けたいと思っているのではないでしょうか?そうであれば、なおさらCompiere Distributionはバージョンアップは気にせずに自由にカスタマイズを施して運用して行った方が良いのではないかと思います。バージョンアップに関わるコストの削減にもつながります。

バージョンアップは気にせず10年・20年と使い続けて、バージョンアップのメリットがデメリットを上回った時に、その時の最新のバージョンで”再構築(データ移行&追加開発した機能の移植 +α)”すれば良いくらいの心持ちで良いのではないでしょうか。導入企業は使い慣れたシステムの最新版で業務システムを再構築するので、社内に蓄積されている活用ノウハウが活かせ、より良いシステムのバージョンアップになるはずです。

【補足説明】ここでバージョンアップは気にしないとしているのは、業務アプリケーション自体の事でOSやミドルウェアの事ではありません。

オープンソースの業務アプリケーション自体のバージョンアップは行わなくても、OSやミドルウェア、Javaを使用している場合はjavaも含めて適時バージョンアップしてメンテナンスしていく事を想定しています。

オープンソースの業務アプリケーションの導入時は、パッケージのメリットを享受して自由にカスタマイズを施し導入し、運用ではフルスクラッチして開発したシステムのようにメンテナンスしていく運用イメージです。

【補足説明】バージョンアップと自由なカスタマイズの両方が可能なiDempiere

「バージョンアップを気にせずカスタマイズする」という考え方は一般的なOSSの業務アプリの活用の考え方で、オープンソースである特長を活かしてソースコードレベルで自由にカスタマイズする事とバージョンアップに追随する事が矛盾した事である事から、それぞれのメリットとデメリットを比較検討して導き出した1つの考え方ですが、OSGiの仕様を取り込んだiDempiereであればバージョンアップに追随しながら自由にカスタマイズする事も行いやすくなっています。

OSGiを活用する事で、iDempiereプロジェクトからフォークする事無く、独自の機能を追加したり既存の機能を修正したりする事ができます。

JPiere(ジェイピエール)は、OSGiを活用し、iDempiereプロジェクトからフォークする事無く、iDempiereの日本商習慣対応ディストリビューションとして独自の機能を追加したり、既存の機能を修正したりしています。そしてiDempiereのバージョンアップに津追随し、iDempiereの不具合修正や機能改善、新機能なども随時取り込んでいます。

参考:JPiere/iDempiereバージョンアップ指針

予算内でどこまでできるか検討する

「自由にカスタマイズする」と言っても、システム導入の費用を見積る際に、欲しい機能をすべて盛り込んだ、積み上げ式による見積もりでは高額になる傾向があります。あらかじめ予算を決めて、その予算内で、どういったシステムが実現可能か(どこまで実装するのか)検討するアプローチも大切です!!

家を例にして例えると…

【理想の家】

理想の場所に、理想の家を建てるとなると、予算オーバーは必至…。 欲しい機能をすべて盛り込んだシステムの見積もりは、このイメージ。

【現実の家】

通常、家を建てるもしくは購入する際には、あらかじめ予算を設けて、その予算内で建てられるもしくは購入できる家を検討する。システムでも同様に予算内でどこまでできるか検討するアプローチは大切です。

そして、はじめから欲しい機能をすべて開発するのではなく、導入時は必要最低限の機能に絞り開発し、運用していきながら必要性の高い機能を追加開発(増築)していく方が、結果として必要な機能に絞って開発する事ができるので、トータルな開発コストが低く抑えられます‼

iDempiereはライセンス料は0円ですので、予算に応じたシステム導入が可能です‼ そのためiDempiereでは特に予算内でどこまでできるか検討するアプローチは大切です。

関連するコンテンツ