高速リリースの最前線~スマートニュースが語るWeeklyリリースの裏側~
「高速リリースの最前線~スマートニュースが語るWeeklyリリースの裏側~」と題し、SHIFTが2部構成のオンラインセミナーを開催。スマートニュース社より天野仁史さん(amachang)とAndroid担当の大橋英雄さんをお迎えしました。
SHIFTから参加したのは、コアテクノロジー第2ビジネスユニット長 三上貴由とQAマネージャーとしてスマートニュース社をサポートする同部署の金子東珉。第1部では「Weeklyリリースを支えるための開発体制」をテーマに、第2部では「Weeklyリリースを支えるための検証体制」をテーマにディスカッションが行われました。今回はそのポイントをまとめ、レポートとしてお届けします。
パネルディスカッション第1部は、
「Weeklyリリースを支えるための開発体制」
第1部のテーマは「Weeklyリリースを支えるための開発体制」。スマートニュース社の天野さんから、まずご自身がマネジメントを行うMobile Application Groupの体制について説明がありました。Mobile Application Groupを構成するのは、Android、iOS、Mobile Foundation、Web Tech、QAの5チーム。そのAndroidチームのマネージャーが、天野さんとともに今回ディスカッションに参加されている大橋さんです。
なかでも、天野さんはQAチームについて詳しく言及。「開発した機能を円滑にテストし、クオリティを担保していくためのQAチーム。そのすべてをSHIFTさんにお願いしています」と、QAチームの大きな役割、そこにSHIFTが参加していることの説明がありました。
スマートニュース社で、
毎週リリースができる体制になったのは2020年から
天野さんが、パネルディスカッションの次の話題として取り上げたのが「リリースサイクル」です。現在、スマートニュース社のリリースペースは毎週ですが、そこに至るまでには、いろいろあったとのこと。そこで、大橋さんに「なぜ、毎週リリースになったのか。その過程をぜひ話してください」と投げかけました。
「最初は、エンジニアの数が少なかったためAndroidとiOSを交互にテストしてリリースしていました」と大橋さん。しかし、交互にリリースではスピードが遅いため、AndroidとiOS両方を同時にテストし、隔週でリリースする体制へ。「毎週リリースができる体制になったのは、2020年から」と大橋さんは、これまでの道のりを振り返ってくれました。
スマートニュース社では、Weeklyリリースになって
スケジュールが守れるように
「なぜ、毎週リリースをしなくてはいけないのか」。視聴者から届いた質問を天野さんはピックアップします。その質問に答えたのは大橋さん。「仮説を立て、制作してリリースし、結果を得て、フィードバックするというサイクルを回すためには、早くリリースすることが大切。そのために、毎週リリースすることが必要」というのが大橋さんの回答です。
「リリースが毎週になってから、リリーススケジュールを変更してまで無理に機能を入れ込むのではなく、『翌週に対応すればよい』と思うことが多くなった」と天野さん。そのおかげで、以前よりリリーススケジュールが守れるようになったといいます。これに大橋さんも「機能を入れ込むためにどうしてもスケジュールを遅らせることが、以前よりもなくなりました」と同調。
天野さんはWeeklyリリースにはメリットが多いと話しつつも、Weeklyリリースになって「SHIFTさんは大変ではないですか?」と金子に質問。「たしかに隔週のときは、スケジュールが大変なときもありました」と金子。しかし、Weeklyリリースに関しては「『機能を入れるのは次にまわそう』といったように柔軟に判断をしていただけるようになったので、スケジュール通り毎週ほぼできている。SHIFTで問題はないです」と現状について回答しました。
スマートニュース社とSHIFTが一つのチームに。
それがスムーズにいっているポイント
ディスカッションの話題は、Weeklyリリースにおける「テストのスケジュール」に及びます。テスト期間が5日しかないため、天野さんから「どう調整を行っているのか」と大橋さんが聞かれ、SHIFTと行っているプランニングミーティングを紹介。どうしてもテストができそうにない場合、各プロダクトマネージャーと話して調整していると、そのコミュニケーションや調整方法について解説しました。
天野さんもSHIFTとのコミュニケーションについて言及。今後のロードマップに関して、ホワイトボードに書きながら、いっしょにプランニングしたことを紹介してくれました。
そして「エンジニアとQAがともにロードマップを考えていくことで、開発組織がQAといっしょに成長していける」と天野さん。
三上は良好な関係を築けていることに、天野さん、大橋さんに感謝。そして「戦略的なコミュニケーションをマンスリーでとっている。数ヶ月先のことまで共有してもらっているのが、うまくいっている秘訣」と語りました。それに対して、天野さんも反応します。「SHIFTは他の会社という感じではなく、一つのチームとしてやっている感覚がすごく強い。開発組織として、どうしていくのかも話している。それが開発全体として、スムーズにいっているところなのかもしれませんね」とSHIFTとしてうれしい言葉が天野さんから出てきました。
「SmartNews」のクラッシュ率は、
30日間でわずか0.08%
パネルディスカッションの第1部も終盤に突入し、ここで大橋さんが「SmartNews」における30日間のクラッシュ率を紹介。そのクラッシュ率はわずか0.08%。ニュースカテゴリーに属するアプリの平均クラッシュ率より低い数字に、「クラッシュレートが低いのは、QAチームの成果ですね」と天野さんからお褒めの言葉が。
この成果について気をつけているポイントを天野さんから問いかけられると、金子は「テスト中に『あれっ』と思ったことは、すべてご報告するようにしています」。それを聞いた天野さんは「自分たちの言葉でちゃんとコミュニケーションができる距離感にエンジニアと、QAの方がいる。タイミングのいいコミュニケーションはけっこうとれていますね」と日々の印象を口にしました。
スマートニュース社のコミュニケーションは英語。
それにもSHIFTが協力的なのもポイント
パネルディスカッション第1部の最後は、視聴者からの質問に答えることに。「QAも含めて開発は、どんな環境でやっているのか」、この質問に対する金子の回答は「テストでは、Charlesというソフトを使っています」。フィーチャーフラグのオンオフが手元だけでできること、サーバーを介さずに、さまざまなテストができるツールであることが、Charlesを利用している理由でした。
「質と量を毎週同じレベルに調整しているのか」という質問には、「機能をどれぐらい入れるのか、テストケースをどのくらい厚めにやるのか。この2つの基準があり、その2つによってだいたいリソースが平準化されます」と天野さんが回答。
最後の最後に、「SHIFTさんの宣伝」と天野さん。スマートニュース社内でのコミュニケーションはすべて英語。もちろん仕様書も英語とのこと。そのなかで「SHIFTさんは協力してくれている。とても助かっています。素晴らしいポイントです」と評価の言葉をもらい、ここで第1部が終了しました。
パネルディスカッション第2部は、
「Weeklyリリースを支えるための検証体制」
パネルディスカッション第2部のテーマは、「Weeklyリリースを支えるための検証体制」について。天野さんよりマイクのバトンを受けとった三上がファシリテーターとして、スマートニュース社とSHIFTとの関係を改めて説明しました。SHIFTがスマートニュース社のサポートを開始したのは2014年。それ以来、「ともにディスカッションをしながら、やってきました」と三上がこれまでについて紹介を行いました。
そして、三上はSHIFTが支援をはじめた当時について天野さんに質問。「小さなアプリチームと小さなQAチームでしたが、ワクワクしましたよね」と天野さんは回想し、「プロダクト指向のチームをつくっていくなかで、QAチームもプロダクトチームも一つになってきている。思い描いたロードマップに着実に近づいている感じがします」とつづけました。その話を受け、良好な関係の要因として三上があげたのは「いい意味での距離感」。「別の会社だからこそ、いい意味での距離感が現在の状態につながっているのでは」と三上が考察しました。
SHIFTがQAを担当するのは、
モバイルアプリケーション機能全領域
スマートニュース社におけるSHIFTのQAスコープは、モバイルアプリケーション機能の全領域です。実際にどんなテストサイクルで支援を行っているのか、その流れを語ったのは金子でした。「金曜日にQAをスタートさせ、木曜日にQAを完了させています」と大きなスケジュールを説明。そして「初日はスモークテストを行うようにし、徐々に機能テストに移行して、一部リグレッションも並行して行うようなカタチをとっています」と、テストサイクルの詳細を語りました。
QAを行っているなかでも、「通常とはアプローチが違う」と三上が話したのは、リグレッションテスト。そして「どんなアプローチをしているのか」と金子に質問します。金子は、スマートニュース社の現場でリグレッションテストは「クイックリグレッションテスト」と呼ばれていることを紹介。すべての機能ではなく、一部の機能について問題がないかテストを行っていると説明しました。
スマートニュース社で行っている
クイックリグレッションテストはステップが3つ
パネルディスカッションでは「クイックリグレッションテスト」について、さらに掘り下げることに。「クイックリグレッションテスト」の3ステップを金子が解説しました。SHIFTがスマートニュース社で積み重ねてきたテストケースは6万ケース。そのなかから「機能」に関するテストケースを選定し、テストスコープとして設定することがステップ1。そして「選定したテストケースの全体量を確認することがステップ2」と解説をつづけます。「毎週、その量は同じではありません。しかし、この時点でだいたい2,000ケース前後に落ち着きます」と金子。
最後のステップとして紹介したのが、新機能のテストを含めた、テストスコープ全体量の確認です。QAリソースに余力があれば、主要機能はもちろん、最近テストを行っていない機能までテストスコープに取り込み、テストスコープを最終決定するとのこと。「約3,000ケース前後がリグレッションテストのケースになっています」と金子が説明を行いました。
クイックリグレッションテストは、
細かいパターンが確認でき、メンテナンスも不要
パネルディスカッション第2部もいよいよ終盤。「通常のリグレッションテストとクイックリグレッションテストは、どう違うんですか」と金子に質問を投げかける三上。「通常のリグレッションテストは、機能を薄く網羅的に見るもの。マイナーパターンは見ずに、全体を見るカタチをとる」と金子はその違いを語りました。一方、クイックリグレッションテストは「対象機能を絞ったぶん、細かいパターンが確認できること、リグレッションテストケースのメンテナンスが不要」という大きなメリットをあげ、解説を終えました。
パネルディスカッションの最後に「まだ、視聴しているみなさんは、聞き足りないと思うんです」と三上より感想を求められた天野さん。そして「今度はスマートニュースにSHIFTさんを呼んだりしてセミナーをしたいですね」とうれしい提案をいただいたところで、内容の濃かったパネルディスカッションが終了しました。
スマートニュース社のモバイルアプリケーション開発で中心となるお二人、そしてスマートニュース社を強力にサポートするとSHIFTメンバーとのパネルディスカッションは、いかがだったでしょうか。次回もSHIFTが主催するセミナーにぜひご期待ください!
お問合せはお気軽に
https://service.shiftinc.jp/contact/
SHIFTについて(コーポレートサイト)
https://www.shiftinc.jp/
SHIFTのサービスについて(サービスサイト)
https://service.shiftinc.jp/
SHIFTの導入事例
https://service.shiftinc.jp/case/
お役立ち資料はこちら
https://service.shiftinc.jp/resources/
SHIFTの採用情報はこちら
https://recruit.shiftinc.jp/career/