17/04/2023

3 minutes

ローコード開発ツール・プラットフォームを選ぶポイントは?おすすめのツールを10種紹介

ローコード開発ツールは、部品を組み立てるようにしてアプリケーションを開発できるツールです。コーディングをあまり行わないので、専門家でなくてもアプリケーションを開発できます。そのため、エンジニア不足の解消や開発スピードの向上、現場のニーズのくみ上げにもつながります。

11/04/2023

3 minutes

おすすめのノーコードツール10選―開発の目的別に特徴・機能を比較

ノーコード開発は、コーディングの知識や技術がなくてもシステムやサービスの開発が可能です。こういったノーコード開発をするとき、重要となるのが使用するノーコードツールの選び方です。用途ごとにおすすめのノーコードツールをご紹介します。

10/04/2023

3 minutes

Lightning Platformとは?Sales Cloudとはどう使い分ければいいのか

Lightning Platformは、Salesforce上で動作するアプリケーションを開発できるローコード開発ツールです。開発したアプリケーションを実行、運用保守、管理するプラットフォームでもあります。ここでは、Lightning Platformの基本的知識について幅広く紹介します。

27/03/2023

3 minutes

受託開発とは?メリット・デメリット、オフショア開発での受託プロジェクト例

ビジネス環境の急速に変化やテクノロジーの進化によって、競合力の維持が課題となる中、様々な開発アプローチが模索されています。各種の開発手法における提柔軟性と効率性はどの方法が最適か、多くの企業にとって重要な戦略的オプションとなっています。 本記事では、受託開発に焦点を絞り、その要点やメリット・デメリット、受託開発の流れを解説するとととに、オフショア開発によって行われている受託開発プロジェクトについても紹介します。 自社開発と受託開発 自社開発と受託開発は、ソフトウェアやプロジェクトの開発方法論に関する2つの異なるアプローチです。企業はプロジェクトの性質や企業の戦略に応じて自社開発と受託開発を組み合わせて使用することで、効果的なソフトウェア開発に効果を発揮します。 自社開発とは 自社開発は、企業が自社の内部リソースを使用してソフトウェアプロジェクトを設計、開発、運用する方法です。企業はソフトウェア開発の全体のプロセスを管理し、プロジェクトに直接関与します。開発者は会社の従業員となります。 自社開発は、自社内に開発チームを組織し、自社製品やカスタムアプリケーションを開発し、自社のビジネスニーズに合わせて柔軟に対応する場合に行われます。 受託開発とは 受託開発とは、企業などの委託主(クライアント)が、自社のプロジェクトやソフトウェア開発に関する特定のタスクや作業を、外部の専門的な開発会社や個人(受託先、開発者、ベンダー)に委託する方法です。 クライアントは開発会社に対してプロジェクトの要件や仕様を提供し、開発会社はそれを実装し、クライアントに成果物を提供します。受託開発は、専門的なスキルやリソースにアクセスするため、自社開発では不足している場合や一時的なニーズに対処するために利用されます。 受託開発は、ソフトウェア開発、ウェブ開発、モバイルアプリ開発、データ分析、品質保証など、さまざまなIT関連プロジェクトに適用されます。 また、受託開発は、フルスクラッチ開発以外の依頼も可能です。受託開発は、新規のソフトウェアプロジェクトを完全に新たに開発するだけでなく、以下のような様々な形態のプロジェクトにも適用されます。 【受託開発のプロジェクト適用例】 (1)既存システムのカスタマイズ 既存のソフトウェアやシステムに特定の機能追加や変更を加えるために受託開発を依頼することがあります。これにより、既存システムを新しい要件に適応させることが可能です。 (2)既存プロジェクトのサポート 既存のプロジェクトやアプリケーションの保守、運用、トラブルシューティング、アップデート、セキュリティパッチの適用など、サポート関連の作業を受託開発に委託することがあります。 (3)アプリケーションの移行やマイグレーション 既存のアプリケーションやデータを新しいプラットフォームに移行するための受託開発プロジェクトも一般的です。これはデータベース移行、クラウド移行、ハードウェアの更新などを含みます。 (4)サードパーティ製品の統合 サードパーティのソフトウェア製品やAPIを既存のシステムに統合するためのカスタム開発が必要な場合、受託開発を利用します。 (5)テストと品質保証 ソフトウェアテストや品質保証作業を外部の専門家に委託することがあります。特に大規模なプロジェクトでは、独立したテストチームが品質管理を行います。 受託開発は、新規開発だけでなく、既存のソフトウェアやプロジェクトの拡張、改善、保守、統合などにも適用され、クライアントの特定のニーズに合わせてカスタマイズされることが一般的です。 受託開発のメリットとデメリット 受託開発の主要なメリットとデメリットは、主に以下の通りです。 受託開発のメリット ・専門知識の活用 開発会社は技術的な専門知識と経験を持っており、クライアントはその専門知識を活用できます。これにより、高品質で効率的なソフトウェア開発が可能です。 ・コスト削減 開発会社は設備やリソースを共有できるため、クライアントは自社での開発に比べてコストを削減できます。また、受託開発会社は人件費などのリソースに関する管理も行います。 ・コアビジネスに専念できる クライアントはソフトウェア開発に関するすべての責任を開発会社に委託できるため、自社のコアビジネスに専念できます。 ・スケーラビリティ 開発会社はプロジェクトの規模や要件に応じてリソースをスケールアップまたはダウンでき、柔軟性があります。 ・リスク分散 開発会社はプロジェクトのリスクを共有し、問題が発生した場合にも対応できる体制を持っています。 ・フルスクラッチ開発の自由度 受託開発では、ソフトウェアをフルスクラッチで開発できるため、機能や仕様に関して自由度が高いです。クライアントの要求に合わせてカスタマイズされたソリューションが提供されます。 受託開発のデメリット ・コミュニケーションの課題 クライアントと開発会社の間で適切なコミュニケーションが確保されない場合、要件の誤解やプロジェクトの方向性のずれが発生する可能性があります。 ・品質管理の難しさ クライアントは開発の進行状況をリアルタイムで把握しづらいため、品質管理やテストの監視が難しい場合があります。 ・コントロールの喪失 開発会社がプロジェクトの制御を握っているため、クライアントは一部の意思決定権を委任しなければならない場合があります。 ・細部の把握の難しさ クライアントは開発の詳細なプロセスや技術的な側面について十分な知識を持っていない場合、プロジェクトに対するコントロールが難しくなる場合があります。 ・契約や法的な課題 契約や法的な問題が発生する可能性があるため、契約書の明確な取り決めが必要です。 受託開発の流れ システム開発における受託開発の一般的な開発フローは以下の通りです。 1. システム構築の検討・決定 システム構築の必要性を検討し、社内での検討と決定プロセスを実施します。どのようなシステムが必要か、現行システムの制約事項、パッケージソフトウェアやクラウドサービスの適用可能性などを評価します。 […]

