Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
高速リリースを支える エムスリーQA チームの取り組み
Search
Junshi Kubota
April 26, 2022
Technology
0
870
高速リリースを支える エムスリーQA チームの取り組み
Junshi Kubota
April 26, 2022
Tweet
Share
More Decks by Junshi Kubota
See All by Junshi Kubota
ローコードツールを用いてチーム全員で自動テスト導入 -mabl で自動テスト-
jkubota
1
1.9k
エムスリーのテスト自動化の 歴史とこれから
jkubota
0
770
Other Decks in Technology
See All in Technology
One engineer company with Ruby on Rails
rstankov
2
470
Kaggleで学ぶ系列データのための深層学習モデリング
yu4u
7
1k
Cloudflare WorkersがPythonに対応したので試してみた
miura55
0
100
require(ESM)とECMAScript仕様
uhyo
4
1k
データベース03: 関係データモデル
trycycle
0
110
uvを使ってストレスフリーな Python開発をしよう!
r74tech
0
260
IaCジェネレーターとBedrockで詳細設計書を生成してみた
tsukasa_ishimaru
4
950
家族アルバム みてねにおけるGrafana活用術 / Grafana Meetup Japan Vol.1 LT
isaoshimizu
1
1.1k
TDD - Test Driven Drupal
opdavies
0
3k
20分で完全に理解するGrafanaダッシュボード
hamadakoji
5
1k
【基本】データベース設計
oracle4engineer
PRO
2
280
今日からできる!簡単 .NET 高速化 Tips -2024 edition-
xin9le
7
4.9k
Featured
See All Featured
Debugging Ruby Performance
tmm1
70
11k
A better future with KSS
kneath
231
16k
Design by the Numbers
sachag
274
18k
For a Future-Friendly Web
brad_frost
172
9k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
41
4.4k
How to train your dragon (web standard)
notwaldorf
75
5.2k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
26
2.3k
Designing with Data
zakiwarfel
96
4.8k
How GitHub Uses GitHub to Build GitHub
holman
468
290k
BBQ
matthewcrist
80
8.8k
Six Lessons from altMBA
skipperchong
22
3k
Adopting Sorbet at Scale
ufuk
69
8.6k
Transcript
高速リリースを支える エムスリーQA チーム エムスリー株式会社
エムスリーとは 2 • 国内最大級の医療従事者向けサイト「m3.com」を中心に様々な サービスを提供中 ◦ 製薬企業 :マーケティング支援や治験の支援など ◦ 病院 :採用支援、電子カルテ、医療機器など ◦
医療従事者 :医療に関する情報の提供、開業・転職支援など ◦ 一般消費者 :医療相談、クリニック会計アプリなど 医療に関わる様々なサービスを提供、日々開発しております!
エムスリーのミッション 3 “インターネットを活用し、 健康で楽しく長生きする人を一 人でも増やし、 不必要な医療コストを一円でも 減らすこと”
エンジニアリンググループのミッション 4 “インターネットを活用し、 健康で楽しく長生きする人を一 人でも増やし、 不必要な医療コストを一円でも 減らすこと” エンジニアリングの力でこれを実 現する
5 IT業界の人が医療にチャレンジ 医療業界の人がITにチャレンジ
QAチームの体制 6 QAは組織横断チーム 普段の仕事は各自担当 する事業チームと一緒に 実施 事業チームごとにビジネ スに合わせてカラーがあ る。QAもそれに合わせ る
7 QAチームのミッション
QAチームのミッション 低コストで高品質の製品を作り、高速リリースが可能な開発チームを創る • 上流工程に関わり、価値あるテストを実施し、顧客に価値のある製品を提供 • テストでバグを検出するだけではなく、バグを埋め込まない仕組みを作る • QA作業の最適化を目指すのではなく、開発チーム全体の最適化を目指す • QAエンジニアとしての役割を越えて、開発チームの課題に全力を尽くす
QA エンジニアが品質を牽引する 文化です!
QAチームのミッション 上流工程に関わり、価値あるテストを実施し、顧客に価値のある製品を提供 • 顧客価値を上流から検討し、上流から品質を作り込む ◦ 決まった仕様を確認するだけにとどまらない ◦ 上流からの参入が良いテストを作るインプットとなる • 顧客にとって価値のあるテストを考えて実施する
◦ 顧客価値にインパクトのあるバグを多く見つけたい ◦ 無駄な(価値の低い)テストを減らし、次のリリースや UX 改善提案に注力
QAチームのミッション テストでバグを検出するだけではなく、バグを埋め込まない仕組みを作る • バグを埋め込まない活動ができれば、品質も上がり生産性も向上する ◦ 発生した障害・バグの一つ一つの振り返りを実施し再発防止策を考える ▪ 仕組みで取り除くことが重要 ▪ エンジニアと協力し機械的に埋め込まない仕組みを作る
• ex. 自動テストの充実、静的チェックの徹底、仕様伝達の改善等 ◦ 早めのQA関与により、発生しがちなバグを開発前に取り除く ▪ バグの傾向を定期的に分析しチーム展開するとともに気になることは早めにディス カッションできる仕組みとする
QAチームのミッション QA作業の最適化を目指すのではなく、開発チーム全体の最適化を目指す • 開発プロセス全体を俯瞰して、タイミングよく効果的な品質確保をする ◦ リリースのボトルネック、品質問題の原因を考え開発チーム全体で取り組む • 開発プロセスの変化に合わせて柔軟に QA実施方法も変える ◦
新規開発のQAと継続開発のQA実施方法はもちろん違う
QAチームのミッション QAエンジニアとしての役割を越えて、開発チームの課題に全力を尽くす • テストやレビューだけにこだわらず、チームに貢献し品質と開発スピードを上げる ◦ QA は様々な機能を日々触っているので仕様に詳しい場合が多々ある ▪ ドキュメントの整備 ▪
質問などへの回答 ◦ テスト作成時に整理した資料は仕様整理や仕様再検討に役立つときも
エムスリーのQAチーム エムスリーのQAは開発プロセス全体を通じて品質を高める活動を推進 • テストだけでなくできることは色々実施 ◦ 品質計画時の工夫 https://www.m3tech.blog/entry/2020/03/26/170000 ◦ 開発チーム含めた不具合分析 https://www.m3tech.blog/entry/2019/03/19/110000
• テストやレビュー以外にもプロセス改善も積極実施 • やり方にこだわらず、新しい手法や技術もガンガン導入 ◦ 刺激語カードを用いた事例 (https://www.m3tech.blog/entry/2020/11/20/110000)
14 QAチーム現在の取り組み
QAチーム現在の取り組み 品質・リリーススピードを上げるための現在の取り組み(一部紹介) • 各テストプロセスの分析 ◦ 各プロセスでどのような作業をしていてどれくらいの無駄があるか、問題があるかを定期 的に振り返り、作業改善の実施 • 自動テストの拡張 ◦
E2E 自動テストがないサービスに自動テストを積極導入 ▪ Selenium と mabl (ローコードツール)を用いて拡張中
テストプロセスの分析 自動テストの拡張 • 様々なサービスで自動テスト拡張・新規構築中です。 目的 使用技術 備考 リグレッションテスト selenium webdriver
古くからあるもの リグレッションテスト CodeceptJS 電子カルテ向け リグレッションテスト mabl ローコードツール VRT reg-suit、Playwright https://www.slideshare.net/kazuyukit suzisaki/regsuitqa-wolfvisual-regressi on-test
自動テストの拡張 各テストプロセスの分析 • 各工程でどのような作業を行っているかを洗出し、工数を算出 計画 設計 ケース 作成 準備 実施
データ 準備 環境準 備 • 効率が悪くなっている作業をピックアップし改善 ◦ ex. データ準備のために他チームのデータ仕込み依頼が必要で 1日必要 ▪ データ仕込みの方法を改善して 1日の準備期間を1時間程度に短縮
M3 Tech Blogの紹介 18 弊社エンジニアが日本、世界の 医療と格闘する日々が綴られて います。 https://www.m3tech.blog/
19 Twitter:M3 エンジニア公式 @m3_engineering https://twitter.com/m3_engineering
20 We are hiring!:カジュアル面談などお気軽に! エムスリーでは • エンジニア • デザイナ •
プロダクトマネージャー • QA を絶賛募集中です! https://jobs.m3.com/product/