Slide 1

Slide 1 text

Report of AgileTestingDays2018 2018/12/18 Hisayuki Matsuki @mtskhs

Slide 2

Slide 2 text

参加目的 ● アジャイルの意義・意味 ○ アジャイルな開発をすれば、開発がはやくな る? ○ どうすれば、良い開発チームを作れるか ● テスト自動化の目的・バランス ○ なんのためにテスト自動化を導入するか ○ テストコードはどこまで書くべきか 2

Slide 3

Slide 3 text

目次 1.AgileTestingDaysについて 2.アジャイル 3.テスト自動化 3

Slide 4

Slide 4 text

1-1. イベント概要 ● ヨーロッパ最大のagile/testingイベント ● 参加者:約700人・スピーカー:約130人 ○ 女性比率4割 ● テーマの比率(感覚) ○ アジャイル:テスト/CICD = 5 : 5 ● 参加者同士が教え合う機会が多い ○ 目が合うと会話が始まる 4

Slide 5

Slide 5 text

1-2. 場所 ● Potsdam(ドイツ) ○ ベルリンから電車で40分程度 ○ 日の出7:30 / 日の入16:20 5

Slide 6

Slide 6 text

1-3. 日程 6 ● ConferenceDays4日間に参加

Slide 7

Slide 7 text

1-3. 日程 7 ● 交流がある(group/pair)の比率が多い

Slide 8

Slide 8 text

1-4. マスコット Agile Unicorns 8

Slide 9

Slide 9 text

1-5. 10th Anniversary みんなでお祝いをしていました 9 https://video.twimg.com/ext_tw_video/1062496693902606 336/pu/vid/1280x720/D0SyP373EZsu39Jc.mp4

Slide 10

Slide 10 text

2. アジャイル

Slide 11

Slide 11 text

2-0.(補足)アジャイルって? agile manifesto (2001) 11 アジャイル は、 - 価値観 - 小さく・素早くサイク ルを回すこと http://agilemanifesto.org/iso/ja/manifesto.html “agile”の画像検索結果

Slide 12

Slide 12 text

2. アジャイル 12 2-1.アジャイルな状態(DevOps: 6 Steps to Go Faster, Build Better and Avoid Disaster) 2-2.心・感情の大切さ(The Heart of Innovation) 2-3.思考停止をやめよう(Get off the Hamster Wheel and Start Adding Value!) 2-4.成長のためのマインドセット(The Power of ‘Not Yet’ – Improve Your Testing Skills) 2-5.メンタリング(Mentoring Result > Power Pairs in Testing) 2-6.メンタリングの大切さ(How having a mentor changed my career) 2-7.リモートチームでの働き方(agile transformation with remote teams) 2-8.価値観を合わせる(Four nationalities, two countries, one team - can it work?)

Slide 13

Slide 13 text

2-1.アジャイルな状態 DevOps: 6 Steps to Go Faster, Build Better and Avoid Disaster 13 アジャイル開発 -スクラム・カンバン -可視化/協調性が向上 アジャイルな状態 -メンバーが、内的動機付けさ れている -継続的学習ができている (チームにその余地がある)

Slide 14

Slide 14 text

2-1.アジャイルな状態 DevOps: 6 Steps to Go Faster, Build Better and Avoid Disaster 14 アジャイルな状態になるには? 下記の繰り返し - 理想とのギャップを知り、チームで共有する - ギャップを埋めるための小さな行動を実行する - チームで行動を振り返る

Slide 15

Slide 15 text

2-3.思考停止をやめよう Get off the Hamster Wheel and Start Adding Value! 15 HamsterWheelの兆候 (思考停止して働きづめな様) -いつも働いている -小さな問題も大きく捉えすぎて いる -シンプルに考えられない Agileになればいい? (悪化する側面も) △気づいていない問題にも気づく △メンバー間のやりとりに時間を割く

Slide 16

Slide 16 text

2-3.思考停止をやめよう Get off the Hamster Wheel and Start Adding Value! 16 どうれば改善するか? -自覚して、許容する -Noという、落ち着く -WIP(; Work In Progress)をへらす -実行可能な目標を立てる -身体的な健康もやっぱり大切

