読者です 読者をやめる 読者になる 読者になる

はじめてSalesforceやってみた感想

ここ約半年間くらい、はじめてのSalesforce案件に参加していました。
20人月くらいの受託案件でしたが、フルスクラッチの案件と比べて、
良いところ悪いところ色々と思うところがあり、雑多ながら感想を書いてみようかと思います。

 

Javaが分かっていればすぐ慣れる
開発言語のApexがほぼJavaですし、画面作成用のVisualforceという技術はどうみてもJSFです。

・短納期、少人数の案件が多い
みたいです。
少人数ですので、お客さんと話ができて、設計もできて、プログラミング・テストまで一人でできちゃう
様な人じゃないとやっていけなさそうです。
プログラミングしかできませんみたいな人はいらなさそう。

・はまる要件だと非常に簡単にアプリケーションが作れてしまう
標準画面のカスタマイズでほぼできちゃうような案件だと、ほぼプログラミングなしで
開発できちゃうので、フルスクラッチの開発と比較すると低予算で作れちゃいます。
エンドユーザ自身でもカスタマイズできるあたりも良い点。

・大量データの取り扱いが面倒くさい
データストレージ容量と、ガバナ制約の二つがネックで非常に苦労しました。
Saleforceではライセンス数に応じて、ストレージ容量が割り当てられるのですが、
大した容量ではないので大量データを扱うとすぐに使い切ってしまいます。
追加でデータストレージのみを買うこともできるのですのが、これも非常に割高。
またそもそも、プロジェクトの途中でストレージ容量が不足していることが判明して、
追加ストレージが必要になった場合、だれがそのお金を払うの? ってことも問題になってしまうので、
できるだけ早い段階でデータ容量のサイジングをしておかないと困ったことになってしまいます。

あとはガバナ制約。一度に更新できるレコード件数が1万件なので、一括でデータをリペアしたい場合、
非常に面倒です。
100万件のレコードの制御用のフラグを一度に変更したい場合、RDBならUpdate文を一回投げれば終わりですが、
そんな簡単にはいきません。1万件ずつ更新するか、DataLoaderというツールを使用して、CSV Export->Updateを行うしかないです。
やれないこともないのですが、ただのフラグの更新なのに面倒な手順を踏まないといけないあたり、
非常に腹立たしいです。

・まとめ
ほぼ標準画面のみで開発できる案件なら、かなり強力なプラットフォームかなと思いますが、
逆にあまり向いていない大量データやら、標準画面がほぼ使えない案件だと、
あんまりメリットないかもなぁ的なところもありました。
とりあえず、はじめからSalesforeありきで導入するものではないなと。
業務要件として向いていると判断したのなら導入すればいいんじゃないでしょうか。