オフショア開発プロジェクト管理に役立つ「10のソリューション」と「5つのツール」をご紹介!
目次
はじめに
オフショア開発は、企業にとってコスト削減と競争力強化のための素晴らしいアプローチです。
しかし、オフショア開発プロジェクトは、多くの課題や潜在的なリスクを伴うため、多くの人にとって管理が困難な場合があります。
この記事では、オフショア開発プロジェクトの管理におけるあらゆる課題と、それを克服する方法について解説します。また、オフショア開発チームのマネジメントを容易にし、潜在的なリスクを回避するために使用できるツールやベストプラクティスも紹介します。
関連記事
オフショア開発プロジェクトにおける課題と解決方法
オフショア開発プロジェクトでは、次のような課題を抱えがちです。解決方法とともにご紹介いたします。
オフショア開発における「高い離職率」
オフショア開発チームのメンバーの出入りが激しいと、非常に面倒なことになります。
一人抜けるたびに、あるいは新しいメンバーを迎えるたびに、進捗に遅れが生じます。
解決方法
オフショア開発ベンダーを評価する際には、そのベンダーが従業員のために整えている労働環境に注目する必要があります。
ベンダーのSNSチャンネルなどを見ると、従業員が快適な職場環境、必要な設備、自己啓発のための多くの機会を得ているかどうかを確認できます。素晴らしい労働環境を提供している企業であれば、求職者を惹きつけるために福利厚生をアピールしているSNSで、そのことに気づくはずです。
また、離職率が低ければ、従業員が労働条件に満足していることを意味します。
オフショア開発における「ナレッジ共有とコミュニケーション」
オフショア開発では、チーム間のナレッジ共有が重要です。
オフショアチームと仕事をする場合、必要な開発課題をプロジェクトマネージャーと話し合い、その情報をチームと共有すべきです。
たとえば、デザインスタイルガイド、ワイヤーフレーム、仕様書などを共有し、採用したチームが何をすべきかを理解できるようにする必要があります。
また、プロジェクト期間中は、社内チームとオフショアチームが頻繁に知識を交換し、両チームの目標や進捗を確認すると良いでしょう。
解決方法
両チームが毎日ミーティングを行い、完成したものについて話し合い、新しい変更があればその知識を交換します。
オフショア開発では、ほとんどの場合、クライアント企業の母国語を話さない他国のチームと一緒に仕事をすることになるので、自社のチームとオフショアチームが、お互いによく理解できるような言語を共有していることを確認しましょう。
また、予期せぬ問題やミスが発生した場合、両チームが直接、透明性を持って対応するようにしましょう。
オフショア開発における「データ保護」
オフショア開発チームと仕事をすのであれば、密接かつ頻繁な監視ができないことを受け入れなければなりません。このため、プロジェクトのアイデアやビジネス要件などの情報のプライバシーが十分に尊重されることを確認する必要があります。
解決方法
ベンダーと秘密保持契約を締結します。この契約は、プロジェクトが行われるときに、あらゆる面でデータのプライバシーを保護します。
また、顧客のデータを保護するための厳格なポリシーを持っていれば間違いないので、信頼できるベンダーだけを選んで依頼するようにしましょう。
オフショア開発における「ツールや手法の違い」
もし、採用しているツールや手法が、オフショアチームが使用しているものと異なる場合、両者は互いに協力することが非常に難しくなります。その結果、バグ、ダウンタイム、コード統合問題、長いリリース工程などの問題が避けられなくなります。
解決方法
オフショア開発の開発者に手法を共有すれば、設計したコードテストを彼らに任せられます。
サービスプロバイダーは、ツールについて柔軟に対応してくれることが多いので、プロジェクトで特定のツールを使用したい場合は、ベンダーにリクエストできます。
社内チームとオフショア開発チームのマネジメントの違い
オフショアチームマネジメントは、社内チームのマネジメントと比較すると、より複雑です。プロジェクトマネージャーやテクニカルマネージャーの特別なスキルや注意力、努力が必要とされます。
もしオフショア開発チームのマネジメントを初めて経験するのであれば、この2つのモデルの違いを知っておくと役に立つでしょう。
社内チーム | オフショアチーム | |
必要なリソースと技術 | プロジェクトマネージャーは、限られた社内リソースやツールを使用することが多い。 | さまざまなリソースや技術を利用したり、外部の専門家をプロジェクトに参加させたりすることができる。 |
スピード | 安定的、ゆるやか | 徐々に、速く |
チームの専門 | 狭く、具体的 | より広く |
柔軟性 | より明確で厳格な手順 | より適応性の高い、柔軟なワークフローを実現。 |
法的な問題 | すべてローカルで起こるので対処しやすい。 | 2国間の規制や法律の違いにより、問題が発生することがある。 |
管理とコミュニケーション | 簡単にコントロールでき、速く、集中的に現場で進捗を管理できる。 | ワークフローの構築はより困難であり、オフショアチームのコミュニケーション能力と組織力に大きく依存する。 |
データの安全性 | 管理・制御が容易 | オフショアサービスプロバイダーとそのチームに依存しなければならないため、コントロールはより困難。 |
どちらの選択肢にも、それぞれメリットとデメリットがあります。
アウトソーシングは、オフショア開発プロジェクトの管理方法を確実に知っている場合にのみ、有益な手段となります。
信頼できるオフショア開発ベンダーを選ぶことは、正しいビジネス戦略の一部なのです。
オフショア開発プロジェクト管理に役立つ「10のソリューション」
オフショア開発プロジェクトを管理するためにおすすめの方法を10点ご紹介いたします。
製品ビジョンの共有
多くの人は、オフショア開発者に単純な基本タスクだけを割り当てて、全体像を共有しないという間違いを犯しています。そのような間違いを犯さないようにしましょう。チームもオフショアチームも、プロジェクトのゴールは何か、どこに向かっているのかを理解する必要があります。
製品ビジョンを明確に示すことで、彼らは正しい選択をしながらプロジェクトに取り組めます。プロジェクトビジョンを共有すれば、彼らはさらなるビジネスが楽しみであることを知れば、常にベストを尽くそうという気になるのです。
情報を取得する
オフショア開発チームに依頼する場合、プロジェクトで何が起こっているのかを把握しにくいものです。社内ではメンバーの肩を叩けばすぐに情報を得られますが、リモートチームの場合積極的に情報を確認する必要があります。何が起こっているのか、徹底的にコミュニケーションをとることを優先させましょう。
また、グループでのスクラムミーティングで話すだけではいけません。必要に応じて1対1で話をするようにしましょう。集団の中では発言しにくいので、本当に期待されていることを理解しているかどうかがわかりにくいためです。
仕事のスケジュールをオーバーラップさせる
オフショア開発プロジェクトの管理で最も大きな課題の1つは、大きく異なるタイムゾーンで作業することです。
しかし、自社チームが日本にあり、オフショアチームはたとえばベトナムにありますが、その時差はわずか2時間です。そのため、毎日、ミーティングや情報交換ができるような、業務が重なる時間を多く持ちます。
この時差をうまく利用すれば、自社の担当者の勤務時間外にオフショアチームがプロジェクトに取り組み、ワークフローを継続することで生産性を最大限に高めることができます。
簡単な言葉を使う
オフショア先がどの国かにもよりますが、オフショアチームは母国語をネイティブレベルで話せない可能性があるので、彼らが理解できるような言葉を使う必要があります。
一般的な語彙を使い、比喩や、彼らが理解できないような文化的な言及を避けることによって、言葉を単純化します。
指示は非常に直接的で明確にしましょう。
タスク表を満タンにする
プロジェクトの中で、オフショアチームが行き詰まり、誰かの助けが必要になることは何度もあるでしょう。誰かがチェックしたコンパイルの問題、ビジネスロジックの未解決の質問、明確な要件の欠如など、チームメンバーが作業の途中で行き詰まる理由はたくさんあります。
そのような時に、彼らの手が止まってしまうことは避けたいでしょう。ここでやるべきことは、彼らのキューに複数のタスクを用意して、一つで行き詰まったら、ほかのタスクに移れるようにすることです。
ビデオ会議を利用する
チームのことを本当に知り、本当の人間関係を築くことが大切です。
ビデオ会議には、チームの絆を深めるのに役立つ人間的な要素が含まれています。また、ビデオは、キーボードの後ろに隠れて見えないチームメンバーの感情や気分を、より良く理解できます。彼らの満足度を確認すれば、プロジェクトはより速く進むでしょう。
ZoomやSkypeなどを使ったビデオ会議は、そのための素晴らしい方法です。
相手のスキルを認める
たとえば、1時間2千円でオフショア開発者のチームを持てるからといって、基本的な仕事しか与えられないわけではありません。彼らが時給2千円しか要求しないのは、彼らの住む地域の物価が安いからであって、彼らのスキルが低いからではないのです。
自社の開発者と同じように、自分のスキルが上がらないようなプロジェクトはやりたがらないものです。もし、チームに有能な人材を確保したいのであれば、彼らのレベルに合った仕事を引き継ぐことです。
マイクロマネジメントをしない
マイクロマネジメントとは、上司が部下の行動を逐一チェックして、いちいち細かく指示するスタイルのマネジメントのことです。
有能な人は自分の能力を信頼されたいと思うため、マイクロマネジメントは生産性を低下させます。
また、チームメンバーが自分自身で職務を全うできることが信頼できなければ、開発チームの規模は拡大できません。品質に問題がある場合、その原因は不適切なチームと組んでいることであり、管理が不十分だからではありません。
写真や動画でポイントを伝える
オフショア開発プロジェクトが成功するかどうかは、効果的なコミュニケーションにかかっています。情報交換において、スクリーンショットやビデオは良い手段です。スクリーンショットやビデオの撮影には数秒しかかかりませんが、その数秒の間に、話していることを瞬時にイメージし、理解することができ、何時間も節約することができます。
オフショアチームではなく、自社チームのように扱う
オフショア開発プロジェクトを管理する際の最大の間違いの1つは、「我々対彼ら」の考え方を持つことです。オフショア開発チームと距離を置いてはいけません。彼らは自社チームの一員であり、たまたまリモートで仕事をしているに過ぎないのです。
・すべてのコミュニケーションに参加させる。彼らを暗闇に置き去りにしない
・「私たち対彼ら」の考え方を避ける
・オンラインで、さらには直接会って、定期的に会う
・会社やチームのミーティングに参加させる
オフショア開発プロジェクト管理に最適なツール5選
最後に、オフショア開発プロジェクト管理に最適なおすすめツールを5点ご紹介します。
GitHub(ギットハブ)
GitHubは、ソースコードファイルを保存、共有、共同利用するためのコードホスティングツールです。5,600万人以上のユーザーを持つ人気のサービスです。GitHubは、リポジトリの管理、コード変更の追跡、オフショア開発プロジェクトの進捗の監視を可能にします。
GitHubの特徴として、バージョン管理、課題追跡があります。これらにより、遠隔地にいる開発チームが同じプロジェクトで同時に作業を行い、お互いの作業や元のコードを中断することなく、変更を加えたり戻したり、あるいはバグを修正したりすることができます。
また、変更案を確認したり、全メンバーがアクセスできる作業コピーに結合したりすることも可能です。
その他、GitHubが提供する機能:
・アクセス制御
・バグ追跡
・継続的インテグレーション
・ウィキ
・Jenkins などの自動テストツールとの連携
価格:1ユーザーあたり4~21ドル/月。無料限定プランあり。
Slack(スラック)
Slackは、世界中の技術者たちのコミュニケーション手段として、このリストのトップにふさわしいものです。Slackでは、チームのタスクや個別のチャットの作成、締め切りの設定、ドキュメントの交換、アポイントメント、作業状況のアップデートなどを簡単に行えます。
また、一般的なチャンネルやサブチームのチャンネルを作成し、開発者がコード設計機能、デプロイメント、機能性などのエンドツーエンドの成果物に取り組めます。
その他、Slackが提供する機能:
・プロジェクトに適した構造
・便利なボット
・多言語対応、メッセージの自動翻訳
・音声通話・ビデオ通話機能(かなり基本的なものですが)
・Dropbox、GitHub、ZenDesk、Google Drive、MailChimp、Salesforce、Invision、Intercom、Twitterなど、他のアプリとの連携が可能。
価格:月額6.67~12.50ドル(無料限定オプションあり)。
Zoom(ズーム)
Zoomは、小規模から大規模のリモートチーム向けに最も人気のあるビデオ会議ツールの1つです。最大1,000人の参加者をビデオ通話で接続し、同時に画面を共有し、メモを書き、共有し、会議の記録を作成することが可能です。
また、Zoomを利用して、オフショア開発チームとファイルの共有、メッセージの送信、音声通話の設定を行えます。Zoomは、Jira(ジラ)などのAtlassianツールとの統合により、問題の迅速な解決やサービスチケットのクローズを支援します。
その他、Zoomが提供する機能:
・カレンダーのスケジューリング
・ズームスケジューリング
・待合室
・会議記録
価格:100人参加で149.90ドルから。無料限定プランあり。
Trello(トレロ)
リモート開発プロジェクトを管理するための安価な基本ツールが必要なだけなら、Trelloは素晴らしい選択肢です。このツールは、タスクの進捗、担当者、未割り当てのタスクを簡単に追跡できるカンバンボードの形でプロジェクトを整理できます。
しかし、Trelloは、複雑なプロジェクトよりも、素朴なプロジェクトに取り組むオフショア開発チームに最も適しています。有料プランでは、Slack、Google Drive、Dropboxなど、200以上の他のアプリと連携できます。Trelloは、Stack Overflow Developer Survey 2020によると、開発者が最もよく使うプロジェクト管理ツール第7位となっています。
価格:1ユーザー/月12.50ドルから。無料限定プランあり
Jira(ジラ)
Jiraは、アジャイル開発に最適なプロジェクト管理ツールです。実際に、市場で最も人気のある包括的なツールです。
管理者は、作業の進捗状況やソフトウェアに発生した問題をリアルタイムで追跡できます。既製またはカスタマイズ可能なワークフローテンプレートにタスクをマッピングし、スクラムボードやカンバンボードを作成して反復プロジェクトを監視できます。作業ログ、進捗管理、プロジェクトバックログ、ロードマップなどのその他の重要な機能により、異なるタイムゾーンで進行する大規模かつ複雑なプロジェクトを監視できます。
Jiraの素晴らしいところは、誰が何を担当しているか、チームがどのように組織され協力しているかなど、プロジェクトの全体像を把握できる点です。
さらに、JiraはBitbucket Cloud、GitHub、Jenkins、Optimizelyなど、ほかのソフトウェア開発ツールとシームレスに統合することが可能です。
Jiraの欠点は、ユーザーインターフェイスが馴染みにくいことです。また、高価であるため、小規模な企業には向かないかもしれません。
価格:小規模チーム向けには1ユーザーあたり月額7~14ドル、801~1000ユーザー向けには122,250ドル、無料限定プランあり。
まとめ
オフショア開発の工程において、すべての問題を避けることはできませんが、どんな状況でも適切な解決方法があります。
経験と実績を豊富なオフショア開発ベンダーと協力すれば、課題を削減できるでしょう。
CMC Japanについて
ベトナム第2位のICT企業である当社、CMCグループは、ハノイおよびダナン・ホーチミン市の3拠点で、オフショア開発を継続して提供しています。
中長期的なリソース計画や開発コストの最適化をご検討の企業様は、お問い合わせフォームよりご連絡ください。
当社は日本のお客様に「止まらない、持続可能な開発」をベトナムオフショア開発で支援しています。
【動画】【2022年版】2分でわかる!オフショア開発とは?
ベトナムオフショア開発の活用で、コスト「60%」削減!! & 開発期間「1/2」短縮を実現できた事例をご紹介!
顧客ニーズを第一に、ベトナム上場企業によるオフショア開発
【お役立ち資料】 ベトナムオフショア開発入門書
資料ダウンロード
資料は下記のフォームを送信して頂くと完了画面またはメールにてダウン口一ドできます