25/03/2023

3 minutes

Salesforce Service Cloudとは?特徴や機能、Sales Cloud との違いなどを解説

Salesforce Service Cloudは、セールスフォース社が提供するSFA/CRMシステムです。セールスフォース社が数多く提供するシステムのなかでも、中核となる製品です。ここでは、Salesforce Service Cloud とは何か、その機能、導入の際のメリットや注意点など、基本的な知識を紹介します。

20/03/2023

3 minutes

Salesforce Marketing Cloudとは?機能や導入メリットを理解しよう

Salesforce Marketing Cloudはセールスフォース社が提供するMAツールです。Salesforce Service CloudやSalesforce Sales Cloudなどと連携することで、より効果を発揮します。ここでは、Salesforce Service Cloudとは何か、機能や導入のメリット、導入のポイントなどを紹介します。

28/02/2023

3 minutes

オフショア開発における品質管理の課題と対策

ITシステム開発には品質管理の悩みがつきものです。品質管理ができていないと品質の低下はもちろん、納期の遅延や予算超過の原因にもなります。日本国内の人材不足やコスト高からオフショア開発を検討している企業も多いと思いますが、国内外を問わず品質管理は課題です。 オフショア開発には優秀な人材を確保できたりコストを抑えたりできるというメリットがある一方、コミュニケーションロスに起因する問題が発生する可能性があります。今回はオフショア開発における品質管理の課題とその解決策、高い品質を維持する方法について解説します。 ITシステム開発における品質管理の4つの課題 国内外を問わず、ITシステム開発にはさまざまな課題があります。発注側と受注側のオフショア開発会社のそれぞれに課題はありますが、大きく分けると以下のような問題が品質トラブルを招くことが多いと思われます。 発注側が受注側のオフショア開発会社に具体的な仕様を提示していない 開発のスタート段階で、仕様の概要は決まっているものの詳細仕様が決まっていないという問題です。仕様の詳細やテスト仕様も決まっておらず、受注側のオフショア開発会社にシステム仕様書やテスト仕様書の暫定版しか提示されていないような状況です。特に近年システム開発手法の主流になっているアジャイル開発では、優先度の高い要件から先に開発を進めていくので、全体の詳細仕様が決まっていない場合が多くあります。 アジャイル開発は仕様変更に強いという特徴はありますが、発注側が各機能の仕様を次々に決めないと開発が遅れ、品質問題を起こす原因にもなります。以前主流であったウォーターフォール開発でこの状態であれば、開発の後半になって深刻な品質問題を引き起こす可能性があります。 開発の初期段階で仕様やテストの条件が発注主を交えてレビューされていない 詳細の仕様が決まっていないという問題ではなく、発注主とオフショア開発会社で十分なレビューが行われていないという問題です。言い換えれば情報共有が十分になされていない状態で、発注側は意図が伝わったと思っている一方、受注側は仕様やテストの条件を十分に理解できていないような状況です。開発初期段階のレビューは、意図通りに仕様やテストの条件が伝わっているかを、口頭ではなく書面で相互確認することが重要です。 受注側のオフショア開発会社のレビュー計画とテスト計画が明確になっていない 発注主から示された詳細仕様やテスト条件を盛り込んだレビュー計画とテスト計画は、受注側のオフショア開発会社が作る必要があります。発注主は承認した開発計画が決めたとおりに進んでいるか、レビューでチェックをする必要がありますが、オフショア開発会社側の人員計画などが煮詰まっていないと、レビュー計画とテスト計画が曖昧になりスケジュールが遅れて品質問題に発展する場合があります。 開発手法の違いによる品質管理の方法が理解されていない 開発手法として現在主流になっているアジャイル開発と旧来のウォーターフォール開発では、品質管理の方法に違いがあります。両者とも品質管理に対する基本的な考え方は同じですが、ウォーターフォール開発では機能が利用可能になるのは開発終了時です。 一方アジャイル開発は、開発中であっても段階的に(機能ごとに)テストや評価ができるため、品質の確認時期に違いがあるのです。このような開発手法による品質管理の方法を理解していないと、テスト計画のスケジューリングを誤り品質トラブルの要因となってしまいます。 上記のような問題は国内の開発においても十分注意する必要がありますが、オフショア開発を委託する場合には以下のような問題にも注意する必要があります。 オフショア開発の委託時に注意すべきこと 言葉の壁によるコミュニケーション不足 オフショア開発を海外に委託する場合、一番問題となるのが言葉の壁によるコミュニケーション不足でしょう。先述のように発注側と受注側のレビューが十分でないと「仕様通りの成果物が上がってこない」、「修正を指示したのに直っていない」などという問題が発生しがちです。 ただし、このようなコミュニケーション不足は国内のシステム開発においても起きる可能性があるので、特にオフショア開発特有の問題というわけではありません。言葉の壁を解消する方策が重要ということです。 国民性や商習慣の違い 国民性や商習慣の違いによる問題も、オフショア開発においてはよく指摘されることです。ただしこちらも、ほとんどの場合はコミュニケーションやレビューの頻度を調節することによって解決できる問題です。日本国内においても企業ごとに文化の違いがあるように、開発手法や品質に対する考え方を開発の開始時に合わせておくことが重要です。 課題を解決し品質低下を防ぐには? ITシステム開発の品質低下を防ぐには、以下のような事項に加えオフショア特有の課題を解決する対策が必要です。 開発前の準備(仕様決定、要件定義、テスト条件決定) 上流工程や初期段階での要件定義と合同レビュー テスト計画の策定と共有 プロジェクト管理の徹底 高いスキルを持つPM(Project Manager)の起用 品質評価基準の早期策定と共有 プロジェクト管理ツールの適用 オフショア開発の品質低下を防ぐ方法 コミュニケーションの障壁を取り除く 言葉の壁を取り除くには、ブリッジエンジニアを導入することが最適解です。担当者が英語でのコミュニケーションが問題なければ必要ないかもしれませんが、ネイティブのブリッジエンジニアを起用することで、国民性や商習慣の違いなどについてもカバーしてくれることでしょう。また、仕様書は英語化するなどし、共通のフォルダに格納していつでも閲覧できるようにしておくことが大切です。 曖昧な表現や口頭での伝達を避ける たとえ国内であっても、曖昧な表現で重要事項を伝達していては守られることがありません。これはオフショアでも同様で、重要事項を伝える場合は曖昧な表現を避け、口頭ではなく文章で指示しましょう。また、品質マニュアルや守るべきセキュリティの内容を明文化(英語)しておくことも大切です。 オフショア開発で高い品質を維持するためには オフショア開発では、開発人員を固定して効率的に開発できるラボ契約とアジャイル開発の組み合わせが最適な開発方法です。先述のようにアジャイル開発は品質管理の方法が従来とは違うので、その違いをしっかり理解しているオフショア開発ベンダーを選ぶことが高い品質の維持につながります。 日本企業の開発案件に豊富な経験と実績があるオフショア開発ベンダーと契約する オフショア開発の優れたベンダーと契約するためには、以下のような項目をチェックすることが重要です。 日本企業のプロジェクトを多くこなしているオフショア開発ベンダーを選ぶ。案件は数だけではなく、規模や内容もチェックする。 品質維持のノウハウを多く持っているかを確認する。また社内の品質管理チームが機能していることも確認しておく。 どのようなエンジニアが在籍しているかを確認する。コミュニケーション能力や管理能力の高いPMやブリッジエンジニアの在籍数も確認する オフショア開発の依頼は現地の事情に詳しい企業に オフショア開発はその特性から課題もありますが、それらは克服可能です。ブリッジエンジニアや明確な指示など、コミュニケーションの問題に対する対策を講じることが重要です。 また、一つの対策として、現地に本社を持つオフショア開発会社に依頼するのも有効です。現地の事情に詳しい企業ならば、国民性や商慣習の障害を回避し、高品質なシステム開発を実現できます。これらのアプローチを組み合わせることで、オフショア開発による高品質なITシステム開発を期待できることでしょう。 無料eBookのダウンロード チェックリストでわかる 失敗しないオフショア開発会社の選び方 オフショア開発会社選びの準備から開発開始まで、多様な角度からチェックポイントを網羅。チェックリストを活用して効率的な選定や基準作りに役立ちます。 今すぐダウンロード(無料)

