オフショアアプリ開発成功の絶対条件「仕様書」を書く際の注意点

オフショア開発を成功させるためには、その出発点もといえる仕様書・設計書の作成をしっかりと行わなければなりません。しかし、オフショア開発における仕様書・設計書の作成は、国内だけで業務を行う場合には生じることのない問題が伴うこともあるため、オフショア開発ならではの仕様書・設計書の作成方法を知っておくことが非常に重要となります。
今回は、近年オフショア企業を活用して行われることが多いアプリ開発における仕様書・設計書作成時の注意点を解説しますので、アプリ開発におけるオフショア開発をご検討中の方はぜひ参考にしてみてください。

言葉の壁を常に意識する

オフショア開発において問題を生じさせる原因となりやすいもののひとつが言葉の違いです。そして、このことによって生じる「言葉の壁」は、オフショア開発における仕様書・設計書の作成時にも常に意識する必要があります。
例えば、多くの場合オフショア企業へ業務を委託する際には、日本企業側が仕様書・設計書を作成し、その内容に従って現地の技術者がプロジェクトを進める形となります。よって、仕様書・設計書が日本語で書かれていると現地の技術者はその内容を理解できません。このことから、オフショア企業へ業務を委託する際には日本企業側で作成した仕様書・設計書を現地の言葉へ翻訳する必要が生じ、そのための人材の確保やそれを見越した納期の設定などをしなければなりません。また、このような仕様書・設計書の作成時に生じる翻訳作業にかかる手間を省くためには、表やフローチャートなどを多用し、不要なテキストは削除するといった工夫をすることも求められます。

仕様の変更が生じないよう、最終確認を入念に行う

オフショア開発では言語の違いによるコミュニケーションの難しさや、距離が離れているといった理由から双方間での連絡を取るのに手間がかかり、イレギュラーな要件が発生するとすぐに対応ができなかったり、納期が大幅に遅れてしまったりといったトラブルが生じてしまうことがあります。
特にオフショア開発の方向性を決める上で重要な仕様書・設計書に変更が生じてしまうと、そのことをオフショア企業側へ通達することや、変更した仕様書・設計書の翻訳においてより多くの手間がかかってしまうため注意しなければなりません。
また、このことは複雑な仕様書・設計書を作成することもあるアプリ開発においてはなおさらであり、オフショア企業側がスムーズに業務を進められるよう、日本企業側は仕様や設計に変更が生じないよう、最終確認までしっかりと行ってから委託をするようにしなければなりません。
一方、このような仕様書・設計書の変更が生じてしまった場合、翻訳やオフショア企業への通達をしっかりと行うことだけでなく、納品物をしっかりと確認しなければならないという点についても十分な認識が必要です。これは仕様や設計が変更になったにもかかわらず、納品物が当初通達した仕様・設計のままになっていたというケースが少なくないためであり、それによるさらなる納期の延期などを防ぐという目的があります。
以上のことから、変更になった仕様書・設計書の翻訳、オフショア企業への通達、納品物の確認という手間のかかる作業が大幅に増えてしまうことを防ぐためにも、仕様書・設計書に変更が生じてしまわないよう注意する必要があります。

技術者の認識不足には特に注意が必要

オフショア企業側では多くの技術者を雇い、受託したプロジェクトを進めていきますが、すべての技術者が仕様書・設計書の内容をよく理解していないと納品物の精度に問題が生じることがあります。特にトレンドの移り変わりが早いアプリの開発においては、できるだけ早く納品してもらうために、とにかく多くの技術者を雇うことがあるため、仕様書・設計書の内容を理解してもらうことの徹底は不可欠といえます。
一方、オフショア開発において仕様書・設計書の変更などのイレギュラーな事態が生じると、オフショア企業では技術者の人数を増やすことで納期に間に合うよう対応することがあります。しかし、これによって後から加わった技術者は仕様書・設計書の内容を十分に理解していないことも多く、アプリの開発においてはそのことが重大な脆弱性を生み出す原因となる危険性もあります。
また、近年オフショア開発が盛んに行われている東南アジアの国々ではIT関係の技術者の育成にも力を入れており、そのような国々のオフショア企業ではインターンなどの技術が十分でない人材でも経験を積ませる目的で採用していることもあります。特に大規模なオフショア企業では、インターンなどの人材を含めた大人数の技術者を確保することでより規模の大きな案件に対応していることもあり、プロジェクト自体の規模が大きくなりがちなアプリ開発では技術者の技術レベルも確認し、仕様書・設計書の内容をしっかりと理解できるのか否かも見極めなければなりません。

問題が生じたら本来の目的をよく考える

オフショア開発においてさまざまな問題が生じてしまうと、オフショア開発本来の目的を見失ってしまいがちです。よって、このことを避けるためにもオフショア開発で問題が生じたら原点に立ち返り、なぜオフショア開発を選択したのかを自問してみることも重要です。
例えば、オフショア開発には人件費の安い国の優秀な人材を多く雇い、コストを削減するという目的がありますが、仕様書・設計書の変更による業務の増加などの問題が生じると、つい多くの人材を新たに雇用することで、それらの問題を解決しようとしてしまいがちです。しかし、これによりさらに多くの人件費がかかってしまうと本末転倒となってしまいます。
このことから、オフショア開発において問題が生じた際にはコストの削減という目的を常に意識し、場合によっては問題を解決するのではなく、コスト削減を優先して敢えて問題を回避する方法を考えてみるのもよいでしょう。
一方、オフショア開発にはIT系の人材の育成に積極的な国々にいる優秀な人材の力を借りるという目的もあります。しかし、プロジェクトの内容によっては必ずしも多くの優秀な人材を必要としない場合もあり、日本側の人材だけでも十分に対応できることもあります。
このことから、オフショア開発を行うか否かは初めから決めてしまうのではなく、最初に仕様書・設計書を作成し、その内容に応じてオフショア開発の必要性について検討するという手順を踏むのが有効です。また、そのためには日本国内でどれくらいの技術者を確保できるのかといったことも知っておくとよいでしょう。

オフショア開発において仕様書・設計書は、プロジェクトの方向性を決める上で不可欠な「地図」のような存在といえます。だからこそ仕様書・設計書には常に高い精度が求められ、できるだけ変更などが生じないよう注意することも重要となります。また、より多くの技術者が関わることとなるオフショア企業を利用したプロジェクトでは、「地図」である仕様書・設計書の内容をそこに関わるすべての技術者が理解していることも重要となるため、日本企業側には言葉の壁などを意識した分かりやすい仕様書・設計書を作成する努力をすることが求められます。

Top