オフショア開発でコスト大!依頼できるものとできないもの
うちの会社でも、開発コストを抑える目的からオフショア開発を導入することになった。
そこで得た教訓は、
開発コストは安い。そのかわり、品質も安い。
だった。
ベトナムの会社にシステムの一部を依頼することになった。
自分が仕様(設計込み)を書いて、ベトナムの会社に実装(PG)を依頼する。
返ってきた成果物は・・・・
・正常系すら動かないシステム
・依頼したものと全く違う動きをする
リテイクを何度か行うが、
求めているものが一向に出来上がってこない。
5回ほどリテイクしてやっとほぼ想定通りの動作するようになった。
残った部分は、自分たちで直す。
やりとり疲れたわ〜(´∀`)
オフショアに依頼して比較的まともに動いたものは、こんな依頼内容だった。
- とりあえず動けば良いレベルのサンプルアプリ(異常系の考慮なし)
- モックアップ作成。そこから、自分たちが製品版に仕上げていく
- アニメーションの作成。作って欲しいアニメーションは、動画などで共有。
- すでに実績があるモジュールの水平展開で対応可能なもの
- 仕様書が詳細設計のレベルまで落とし込まれているものがある。
依頼してはいけないもの:
- 既存システムの不具合の修正。既存のモジュールが壊されるため
- 仕様が細かいもの。正常に動いた例がない。
- 課金に関係する、ユーザにとって重要な機能
共通していることは、最終的に、自分たちで修正して製品版に仕上げる。
オフショア使ったほうがコスト的に安くなるが、品質も安くなる。
その結果、発注者側が不具合の調査したり、不具合依頼を出したりと返って時間が取られる。
「オフショアだから仕方ない」と割り切るしかない。
というわけで、オフショア開発するときは
- (品質を)求めるな!
- 疑え!
- (時間を)費やせ!
である。
オフショアは、開発費用は安いが、扱いが本当に難しい。
この先、使っていくどうか検討中である