28/02/2023

3 minutes

オフショア開発でコミュニケーションの壁を乗り越える基本的な手段とは?

オフショア開発において、言葉の壁や文化の違いは円滑なコミュニケーションの障害となることがしばしばあります。異なる母国語や習慣を持つエンジニアとの間での誤解を回避し、プロジェクトの成功を確保するためには、適切な対策が不可欠です。本記事では、オフショア開発におけるコミュニケーションの壁を乗り越える上でもっとも基本的なオフショア開発の形態や方法について解説します。 適切なオフショア開発形態を選択する 適切なオフショア開発形態を選択する まずは、オフショア開発をどのような形態や方法によって行うかによって、コミュニケーションのしやすさが大きく異なってきます。オフショア開発の形態は、各企業やプロジェクトよってさまざまです。 代表的には、以下のような形態があります。発注元の企業は、プロジェクトの性質や要件、予算などを考慮して、最適なオフショア開発方法を選択する必要があります。 オフショア開発(オフショアリモート開発) 発注元の国や地域とは異なる国や地域に開発を委託し、プロジェクトの進行をオンラインツールやコミュニケーションプラットフォームを通じて遠隔で管理します。クライアントと開発チームは物理的には近くにいないため、リモートでのコミュニケーションが主要な手段となります。 オフショア開発(オフショアリモート開発) 開発チームや担当者がプロジェクトの発注元の国や地域に派遣され、クライアントの現地で作業を行います。オンサイトのメンバーは直接クライアントとコミュニケーションを取り、要件の理解やフィードバックの収集を容易にします。 ハイブリッドアプローチ 開発チームや担当者がプロジェクトの発注元の国や地域に派遣され、クライアントの現地で作業を行います。オンサイトのメンバーは直接クライアントとコミュニケーションを取り、要件の理解やフィードバックの収集を容易にします。 オフショア開発センター オフショア開発センターは、発注元の国や地域とは別の国や地域に、独立した開発拠点を設置する方法です。これにより、外部の開発会社とは独立した開発チームを持つことができます。クライアントが自社の拠点を持つことで、プロジェクトのコントロールとセキュリティの管理をより直接的に行うことができます。 言葉の壁や文化の違いを乗り越えて、コミュニケーションを円滑にする方法 1. 日本語でコミュニケーションできるブリッジSEを必ずアサインする オフショア開発チームと日本語でコミュニケーションを行おうとする場合は、しっかりと日本語で技術的なコミュニケーションができる人材が在籍しているオフショア開発企業を選定する必要があります。実際にメンバー選定する場合には、どの程度の水準でコミュニケーションが可能なのか、実際に面談するなどして確認しておきたいところです。 特に、日本企業のプロジェクトでは、確定した設計仕様の変更などが生じるケースがありますが、こうした場合にはコミュニケーションは特に重要となります。例えば、日本語で何とか会話出来るというレベルと、きちんと意思疎通できて安心感のあるコミュニケーションができるレベルでは、開発現場においてその差はとても大きなものとなるはずです。 オフショア開発企業によっては、日本語を流ちょうに話すものの、技術的知識やスキルが少ないコーディネーター(またはコミュニケーターと呼ばれる人)をブリッジとしてアサインするケースがあります。そのようなケースでは、技術的な意思疎通がうまく得られないという問題が生じ、コミュニケーションロスに苦戦する可能性があります。 一方、日本企業向けに特化した日本企業とのプロジェクトの経験豊富なオフショア開発企業であれば、オンサイトで日本在住経験があり日本語レベルが高く、日本文化や日本型の開発手順への理解度も高いSEが在籍しており、日本人SEが在籍している場合もあります。こうしたブリッジSEはドキュメントも日本語で作成しますので、会話や文字による意思疎通にも安心感が得られるはずです。 また、こうした日本企業向けのオフショア開発企業では、オフショア現地においても従業員の教育体制を整えて日本語教育を行っており、日本語能力試験のN1、N2に合格するレベルのコミュニケーションができる多数のエンジニアが在籍しています。 2. オフショア開発会社のエンジニアにオンサイト常駐してもらう オフショア開発における「オンサイト」には、多くのメリットがあり、コミュニケーションに関連するメリットが重要です。以下に主なメリットを列挙します。 コミュニケーションの円滑化 オンサイトメンバーが現地にいることで、クライアントとのコミュニケーションがスムーズに行われます。リアルタイムで会話をすることで、要件や課題の理解が深まり、ミスコミュニケーションのリスクが低減します。 フィードバックと変更への対応 オンサイトメンバーが直接プロジェクトの進捗を把握できるため、クライアントのフィードバックや要件変更に対応するのが容易です。迅速な対応により、プロジェクトの品質向上やタイムリーな納品が可能となります。 現地の文化や業界知識の理解 オンサイトメンバーがクライアントの現地にいることで、その国や地域の文化や業界のニーズをより深く理解することができます。これにより、より適切なソリューションの提供が可能となります。 信頼関係の構築 直接会って顔を合わせることで、クライアントとオフショア開発チームとの間に信頼関係が築かれやすくなります。信頼関係があると、プロジェクトの協力的な進行や問題の解決が円滑に行われるでしょう。 グローバルな視野の拡大 オンサイトメンバーが直接プロジェクトの進捗を把握できるため、クライアントのフィードバックや要件変更に対応するのが容易です。迅速な対応により、プロジェクトの品質向上やタイムリーな納品が可能となります。 ただし、オンサイトにはコストや時間の面での課題もあるため、企業はオフショア開発とオンサイトの組み合わせを検討し、プロジェクトの要件や条件に応じて最適な方法を選択する必要があります。 3. 日本側のPMがオフショア現地に常駐してマネジメントする 日本側のプロジェクトマネージャー(PM)がオフショア現地に常駐することには、いくつかの重要なメリットがあります。特に、コミュニケーション面においては以下のようなメリットがあります。 コミュニケーションの円滑化 現地にいることで、リアルタイムで会話をし、課題や進捗状況を共有できるため、ミスコミュニケーションのリスクが低減し、開発チームとのコミュニケーションがスムーズに行うことができます。 要件の適切な伝達 直接顔を合わせることで、誤解を防ぎ、要件の理解度を確認することができるため、要件やニーズをより正確に伝えることができます。 フィードバックの収集と即時の対応 オフショア現地にいることで、プロジェクトに関する質問や修正が即座に行われることが可能になります。フィードバックを容易に収集し、必要な変更に素早く対応できます。 文化的な違いの理解 オフショア現地の文化やビジネス慣習をより深く理解できます。これにより、開発チームとの間に信頼関係が構築され、円滑なコミュニケーションが促進されます。 緊急時の対応 緊急の課題やトラブルに迅速に対応できます。時間差がある場合、オフショア開発チームが問題に対処するのに時間がかかることがありますが、PMが現地に常駐することで、素早い対応が期待できます。 このように、PMがオフショア現地に常駐することで、コミュニケーションの円滑化やプロジェクトの成功に寄与します。ただし、常駐には様々なコストや準備時間の面での課題もあるため、プロジェクトの要件や条件に応じて、最適なアプローチを選択する必要があります。 4. 英語を共通言語にする 母国語としないアジアの国々も含めて海外のオフショア開発会社とコミュニケーションを取る際、共通の言語として英語を選択する理由は複数あります。 英語は世界的に広く普及しており、アジアの多くの国でも教育やビジネスで使用されているため、異なる母国語を持つ相手と円滑なコミュニケーションを図るのに適しています。 また、アジアの国々がグローバルなビジネス展開を進めているため、国際取引やプロジェクトにおいて英語が共通の言語として選ばれることが増えています。 さらに、英語を共通言語とすることで、文化的な違いを克服し、より明確なコミュニケーションが可能となります。アジアには多様な言語が存在するため、特定のアジア言語を共通言語とすると相手とのコミュニケーションが難しくなることもあります。しかし、英語は多くのアジアの国々で使用されているため、より広範な相手とのコミュニケーションが可能です。 […]

