オンプレ開発とクラウド開発の違いは?『ハードのしがらみ』編
2020-02-03
azblob://2022/11/11/eyecatch/2020-02-03-onpremises-cloud-development-difference-0000.jpg

はじめまして! FIXER 金沢事業所の吉田と申します。
バブル末期に電機メーカ系ソフト会社に入社して以来、オンプレ環境でのシステム開発を長年やってきました(自称:たたき上げのオンプレSE)。そんな私ですが、クラウドベンダーに転職しまして、早や1年経過しました。

クラウド環境でシステム開発をしていくなかで、「オンプレ環境とクラウド環境でのシステム開発の違い」について、感じたことを書いてみたいとおもいます。
今回のテーマは 「ハードのしがらみ」です。

システム開発の流れ

一般的なシステム開発は、ざっくりと以下のような流れになるとおもいます。

 ①起案、予算取り
 ②提案(各社)
 ③契約
 ④要件定義
 ⑤設計
 ⑥構築、実装
 ⑦テスト
 ⑧運用

ハード構成を決める時期

オンプレ環境のシステム開発では「⑥構築、実装」あたりでハード搬入されますが、買い物が決まるのは「③契約」が多いと思います(予算調整つく範囲内のものは、それ以降でも変わることありますけど)。
そうなると、オンプレ開発で実際にハード構成を決めている時期は「②提案」ということになります。

システム開発のあるある

これまでのシステム開発では、以下のようなことが少なからずありました。

 ・出来ると考えていたことが、ハードやソフトの仕様上できない・・
 ・実現方法をよく考えていくと、アーキテクチャから見直しが必要・・
 ・システムの性能試験してみると、想定性能にまったくとどかない・・

上記のようなことがおこってしまったら、しがらみがなんにもなければ「あるべき姿」で見直せばいいのですが、当然ながら「③契約」の後では、品質、コスト、スケジュールといったお約束を守ったうえでの見直しになります。

オンプレ開発とクラウド開発の違い

システム設計に大きな見直しが必要になった場合、上記のお約束は同じですが、オンプレ環境とクラウド環境でのシステム開発の違いは、まさに「”ハードのしがらみ”があるかないか」だとおもいます。
オンプレ開発では 「②提案」 で検討したハード構成にしばられます(これでよくつまづく)。一方、「クラウド開発では”ハードのしがらみがない(又は小さい)”ため、システム設計をあるべき姿で見直すことが可能」です。この一点だけでも「システムの出来栄えに、とっても大きな違い」が生まれます!(実際に体験しましたが、また次回以降の記事で記載しますね)

まとめ

システム環境、テクノロジーは日々進化しており、それにあわせて開発作業も大きく変えることができます。今回は「ハードのしがらみ」をテーマに記載しましたが、オンプレ開発と比較したクラウド開発の良さとして「ハードのしがらみがなく設計できる(設計変更できる)」ということは、とっても大きなメリットだと感じております 。

(アプリチームとインフラチームの大戦もなく開発できて平和です・・笑)

おまけ

昔々、あるオンプレ開発にて若手と上司がシステム設計について話していました。

 若手:これ、ハード買った方が早くないですか?
 上司:それはそうだけど、できないんだ。
 若手:なんでできないんですか?
 営業:もうハード買ってるし、ハード予算もないし。
 上司:ここからがエンジニアとして腕の見せ所だ(ドヤ顔)
 ~~~(その後) ~~~
 若手:これ、なんかいびつなシステムじゃないですか?
 上司:やはりそうおもうか、ハード買えばよかったな。
 若手:まじですか・・