Slide 17

Slide 17 text

2-4.成長のためのマインドセット The Power of ‘Not Yet’ – Improve Your Testing Skills 17 -“まだ”できないと自信を 持って言おう。自分を受 け入れることが成長の 第一歩 (Comfort▶Learning▶Pa nic▶)

Slide 18

Slide 18 text

2-4.成長のためのマインドセット The Power of ‘Not Yet’ – Improve Your Testing Skills 18 成長のためには、 -何を学ぶか決めよう -支援者を見つけよう Sponsors:機会を与える Coaches:ゴール達成を助ける Teachers:体系的知識を教える RoleModels:  まだ知らない理想像を示す

Slide 19

Slide 19 text

2. まとめ:アジャイルの意義とは? ● チームとして成長・ボトムネックの解消によって、 中長期的なパフォーマンスをだす ○ 開発工程においてPDCAを回し、成長する仕 組みづくり ● △アジャイル開発 ◎アジャイルな状態 ○ メンバーの継続的な行動・価値観を重視 ○ (手法・ツールより、マインドセット) 19

Slide 20

Slide 20 text

3. テスト自動化

Slide 21

Slide 21 text

3. テスト自動化・CI/CD 21 3-1.テストにおけるコスト意識(How we Develop and Test Software at eBay in Berlin) 3-2.フロントエンドのテスト手法(Confident Software Delivery) 3-3.APIのテストに求められる要素(Building your own API testing framework) 3-4.MicroServiceにおけるテスト手法(deploy microservices with confidence) 3-5.うまくデプロイするには(Confident Software Delivery) 3-6.QEの心構え(Is your Quality on the Road to Nowhere?)

Slide 22

Slide 22 text

3-1.テストにおけるコスト意識 How we Develop and Test Software at eBay in Berlin 22 -テスト自動化では、多く の低レベルなテスト(unit test/integrate test)を実 施し、E2Etestはあまり しない -予期しないエラーを継 続的にチェックできる仕 組みづくりが大切

Slide 23

Slide 23 text

3-6.QEの心構え Is your Quality on the Road to Nowhere? 23 Testing = 可視化 QualityEngineering = 可視化し、品質を理解で きるようにする手法

Slide 24

Slide 24 text

3-6.QEの心構え Is your Quality on the Road to Nowhere? 24 PICKLE = QEの心構え Participate: チームの一員である意識を強く持ち、計画・開発・レ ビューにも携わること Innovate: 自身やチームを改善するべく行動すること Comminucate: 会話をファシリテートし、チームを横断して交流する こと Knowlage: 知識を増やし、共有し、理解を深めること Linsten: POや組織の価値や、組織の内外で何が大切か聞くこと Evolve: 組織の戦略に沿って、品質を高めること

Slide 25

Slide 25 text

3. テスト自動化の目的・バランス ● テスト自動化において、コスト意識が大切 ○ 費用:低レイヤだと楽(unit

Slide 26

Slide 26 text

まとめ・成果 ・「Go言語」における    テスト自動化についてのノウハウ作成 説明)https://qiita.com/matsu0228/private/c9f69b036f0ab47b617e ソース)https://github.com/matsu0228/gotest 26

Slide 27

Slide 27 text

参考書籍 アジャイル カイゼンジャーニー - アジャイルなチーム作りの大切さを、ストーリーを通して理解できる ELASTIC LEADERSHIP - チームの状態(サバイバル・学習・自己組織化モード)ごとにリーダーが取るべ き方法がわかる (サバイバルモード≒HamsterWheel) エンジニアリング組織論への招待~不確実性に向き合う思考と組織のリファクタリング - とにかくおすすめ(アジャイル、メンタリング、組織とシステム設計)   テスト自動化 (低コストでテストコードを書くためには、良いプロダクトコードが大切) リーダブルコード - 整理統合についての具体的なノウハウ集 Clean Architecture達人に学ぶソフトウェアの構造と設計 - プログラミングに関する原理原則を辞書的に知れる - レイヤーを分離する1つの方法論が分かる 27