オフショア開発における契約形態の選択と、重要なポイント

オフショア開発には、受託開発、ラボ開発、そして折衷型の3つの契約形態が存在します。それぞれの契約形態には特徴と課題がありますが、最終的にここで「折衷型」と述べているものに集約していく傾向があります。

受託開発契約とその特徴

受託開発契約は、成果物の納品を約束する契約形態です。この形態では、事前に成果物の定義を明確にし、それに基づいて開発を進めます。受託開発契約はソフトウェア開発においてシンプルな形態と言えますが、成果物の定義を明確にすることは容易ではありません。実際の開発作業では、概念上の定義と現実の制約との間で調整が必要となる場合があります。

ラボ開発契約とその特徴

ラボ開発契約は、クライアントが直接開発者に対して指示を出す契約形態です。クライアントは開発者を拘束し、その時間を購入します。この形態は、日本のSES契約に近いものですが、ラボ開発では開発者は非常駐となります。時間単位で開発者の貢献を購入するため、時間の品質によって成果物の品質が保証されるわけではありません。開発者によって同じ時間内でも成果物の差が生じることがあります。

折衷型契約の意義とその特徴

折衷型契約は受託開発契約とラボ開発契約の折衷案として採用されます。この契約形態では、成果物の定義を柔軟にし、一定の作業時間も確保しながら、基本的にボトムアップ型で開発を進めていきます。オフショア開発においては、ビジネスモデルやクライアントの要求を理解し、中核的な開発人材(例えば、ブリッジエンジニア)を確保することが重要です。中核的な人材はクライアントのビジネスについて深い洞察を持ち、長期的な関係を築くことができます。このような中核人材をラボ契約で時間拘束的に確保し、プロジェクトが大型化したときはスポットで追加の受託契約を行い、人を追加で確保するというものです。

折衷案に収斂していく実際のプロジェクト

受託開発としてスタートしたプロジェクトでも、ラボ開発としてスタートしたプロジェクトでも、ベトナムでのオフショア開発が成功し長く続いている案件は、最終的に折衷案に収斂していく傾向があるようです。多くの場合は海外開発拠点は、日本の開発プロジェクトの外付け工場という位置づけになりますので、クライアントのビジネスをよく知った開発者を確保しつつスケーラビリティを確保するという両方が求められることとなり、このような形に落ち着くのでしょう。

もしこの形をゴールとするのならば、下記の2点に注目するのが良いでしょう。

(a) 長期契約が必要なこと:クライアントのビジネスモデルや独自の用語を理解し、本当に重要な要素を把握するためには時間が必要です。クライアントのビジネスに寄り添いながら開発を行うためには、最低でも1年以上の長期契約が必要です。

(b) ブリッジエンジニアを始めとする中核的人材の確保が大切であること:中核的な開発人材は、クライアントのビジネスをよく理解し、ビジネスの要件に応じて開発を進めることができる人材です。彼らは長期的なパートナーシップを築き、クライアントのビジネス成果に貢献します。そのため、オフショア開発においては、ブリッジエンジニアなどの中核的な人材の確保が極めて重要です。

オフショア開発においては、契約形態の選択とビジネス戦略の統合が成功の鍵となります。ビジネスの長期的な視点と中核的な人材の確保を重視することで、効果的なオフショア開発を実現することができるでしょう。

関連記事

システム開発の混迷

営業依存の弊害

業務システムがうまくいかないのはベンダーやSEの問題だけではない。SEを取り巻く環境もシステム開発には重要である。業務システム開発を依頼するベンダーであれば営業担当者が挟まる。日本の縦割り社会の中で営業担当者は非エンジニアである場合が多く、プロジェクトの成功が目的ではない場合がある。

役割の細分化

SEをプロジェクトマネージャーとしている場合も注意が必要である。日本ではシステムエンジニアは細分化されておらず、建築でいうと参加者の全員が職人という扱いであることが多い。システムに関わる人全員がSEとしてしまっている間違いである。

開発の本質

