|
■ ベトナム・オフショア開発事例 実践企業に聞く - 株式会社フルマークス

株式会社フルマークスはベトナムのホーチミン市で日本人が経営するソフトウェア開発企業、インディビジュアルシステムズ(以下IVS)とのオフショア開発を実施している。実施してみてわかった課題と明確な効果とは何か。フルマークスのエンジニアである大久保氏(写真左)、代表の古舘氏(写真中央)、取締役の杉山氏(写真右)に聞いた。
|
 |
| もくじ |
- フルマークスの概要
- IVSとのプロジェクト概要
- 自社の設計書は誰にでも通用する設計書か
- 現場の反発をおさえ、現場のモチベーションを上げるオフショア開発とは
- プロジェクト中の課題と苦労
- 最近の国内技術者からなくなりつつある、IVS技術者の素材の良さとは
- 武器がいくつもできた
- ベトナム人技術者の設計とテストファースト
- IVS 浅井氏、根岸氏からのメッセージ
|
-- フルマークスの概要を教えて頂けますか?
私たちは、2005年にできた、システムインテグレーションやシステムコンサルティングを請け負う会社です。従業員は契約社員を入れて40名弱です。大手企業や大手ベンチャーから抜け出して、気の合う者同士で始めた小さなベンチャー企業ですが、フットワークの軽さや適応力、強力な仲間意識を武器に、少しずつ成長してきた会社です。Webアプリケーションの開発実績が豊富なことが特徴です。
-- フルマークスがIVSと共に実施したプロジェクトの概要を教えて頂けますか?
まず1案件目は、オンラインショップ管理ソフトの機能拡張です。IVSに担当頂いたのは、クライアントアプリケーションの実装をC#で、2人月、期間は1ヵ月間でした。フルマークス側では2人、IVS側でも2人の体制でした。
2案件目は、レンタルショップのバックヤード管理アプリケーションの機能開発です。IVSの担当はWebアプリケーションの実装をJava(Struts2、Spring)で、14人月、期間は2ヵ月間です。フルマークスでは、1人がPMとして要所を抑え、もう1人が設計、実装、仕様調整などを全般的にあたりました。
3案件目は、BtoC不動産サイトの全面更改です。IVSはWebアプリケーションの実装をPHP(CakePHP)で、7人月、期間は2ヵ月間担当しました。フルマークスは1人が設計と管理を担当します。
-- オフショア開発の検討を始めた時期ときっかけを教えてください。
2006年ごろからだったと思いますが、たまたま韓国人、中国人と一緒のチームで実施するプロジェクトがありました。フルマークスのメンバーが作成した設計書に対して、彼らが実装を担当するという分担でした。この経験を通じて、2007年の夏ごろには、外国人とのプロジェクトの成果を狙っている通りに出せる事がわかりました。
その際に、純粋なマネジメントの興味から来た発想なのですが、同じ場所にいる外国人に実装してもらうだけではなく、国外に設計書を出して、成果を出せるのではないかと考えました。つまり、フルマークスの作る設計書が、誰にでも通用するものなのか、という興味が湧いてきました。
フルマークスはWebアプリケーションの仕事が多いのですが、Webアプリケーションの実装方式には定型的なものが多いです。つまり、設計で整理がきちんとできていれば、オフショア開発の成果が出しやすいと考えましたし、実際に今もそう考えています。 
-- IVSをベトナムのパートナーとして選んだ理由は何でしたか?
2点あります。
まず国内に日本人スタッフの体制があること。そして、事前にオフショアでのプロジェクト推進状況を確認させていただけたことです。
これらによって、プロジェクトを一緒に実施する上でのハードルが低いことを強く実感しました。
特に2点目は大きかったと思います。
設計書をどのように、どれくらい書けば良いのか、課題をどのように管理するのか、障害をどのように管理するのか、翻訳の流れがどのようになっているのかなど、実際のところを、実際の設計書や資料で、見せてもらって構わない範囲で確認できました。 設計書を作って、実装して、テストに入って、という、フルマークスが実施している開発スタイルが、IVSでもしっかりしていると共に、フルマークスとスタイルも似ていて、うまくできる下地ができていると感じました。
ただし実は最初と2番目の案件に関してはIVSの持ってきた案件で、上流工程を担当できるような日本企業を探していたIVSに対して、フルマークスがきれいに適合した、という事情があります。
-- 実際に案件が始まる前に確認するドキュメントで、重視したポイントは何ですか?
使用言語と完成度です。
まずは使用言語ですが、「フルマークスの都合として英語では書けない」ということを心配したのですが、「IVSが翻訳するので日本語で問題ない」ということで安心しました。
それからドキュメントの完成度については、例えば単体テストの段階で起きた障害の起票のしかたがうまくできていていることがわかりました。国内の会社さんでも、そういう点がきちんとできていない会社も多いなか、非常に安心しました。
| ■ 反発をおさえ、現場のモチベーションを上げるオフショア開発とは |
-- オフショア開発に対して、経営層が推進する気持ちと現場の反発が起こる会社も多いですが、フルマークスではいかがでしたか?
それが、全くなかったです。
逆にIVSのベトナム人技術者とのコミュニケーションが、想像していたよりも上手く取れたということにびっくりしました。
また逆に、設計に興味があるメンバーを持ってくると、非常にモチベーションが上がります。つまり、設計の意識として、なるべく「ブレ」のない設計書を出すことが必要と考えたのですが、「誰にでも通じる設計ってどういうものだろう?」ということを考えられる人がまさにオフショア開発を担当することで、反発が出るどころか、モチベーションが上がる、という訳です。最初の案件には、そういうメンバーを持ってくると効果が高いです。
-- オフショア開発に向く設計書をフルマークスが作っているということですね。フルマークスの設計書はどういったものなのでしょうか?
フローが多いです。UMLも部分的にありますが、クラス図などは書かず、「処理の流れがこういうものですよ」ということを絵を多用して表現します。
-- プロジェクト中に苦労した事・予想外の事はありましたか?
課題管理について、現在の課題のフォーカスがどこか、何をもって解決とするかが、チャットによる会話においては理解しあえたと思っていても、認識がずれていることがありました。 最初の案件で、
フルマークス 「こうこうこういう仕様です。理解できますか?」 IVS 「わかりました」 フルマークス 「ではお願いします」
と、お願いして1日後、2日後、「あれ、どうなったかな?」と思って確認してみると、
IVS 「こうこうこういうことは分かりましたが、まだGoだとは思いませんでした」「優先度が高いとは思いませんでした」
ということが最初の案件で2、3回ぱぱぱっと続きました。
チャットの会話で一度合意した事も、そこからはすべて台帳で管理するようにした所、うまく行き始めました。課題の大小によらず、フォーカスとゴール、またその解決期限を設定していくことが大事でした。このやり方を確定させるまではプロジェクト推進で苦労をしました。
-- 管理の手間は増えましたか?
導入する仕組みを考える、確定するまでは、少し余計に手間がかかりましたし、苦労もしました。ですが、一度運用してからは、もちろん何もしないよりは管理工数という手間はありますが、トータルで見た場合は、手戻りや確認の工数は減っています。
-- 管理の工数は、国内パートナーと国外パートナーとで、どの位の差がありますか?
感覚ベースでは、国外の方が2割増し位、国内よりも手間がかかると感じます。トータルではコストメリットが出る範囲です。
-- 管理という意味では、2番目の案件が規模が大きくなり、最初の案件とは勝手が違ったのではないでしょうか?
はい。
最初の案件では、任せる部分は実装で2人月、担当が1人だけのような案件でしたので、チームマネジメントの必要性は小さかったのですが、2案件目は14人月で、チームとして動く必要性のあるプロジェクトです。チームで動くにあたり、進みの良い人、悪い人がいます。どこに注力するか、どこを優先的に解決していくか、ということをしっかり認識する必要があるプロジェクトでした。
進捗管理の方向性だけ見れば、国内のパートナー会社に委託するような際と同じようにやろうと思っていたので、特に手間とは考えませんでした。実際に方向性は間違っていなかったと思っていますが、ベトナムの現場の方は25、6歳位の年齢で、管理されてチームで動く事には慣れていないように感じられました。その点では苦労しました。ベトナムに出張した時に、ホウレンソウなどの仕事の進め方も伝えたことがあります。とは言え、ここはオフショアの問題というよりは年齢の問題だと思います。国内でも若い人は同じですから。
-- もう少し現場レベルでの問題はありましたか?
オフショアで実装する部分と、国内で実装する部分の実装方法にずれがあり、調整に苦労しました。これも実はオフショアの問題ではないのですが、標準化ができていないとこのようなことが起こるということを実感しました。
| ■ 最近の国内技術者からなくなりつつある、IVS技術者の素材の良さとは |
-- プロジェクトを振り返って、IVSの良いところを教えてください。
次の3点があります。 1点目、技術者が優秀なこと。実装能力は国内プログラマーよりも高い部分があります。 2点目、リーダーが日本語に堪能なこと。コミュニケーションで困ることはほとんどありません。 3点目、粘り強いこと。国民性の部分かと考えていますが、過去一緒に仕事をした海外の方に比べて、細かい点まで、良く考えて検討・行動しています。
以下少し説明します。まず1点目についてですが、実装するにあたって、適切な言語仕様を理解して、適切なAPIを使えることが必要であったり、また、セキュリティや暗号化の仕組みを素養として抑えておく必要があります。その点で、IVSの技術者は非常にレベルの高い大学を出て仕事をされていて、そういう高い知識を持った層がプログラミングをしているように実感しています。 こういう風にお願いしたい、と設計を出して、適切な物が実装されて出てくる。付け焼き刃でなく、その場で考えたものでない、しっかり考えられたものを出してきてくれるな、という感じはしますね。安心してお願いできます。
国内では、難しいことを難しいままに考えてしまって、整理がついていないものがあがってくることが最近多いですが、IVSはセンスのある人が多いように感じます。
-- ちなみに成果物の確認はどのようにしていますか?
ベースとして抑えるところは要所で確認して、他は外部仕様が満たされていることを確認しています。全部が全部確認しなくても、ポイントをはずさなければうまくいきます。逆に言えば、ポイントをどこに置くかが重要です。
-- 2点目のリーダーのコミュニケーションについてはいかがですか?
窓口として通訳が間に立つわけでなく、技術の分かる人が応対してくれます。日本語力は決してネイティブレベルではありません。変則的な日本語を送ると、応答に時間がかかることがあります。でも基本的にはOKです。コミュニケーションで困ることはほとんどありません。
なお、最初の案件では質問が英語で来て、日本語で答える形でしたが、今は全て日本語になっています。 -- 3点目の粘り強さについては、なぜこのように考えていますか? 1点目の説明と重複する部分もありますが、細かい点まで、良く考えて検討・行動しています。
「設計書がこうだから、こう作りました」とはあまり言われません。むしろ「こうあるべきだからこう作るべき」と言って提案・修正してくれます。こちらは甘えてはいけませんが、顧客の要望が刻々と変わる場面もあるし、詳細に落とし込んでから変更しなければならない点も出てきます。そこを非常に理解し、よく考えてくれています。何回も設計書を直してもらった経験があるので助かります。
他の国との経験上、「書いてある通りに作りました」とそのまま言って来られます。そこで良い物を作れるかどうかと言う意識の面で距離ができてきてしまいます。
-- オフショア開発の効果はいかがでしたか? 2点あります。 まず、プロジェクト単体として、コストの抑制を図りつつプロジェクトを成功することができました。そして、フルマークス社としては案件の成功を経て、コスト面での競争力と、プロジェクト管理の売りの部分をアピールする材料を得ました。
後者について特に、現在フルマークスとして現実味を持って2案を提案できます。
つまり、通常の国内開発の案に加え、「海外を使ってよいのであれば、コストダウンができる」という提案ができます。これは明確なメリットです。オフショア開発をリスクと見るお客さんもいますが、そのリスクを取る事ができれば、「コストをここまで減らせられる。かつ、これまで案件をうまくまわせています」ということを提示することができています。
実際には案件によって様々ですが、実装フェーズだけを見ると、半分くらいにコストを削減できているかと思います。設計フェーズから見ても、2割くらいは減らせられます。 -- オフショア開発で社内への影響はありましたか? オフショアでの注意点=プロジェクト開発での注意点であることがわかりました。ドキュメントの作り方、課題の管理方法、コミュニケーションの重要性などいろいろなことを再認識しました。マネジメントとして、オフショアだから、という特別な物ではなく、これまで曖昧にしてきたものを、体制を作り直したことで、しっかりと開発をすることができるようになりました。その点では明らかにレベルアップしました。
-- 今後のIVSへの期待・要望はありますか? はい。「設計フェーズへの参加ができる要員・体制の検討」と「実装・単体テスト工程のプロセスの改善」の2つです。
前者について、このように思うきっかけとなったのが3番目の案件です。細かい所で、日本の生活の習慣や、商習慣、注意が必要なものなど、日本人が対応しても複雑な仕様を持つプロジェクトでした。それをもう一度、ベトナムに設計書だけ持っていって、言葉を直して、理解してもらい、リーダーから各メンバーへ展開するというのは、相当な苦労があるように見受けられました。早期に設計から入って、共有してもらえば良かったと思います。今後は上流工程へ参加してもらうような体制を整えられればと思います。
後者の「実装・単体テスト工程のプロセスの改善」については、自動テストの重要性について、意識共有をはかれるようにして行きたいと思います。フルマークスのやり方として、JavaのWebアプリケーションでは、Struts、Hibernateといったフレームワークを使用し、さらにStrutsTestCase、JUnit、DBUnitを使用し、テストコードを先に書き、単体テストの自動化を実施しています。いわゆるテストファーストで、品質の面でも、納期の面でも効果が高い方法です。その方法をIVSとの案件でも一緒にやりたいと思っていますが、まだちょうど良い案件がありません。案件が発生した時に備えてスムーズにできるよう、テストファーストの概念を大事にした人を増やして行ければと思っています。
お忙しいなか、ありがとうございました。
|
■ IVS 浅井氏、根岸氏からのメッセージ
製造工程を担当するIVSと、上流工程をできるフルマークスと、良い住み分けができるという意味で、フルマークスは相性の良い会社と感じています。
また、お付き合いもよく、100%信頼できるということで、これからもフルマークスの杉山さんに全てお任せしたい位です。
最初のきっかけとして、外国人技術者と一緒に仕事をした経験があるという点と、ベトナム人に優しい人と言う点が非常に良かったと考えています。ベトナム人技術者に上からの目線で接してしまう日本人もいるなかで、大事な点です。
また、インタビュー中に出てきた提案力の面では、2案件目の途中から徐々に、IVSメンバーが自らの立ち位置を理解し始め、様々な提案、修正の意見を出すことができるようになったと思います。このような姿を以前から目指してきましたが、初めてそれが実現できるパートナーと会えたことは大きく、今後もフルマークスとの良い関係を継続したいと共に、同じように良いパートナー関係を築ける会社との新たな出会いを求めています。
Individual Systems 代表取締役 浅井 崇氏、取締役 根岸 慶
|
■ 取材を終えて
お互いの良い所を引き出しつつ、自身の力を伸ばすにはどのように立ち回ればよいのか、どのように改善していけばよいのかを常に自問する両社の姿勢で、良好な関係が築けていることがわかります。特にフルマークスの設計ドキュメントやプロセスに対する向上心、改善意識が、オフショア開発をすることによって表面化・仕組み化され、形に表れる結果となり、それが企業力の向上と顧客の惹きつけにつながる好循環になっています。また、オフショア開発で成功する鍵の1つは継続的発注であり、2案件目の途中からIVSの提案が出てくるのもその効果と言えます。最初の案件のみで判断するよりは、続けて発注して見えてくる効果にも注目すべきです。 |
※ フルマークスのWebサイト ※ 取材日時 2009年4月
|