【NetSuite VS SAP】エンジニア目線からの比較
これまでにもNetSuiteとSAPの比較の記事を書いてきました。今回は、特にそれぞれのプロジェクトでエンジニアをやっていて、「これはそれぞれのERPの特徴に繋がる!」と思った事柄をまとめてみました。
データの持ち方
SAP - 堅牢なリレーショナルデータベース
SAPで用意されているデータベースはとても堅牢です。データについて業務との不整合が起きないような仕組みが用意されています。
例えば、データベースを操作する際に、対象のレコードについてほかの操作が加えられたりすると、意図しないエラーとなってしまうことがあります。
SAPではそれが起こらないようにレコードをロックして、ほかの操作を受け付けないようにするロックする機能があります。
例として、機能Aで変更したデータBを機能Cが後追いで変更するという処理を考えてみましょう。
不整合が起きてしまう可能性としては、
・機能AがデータBを処理しているが、機能CがデータBへの処理を開始してしまい、機能Cが終了後に、機能Aが終了してしまったため、機能Cの処理が機能A終了時点に上書きされてしまう。
といったことが考えられます。
しかし、SAPでは、
・機能AがデータBを処理している間は、機能CはデータBへのアクセスができない状況にすることができるため、機能Aの処理が終わる前に機能Cが終了することがない。
とエラーを回避することができます。
他にもデータのスケーラビリティやハッシュ化などのセキュリティといった特徴からも堅牢さがわかると思います。
NetSuite - カスタマイズの容易さと柔軟性
NetSuiteの特徴はなんといってもカスタマイズの容易さだと思います。
SAPと比べると、標準のトランザクションに項目を追加するという作業を考慮したときに必要な作業量が1/10程だと思います。
NetSuiteでは、カスタム項目を作成し、その項目を適用する先のトランザクションフォームを選択するだけで、トランザクションのカスタマイズができてしまいます。
(SAPを経験してから、この容易さを目の当たりにしたときは衝撃でした。)
もっというと、NetSuiteではほとんどデータベースを意識することがないように思います。もちろん、保存検索等を使用する際にはデータベースの知識は必須なのですが、画面上の操作でなんとかすることもできます。
カスタム開発でデータへのアクセスを行う際に、SuiteScriptのAPIを使用し、対象のトランザクションや関連のリストにある項目へアクセスするようになります。これは、SAPのABAPで、専用のSQL文でデータを取得することを考えると、開発の基本的な様式が異なるように思います。
また、ワークフローを上手に活用することで、項目に入力する値の制御や業務での承認フローなどを用意に組み上げることができる点も、SAPと比べると異次元の柔軟性があるといえると思います。
もちろん、SAPにある堅牢さやスケーラビリティについては、NetSuiteでは標準で用意されておらず、それらを実現しようとすると、それなりにコストがかかります。それでも、NetSuiteのカスタマイズの用意さは、長期間になる傾向にあるERP導入において、作業量が少ないという意味で確実にアドバンテージです。
開発コミュニティ
SAP - 大規模コミュニティとリソース
代表的なものとしては、
SAP Community - SAP関連の技術情報や開発者向けのフォーラム、ブログ、イベント情報などが集まり、開発者同士の交流や知識共有が行われています。ただ、こちらは基本的に英語です。
Biz.Online - こちらはSAPに限らないですが、SAPについての知識をわかりやすくまとめてくれています。上記とは違い、日本語です。
このほかにも検索エンジンで少し調べただけで相当な数の資料を見つけることができます。
NetSuite - まだまだ成長中のコミュニティ
Oracleの公式文章以上に詳しいサイトはまだ存在しない印象です。
まだまだ普及途中のNetSuiteですので、これからの開発情報の充実化やコミュニティができることを期待しています。
NetSuiteドキュメント - NetSuiteの詳細についてはこちらのサイトに全て記載されていると思ってもいいかと思います。ただ、たまに違うことが書いてあったりもします。。。
SuiteAnswers - NetSuiteのユーザーや開発者向けの知識ベースです。FAQ、ベストプラクティス、トラブルシューティングガイド、ユーザーフォーラムなどが含まれており、多くの質問に対する回答や情報が提供されています。
このほかにも海外のRedditやQuoraにも参考にできるものがあるので、一度目を通しておいても損はないかと思います。
最後に・・・
ここまでNetSuiteとSAPのどちらの開発にも携わってきたエンジニア目線での比較をしてきました。
それぞれ特徴があり、どのようなビジネスがあるかといった勉強をしながらもシステムを扱えるという楽しさの両方を味わえるのが、ITコンサルやERPパッケージのエンジニアだと思います。
この記事は、実際にERPを導入検討している企業様やITコンサルタントやエンジニアの方のキャリア形成の参考になればいいなと思い作成しました。
もし少しでも弊社やNetSuiteはもちろん、ITコンサルタント、プロジェクトマネージャーに興味があるという方は下記の募集をクリックしてみてください!
カジュアル面談でざっくばらんにお話ししましょう!