28/02/2023

3 minutes

失敗事例から学ぶ、オフショア開発成功への9つのヒント

昨今、ITシステム開発の現場では、オフショア開発という選択肢は一般的となりました。しかし、中には当初に想い描いた通りにはプロジェクトを進めることができなかったという声も聞こえてきます。そこで、本記事では、オフショア開発の失敗事例から学ぶ、失敗原因や成功へのヒントにについて紹介します。 オフショア開発で陥りやすい失敗事例 まずは、オフショア開発での失敗事例としてよく耳にする話題をいくつかご紹介します。 失敗事例1:仕様伝達に失敗し、納期が遅延してしまった 発注元の担当者は、発注先のオフショア開発会社に日本語ができるブリッジSEをアサインしてもらい、仕様と作業内容を文書にまとめてブリッジSEとミーティングを行って説明した。 ミーティングは日本語で行ったが、ブリッジSEも要求をよく理解してくれているように見えたため、日本語のコミュニケーションでも問題ないと判断していた。その後の進捗状況の確認でも、ブリッジSEからの報告は常に「問題なし」という回答があり安心していた。 しかし、次第にブリッジSEから1日に数回の質問が毎日のように届くようになった。担当者はその質問への回答作業に追われる日々となってしまい、レビューによる品質確認を行う時間を確保することができぬまま納期を迎えてしまった。 これは、オフショア開発会社への仕様の伝達がうまくいかずに作業の遅延が発生してしまったケースです。原因は、発注先の窓口となるブリッジSEとの日本語による意思疎通ができたため、仕様伝達のハードルは低かったと思い込んでしまったことにあります。 しかし、発注先のオフショア開発会社の窓口となるすべての人が技術面について知識を持っているとは限りません。 中には、主に通訳を役割とするコミュニケーターと呼ばれるべき人材にブリッジSEという肩書きを与えているオフショア開発会社も存在します。 このような失敗を回避するためには、窓口となるブリッジSEの日本語の言語能力の確認にとどまらず、そのブリッジSEの職務範囲や職能まで確認しておくことが大切です。 もし、オフショア会社の窓口担当者の技術的な内容の理解度に不安を感じる場合には、そのコミュニケーターを介して仕様伝達を行うのではなく、直接現地のSEと英語でやりとりを行う方がお互いの理解度を確認しながら進めることができるでしょう。その方が結果的には二度手間の発生を抑制でき、間接コストも削減することができるでしょう。 失敗事例2:度重なる仕様変更により、コストが増大してしまった 全体の仕様が確定しておらず、一部の仕様は暫定的なものとして見積を行い、そのまま見切り発車で発注した。 暫定部分は、発注後に五月雨式に仕様伝達を行ったものの、その後も仕様変更が繰り返され曖昧な仕様が残ったままだったため、ドキュメント作成やメールやチャットなどの仕様伝達の工数が増大した。 また、開発現場でも仕様の混乱や手戻りが発生し、当然スケジュールも大幅に遅延して収拾がつかなくなった。そのため、開発途中でブリッジSEと仕様確認の仕切り直しが必要となった。 その結果、コミュニケーションと開発の工数が増大し、最終的には、見積金額を大幅に超えてしまった。 これは、仕様が曖昧なまま発注したうえに仕様変更を繰り返した結果、コストと納期がオーバーしてしまったケースです。国内開発の発注においても発生し得るような例ですが、走りながら徐々に要求仕様を決めていくというやり方は、典型的な日本型の開発アプローチと言えます。 オフショア開発をこのような国内開発の感覚で行ってしまうと、信頼関係にひびが入ってしまい想像以上にトラブルを拡大させてしまう危険性があります。信頼関係がなければプロジェクトが失敗する確率は限りなく高くなるでしょう。そうなれば、金銭面でもトラブルに発展しまう可能性があります。 仕様を変更すること自体は問題ないのですが、問題は仕様変更をスムーズに進めるための段取りとコミュニケーションにあると考えられます。オフショア開発ベンダー側の状況を考慮して伝達することが大切です。 失敗事例3:日本語での意思疎通の失敗 ある過去に一度、開発を依頼したことがあるオフショア開発会社に、新規のプロジェクトを依頼した。初めて発注した際は、日本語でのコミュニケーションに多少の不安を抱いていたものの、アサインされたブリッジSEがとても優秀で、日本語スキルや技術レベルは事前の説明通りにレベルが高く、プロジェクトは無事成功を収める事ができた。 そこで、同じオフショア開発会社に別のプロジェクトを追加発注したところ、アサインされたブリッジSEの日本語スキルが低く、前回のブリッジSEと比較すると大幅に劣っていた。 事前に、コミュニケーション言語は日本語で行うとの取り決めていたものの、メールで質問を受け付けても一体何を伝えたいのか理解できないようなことがかった。そこで英文でのやりとりも試してみたが英語もさほど得意ではないらしく、結局、意思疎通はなかなか改善せず苦労した。 オフショア開発会社からの事前説明での「日本語コミュニケーションが可能な優秀な技術者が在籍している」との話に期待したところ、その事前期待が結果と異なっていて失敗したケースです。 たしかに、最初のプロジェクトにアサインされたブリッジSEは期待以上の能力を発揮してくれたため、次のプロジェクトでも期待するのは自然なことです。 初めての取引の際は、どこのオフショア開発会社もエース級の人材をアサインしてくるとうのはよくあることです。とはいえ、そのように優秀な人材が社内に多数在籍していて、発注者が希望するタイミングでいつでもアサインできるかどうかはまた別の話です。 このケースでは、エース級の人材は少数しか在籍していなかったり、または優秀な人材は別のプロジェクトに参加していて自社の案件にはアサインできなかったのかもしません。 顧客の要望に応じて、最適な人材を安定的にアサインできるかどうかは、オフショア開発会社それぞれの事情によって大きく異なります。特に、人材の豊富さは事業規模が大きいオフショア開発会社の方が有利でしょうし、また特定分野の人材であれば、小規模でもその分野に専門特化したオフショア開発会社なら最適な人材を確保できるかもしれません。 なお、日本市場に注力して事業を展開しているオフショア開発会社では、社内で日本語教育を行っていることは珍しくありません。しかし、その教育内容や方法も企業にとってさまざまで、営業やブリッジSEに限定して教育している場合もあれば、その他のエンジニアも含めて行う場合もあります。 また、日本語認定資格の取得を奨励し、資格取得手当てなどの制度を設けている企業もありますし、採用段階で選考基準として日本語のスキルレベルの高い人材や、日本国内でのビジネス経験や日本企業とのプロジェクト経験がある人材を多く採用しているケースもあります。オフショア開発会社選びの際には、そのような日本語教育のへの取組み状況状況も確認しておくとよいでしょう。 オフショア開発を成功に導くための9つのヒント 先述の陥りがちなオフショア開発での失敗事例のような問題は、実は日本国内での日本人エンジニアによる開発でも起こり得ることです。オフショア開発の現場では、とりわけ言語、文化、国民性の違いによるコミュニケーションのギャップが問題を生じさせる原因となる場合が多いです。そこで、ここではオフショア開発での失敗を回避し、開発プロジェクトを成功させへと導くための9つのポイントを紹介します。 1. コミュニケーション言語のスキルレベルを確認する 日本語や英語など、オフショア開発会社とのコミュニケーション言語を取り決める際には、コミュニケーションに支障がない程度の言語スキルを持っているかを事前に確認しましょう。 例えば、コミュニケーション言語を日本語にすると取り決めた場合、そのスキルレベルを客観的に把握する一つの目安としては日本語検定試験(JLPT)があります。日本語能力試験は、日本国内および海外で日本語を母語としない人を対象として日本語の能力を測定し、認定することを目的として行う試験です。試験はN1からN5レベルまでの5段階に分けられており、N1は最も難易度が高くなっています。 N1は幅広い場面で使われる日本語を理解することができるレベルで、N2は日常的な場面で使われる日本語の理解に加え、より幅広い場面で使われる日本語をある程度理解することができるレベルとされています。そうしたことから、外国人を採用する企業では、在留資格・ビザ取得の観点からもN1〜N2を選考基準としている場合が多いようです。 N1は日本語ネイティブでも満点を取るのが難しいレベルの試験と言われていますので、N1保持者であればビジネスシーンでの活躍を期待できるでしょう。しかし、必ずしもすべてのエンジニアがN1レベルを取得している必要はなく、担当業務に合わせて日本語能力がどの程度必要なのかを基準とするのがよいでしょう。オフショア開発の場合では、ブリッジSEの日本語能力は重要ですが、オフショア国現地で働くエンジニアには必ずしも日本語スキルは必要とされません。 なお、日本語能力試験の問題は文章読解と聴解のみのため、書く、話す、といった能力は測ることはできません。そのため、ブリッジSEをアサインする際には、面接やディスカッション、メールのやりとりなどを取り入れると良いでしょう。 2. 日本との文化や国民性の違いを認識し、明確に意思表示する 日本と海外では、考え方や仕事の進め方も異なります。日本では、物事をこと細かく伝えなくても相手は当然のごとく察してくれるだろうと期待してしまいがちです。しかし、海外では、相手に明確な意思表示をしなければ伝わらないコミュニケーション文化を持つの国の方が多いです。むしろ、相手に繊細かつ高度な感性を求める日本式コミュニケーションの方がガラパゴス的と言えるかもしれません。 こうした文化や国民性の違いによって意思疎通や相互理解がうまくいかなくなってしまうと、結果として品質低下や手戻りが発生してしまうことがあります。 本側から物事を依頼する時は、目的(なぜやるのか)、スコープ(何をやるのか)、タイム(いつまでに必要か)、コスト(いくら以内でやるのか)を可視化してプロジェクトの目的を一致させ、認識の食い違いを防止することが大切です。 また、開発先の文化や国民性を理解しておくと、誤解や思い違いを少なくできます。時にはやり方を日本式に合わせてもらうように強制するばかりではなく、お互いに文化が違う国であることを理解し歩み寄る姿勢も大切です。 3. 情報共有や取り決めは、可能な限り文書化する 日本では、話し手と聞き手の間に共有されていることが多いため、行間を読み、暗黙的なコミュニケーションが成立しやすい文化といえます。また、日本では会議の場での共有や明確化をすることが多くなりますが、口頭による伝達や暗黙知の共有が含まれるため文書化しにくかったり、伝達する内容が多く労力がかかるという理由から、文書化しないケースが度々見られます。 一方、海外では、共有する情報や経験が少ないため、文章や図解、数値などによって、誰が見ても理解できるような形式で客観的に表現された形式知によるコミュニケーションが行われること多々あります。これは、個人主義的な文化の国ほど強くなえる傾向が見られます。そのため、母国語が異なる国のメンバーと日本語で業務を進めるオフショアの場合には、仕様等を確実に文書化してデータベースで共有するのが望ましいでしょう。 過去にオフショアで失敗を経験した日本企業による教育指導的な役割によって、日本企業とのプロジェクト経験が多いオフショア開発会社ほどそのような体制が整っています。こうした取り組みは、転職率の高いオフショア開発の課題をカバーするためにも有効です。 また、口約束で決まったと思っていたことが後になって変更となり、問題になることがあります。決めごとは合意と承認があって成立するものですので、可能な限り文書化して相互に承認ルールを確認し徹底することが大切です。 4. 仕様変更と品質レベルに関する考え方の違いを意識する 日本では、度重なる仕様変更が生じても、それに対応することが当然であると考えられがちです。一方、オフショア開発では、契約締結後に仕様変更を行うことは一般的とは言えません。そのため、仕様変更を巡ってはトラブルが発生する可能性があります。 […]

メールマガジンの登録 個人情報保護方針についてはこちらを必ずご一読ください

デジタルトランスフォーメーションに関する専門家の見識やイベントの最新情報を受信トレイに直接お届けします

失敗事例から学ぶ、オフショア開発成功への9つのヒント