SWETグループを立ち上げ、エンド・ツー・エンドのテストを実現
2011年10月にDeNAへ入社して以来、中川氏は、Mobageオープンプラットフォーム開発における「エンジニアリングとしてのテスト」の実現に携わってきた。Mobageオープンプラットフォームとは、フィーチャーフォンやスマートフォン、PC向けのMobageゲームを簡単に公開するための仕組み。SWETグループが組織された背景には、このプラットフォームの急速な発展があるという。
Mobageオープンプラットフォームの提供を開始したのは、2009年8月のこと。以来、日本国内の市場に向けて、次のように短期間で提供範囲を拡大し続けてきた。
- 2010年1月:フィーチャーフォン向け
- 2010年10月:Yahoo!モバゲー向け、PC向け
- 2011年2月:スマートフォン(ブラウザ)向け
- 2011年6月:スマートフォン(ネイティブアプリ)向け
- 2012年12月:Shellアプリ向け
海外についても、2011年7月の北米・欧州を対象としたワールドワイドプラットフォーム(スマートフォンアプリ)の提供を皮切りに、同年同月に中国、2012年2月に韓国というように、対応する地域、デバイスを拡大している。
一方で、提供範囲の拡大は大きな課題も生んだ。「グローバル向けのプラットフォームを、日本向けと同様に品質を落とさずに展開することはもちろん、プラットフォームを支える大規模システムの拡張とリファクタリングを、恒久的に行っていかなければならない。しかも、デリバリーのスピードは落とせない」(中川氏)
さらに、検証の属人性も解消する必要があった。驚くことに、プラットフォームの検証は、非常に優秀な1人のテスターに依存していた。「要するに、システムテストを行う環境が整備されていなかった」(中川氏)
グローバル展開が加速していく中で、品質を保証できないのでは危機的状況に陥るのは明らかだ。それを防ぐため、中川氏がDeNAに加わると同時に、現在のSWETグループの前身となる「プラットフォームQAチーム」が、次の3つを達成目標に掲げて立ち上がった。
- エンド・ツー・エンドテストを確立する
- テストを徹底的に自動化する
- テストしやすい環境を提供する
これらには、「品質保証の観点だけではなく、テストしやすい環境を作るという狙いもある」と中川氏は説明する。
中川氏を含め3名でスタートしたプラットフォームQAチームは、その後20名弱が所属する現在のSWET(Software Engineer in Test)グループとなり、個々のプロダクトから独立して活動している。プロダクトに所属する形を取らなかったのは、「横串チームによる戦略的横展開を狙うため」(中川氏)である。
SWETグループの役割は、次のように定義された。
- Developer Productivity(開発者の生産性)
- Quality Assurance(品質保証)
これに従い、具体的なミッションも「プラットフォームの品質保証」と「品質および生産性の向上」となっている。そのために、中川氏がメンバーに常に意識させているのは、「自分たちはテスターではなく、あくまでもエンジニアである」ということ。メンバーには、テストの対象となるものを開発できるくらいの力量が求められている。
SWETグループの主業務は、プラットフォームのサーバーサイドおよびクライアントサイドのテストである。ただし、これは「全方位的に行っても、無尽蔵なテストが必要になるだけ。そこでテストを分類し、戦略を立てて行っている」(中川氏)。具体的には、テストを次の図のように4象限にマッピングし、有効なテストを考えると中川氏は説明した。
- Who:デベロッパーテスト、受け入れテスト
- Which:単体テスト、結合テスト
- How:ブラックボックス、ホワイトボックス、グレーボックステスト
- What:機能テスト、非機能テスト