SEやベンダーのプロジェクトマネージャーはそれ自体がプロジェクトと考えていることも多く、ビジネスとしてのプロジェクトとして捉えることができていないことがある。本来はビジネスが中心にあって、その中に業務システムが位置するはずである。それが見えているか否かで、業務システム開発の成功の確率は変わるのである。

相互理解

逆に、システムのことはSEに任せているというような場合も注意が必要である。システムのプロジェクトを経験したことがある、というだけでは、システムに関連するプロジェクトを成功させるのは困難である可能性が高い。プログラミングの経験がなければ、SEやベンダーが持つ心境を察することができないからである。最も重要なことはシステム導入時のイメージである。

まとめ

欧米では当たり前のように、間接的に関与する売上や利益の向上を管掌する部門や役職があるが、日本では良くも悪くもロジカルであり、数字がなければ行動に移せない厳密なルールがある。

続きを見る >

デジタル化の誤解:効率化の落とし穴

デジタル化は効率化を保証しない

デジタル化と聞くと、多くの人が効率化を期待する。しかし、たとえばFAXで受け取った紙の受注をOCR(文字認識)でデジタルデータ化し、データベースに保存しても、それは単なるデジタル化に過ぎない。デジタル化を行うだけでは本質的な効率向上は望めず、業務フローの見直しがなければ効果は限定的だ。

非効率なフローをそのままデジタル化するリスク

最も大きな問題は、業務フローを見直さずにデジタル化を行うことだ。従来の手作業のフローをそのままデジタル化すれば、かえって作業が煩雑化し、時間がかかることもある。特にITに疎い権限者が意思決定を行う場合、このような失敗はよく見られる。「デジタル化=効率化」と誤解し、実際には逆効果となるケースも少なくない。

俯瞰できないシステム担当者の問題

システム担当者やシステム会社が、俯瞰的な視点を持たない場合も問題だ。業務フローを把握せず、指示通りにデジタル化を進めれば、非効率なシステムが出来上がる。ユーザー部門は「IT化で逆に効率が悪くなった」と感じ、最悪の場合、システムが欠陥品だと誤解されることもある。業務の流れを把握し、適切にデジタル化を進めることが必要だ。

生成AI導入の失敗例

生成AIの導入に関する相談も増えているが、その多くは「期待通りに動かない」という内容だ。その原因は、多くの場合、AIが本来必要ない箇所に導入されていることだ。たとえば、ただのデータ管理であれば、生成AIではなくRDB(リレーショナルデータベース)のほうが合理的だ。効率を上げるには、AIの利用が本当に適切かを見極める判断力が必要だ。

まとめ

「ITが分からないから任せる」という姿勢はリスクが高い。ITを知らない人がIT化を進めるのは、決算書を読めないのに経営をするのと同じだ。業務フローを理解し、技術を正しく活用するには横断的な視点と経験が不可欠だ。

続きを見る >

モックアップの料金

要件定義の意義

ユーザーの要件を明確にすることで、開発の方向性がブレず、無駄な修正や手戻りを防ぐことができる。定期的なミーティングやレビューセッションを通じて、開発者はユーザーのニーズを正確に把握し、ドキュメント化やモックアップ化することが重要である。

試作品の価値

SEはユーザーに具体的なイメージを持ってもらうために、プロトタイプやモックアップを作成し、ユーザーに確認してもらうことで、誤解や認識のズレを減らす。これにより、実装後の大幅な変更を回避できる。

モックアップの功罪

モックアップの作成は有料であることが多いようである。また、非エンジニアがシステム技術を意識しないモックアップであれば、その後の開発が複雑になってしまうといったことも考えられる。

ユーザー主導開発

モックアップを用いてユーザーがシステムの機能や開発プロセスについて理解を深めることで、適切なフィードバックを提供することが大切である。開発チームとのコミュニケーションも円滑になり、無駄な手戻りや修正を減少する。

まとめ

システム開発におけるユーザーと開発チームのコミュニケーション改善が、システム開発コストを軽減する。そのためには視覚的にコミュニケーションできるモックアップは重要であろう。

続きを見る >