Enviar búsqueda
Cargar
テスト駆動開発の導入ーペアプログラミングの学習効果ー
•
12 recomendaciones
•
4,442 vistas
Shuji Watanabe
Seguir
JaSST北海道2012での発表資料
Leer menos
Leer más
Tecnología
Denunciar
Compartir
Denunciar
Compartir
1 de 42
Recomendados
テスト駆動開発へようこそ
テスト駆動開発へようこそ
Shuji Watanabe
どうやらテスト駆動型開発は死んだようです。これからのCI
どうやらテスト駆動型開発は死んだようです。これからのCI
Koichiro Sumi
SeasarCon 2009 White TDD
SeasarCon 2009 White TDD
Takuto Wada
java-ja TDD 2nd
java-ja TDD 2nd
Takuto Wada
「GebとSpockではじめるシステムテスト自動化」
「GebとSpockではじめるシステムテスト自動化」
Hiroyuki Ohnaka
Java デバッガ活用術 ~勘デバッグ・print デバッグから抜けだそう~ #jjug_ccc #ccc_h4
Java デバッガ活用術 ~勘デバッグ・print デバッグから抜けだそう~ #jjug_ccc #ccc_h4
Yusuke Yamamoto
TDDを一年やってみました ~シロート集団がTDDをやってはまったこと~
TDDを一年やってみました ~シロート集団がTDDをやってはまったこと~
Tomomi Kajita
テスト駆動開発の進化
テスト駆動開発の進化
Yukei Wachi
Recomendados
テスト駆動開発へようこそ
テスト駆動開発へようこそ
Shuji Watanabe
どうやらテスト駆動型開発は死んだようです。これからのCI
どうやらテスト駆動型開発は死んだようです。これからのCI
Koichiro Sumi
SeasarCon 2009 White TDD
SeasarCon 2009 White TDD
Takuto Wada
java-ja TDD 2nd
java-ja TDD 2nd
Takuto Wada
「GebとSpockではじめるシステムテスト自動化」
「GebとSpockではじめるシステムテスト自動化」
Hiroyuki Ohnaka
Java デバッガ活用術 ~勘デバッグ・print デバッグから抜けだそう~ #jjug_ccc #ccc_h4
Java デバッガ活用術 ~勘デバッグ・print デバッグから抜けだそう~ #jjug_ccc #ccc_h4
Yusuke Yamamoto
TDDを一年やってみました ~シロート集団がTDDをやってはまったこと~
TDDを一年やってみました ~シロート集団がTDDをやってはまったこと~
Tomomi Kajita
テスト駆動開発の進化
テスト駆動開発の進化
Yukei Wachi
詳解!自動結合テスト #jasst
詳解!自動結合テスト #jasst
kyon mm
VMの歩む道。 Dalvik、ART、そしてJava VM
VMの歩む道。 Dalvik、ART、そしてJava VM
yy yank
2015/10/14 JJUGナイトセミナー「テスト駆動開発ここが聞きたい」
2015/10/14 JJUGナイトセミナー「テスト駆動開発ここが聞きたい」
Hiroyuki Ohnaka
TDDはじめて物語Second Season(updated)
TDDはじめて物語Second Season(updated)
Hiroyuki Ohnaka
#STAC2014 システムテスト自動化ハンズオン
#STAC2014 システムテスト自動化ハンズオン
kyon mm
最新のJava言語仕様で見るモジュールシステム #jjug
最新のJava言語仕様で見るモジュールシステム #jjug
JustSystems Corporation
インパス! あのこれダメッス! ~Javaコードレビューの指摘ポイント10選~
インパス! あのこれダメッス! ~Javaコードレビューの指摘ポイント10選~
JustSystems Corporation
Jjugccc2017spring m6 javafx
Jjugccc2017spring m6 javafx
torutk
JJUG CCC 2014 fall 「私がTDD出来ないのはどう考えてもお前らが悪い!」~エンタープライズJava開発でのTDD適用の勘所~
JJUG CCC 2014 fall 「私がTDD出来ないのはどう考えてもお前らが悪い!」~エンタープライズJava開発でのTDD適用の勘所~
Hiroyuki Ohnaka
NDS36 Java7&Java8
NDS36 Java7&Java8
Yukiya Nakagawa
Jjug ccc 2016_fall_blue_green_deployment
Jjug ccc 2016_fall_blue_green_deployment
Hiroyuki Onaka
JaSST nano vol.1 "映え”を評価する~UXテストの取り組みなの
JaSST nano vol.1 "映え”を評価する~UXテストの取り組みなの
Touyou Horikawa
JaSST nano vol.7 「なぜペアワイズテストを使いこなせないのか」
JaSST nano vol.7 「なぜペアワイズテストを使いこなせないのか」
Touyou Horikawa
スクラムにおけるQAメンバー(非開発者)の関わり方を模索してみた
スクラムにおけるQAメンバー(非開発者)の関わり方を模索してみた
Takayoshi Sakaino
サーバーフレームワークに潜んでる脆弱性検知ツール紹介
サーバーフレームワークに潜んでる脆弱性検知ツール紹介
gree_tech
20141101渋谷ruby会議
20141101渋谷ruby会議
Fukui Osamu
ハイパフォーマンスSeleniumテスト@サイボウズ
ハイパフォーマンスSeleniumテスト@サイボウズ
Jumpei Miyata
ドメイン駆動設計(DDD)導入判定チェックシート
ドメイン駆動設計(DDD)導入判定チェックシート
Takuya Kawabe
「Selenium実践入門」で学ぶテスト自動化の世界
「Selenium実践入門」で学ぶテスト自動化の世界
Nozomi Ito
TDD #NagoyaTesting
TDD #NagoyaTesting
kyon mm
分散開発チームによるAgile開発実践 ~いろいろハマった!よかった
分散開発チームによるAgile開発実践 ~いろいろハマった!よかった
Makoto Iguchi
研究を基にしたオープンソース開発チェックポイント
研究を基にしたオープンソース開発チェックポイント
Recruit Technologies
Más contenido relacionado
La actualidad más candente
詳解!自動結合テスト #jasst
詳解!自動結合テスト #jasst
kyon mm
VMの歩む道。 Dalvik、ART、そしてJava VM
VMの歩む道。 Dalvik、ART、そしてJava VM
yy yank
2015/10/14 JJUGナイトセミナー「テスト駆動開発ここが聞きたい」
2015/10/14 JJUGナイトセミナー「テスト駆動開発ここが聞きたい」
Hiroyuki Ohnaka
TDDはじめて物語Second Season(updated)
TDDはじめて物語Second Season(updated)
Hiroyuki Ohnaka
#STAC2014 システムテスト自動化ハンズオン
#STAC2014 システムテスト自動化ハンズオン
kyon mm
最新のJava言語仕様で見るモジュールシステム #jjug
最新のJava言語仕様で見るモジュールシステム #jjug
JustSystems Corporation
インパス! あのこれダメッス! ~Javaコードレビューの指摘ポイント10選~
インパス! あのこれダメッス! ~Javaコードレビューの指摘ポイント10選~
JustSystems Corporation
Jjugccc2017spring m6 javafx
Jjugccc2017spring m6 javafx
torutk
JJUG CCC 2014 fall 「私がTDD出来ないのはどう考えてもお前らが悪い!」~エンタープライズJava開発でのTDD適用の勘所~
JJUG CCC 2014 fall 「私がTDD出来ないのはどう考えてもお前らが悪い!」~エンタープライズJava開発でのTDD適用の勘所~
Hiroyuki Ohnaka
NDS36 Java7&Java8
NDS36 Java7&Java8
Yukiya Nakagawa
Jjug ccc 2016_fall_blue_green_deployment
Jjug ccc 2016_fall_blue_green_deployment
Hiroyuki Onaka
JaSST nano vol.1 "映え”を評価する~UXテストの取り組みなの
JaSST nano vol.1 "映え”を評価する~UXテストの取り組みなの
Touyou Horikawa
JaSST nano vol.7 「なぜペアワイズテストを使いこなせないのか」
JaSST nano vol.7 「なぜペアワイズテストを使いこなせないのか」
Touyou Horikawa
スクラムにおけるQAメンバー(非開発者)の関わり方を模索してみた
スクラムにおけるQAメンバー(非開発者)の関わり方を模索してみた
Takayoshi Sakaino
サーバーフレームワークに潜んでる脆弱性検知ツール紹介
サーバーフレームワークに潜んでる脆弱性検知ツール紹介
gree_tech
20141101渋谷ruby会議
20141101渋谷ruby会議
Fukui Osamu
ハイパフォーマンスSeleniumテスト@サイボウズ
ハイパフォーマンスSeleniumテスト@サイボウズ
Jumpei Miyata
ドメイン駆動設計(DDD)導入判定チェックシート
ドメイン駆動設計(DDD)導入判定チェックシート
Takuya Kawabe
「Selenium実践入門」で学ぶテスト自動化の世界
「Selenium実践入門」で学ぶテスト自動化の世界
Nozomi Ito
TDD #NagoyaTesting
TDD #NagoyaTesting
kyon mm
La actualidad más candente
(20)
詳解!自動結合テスト #jasst
詳解!自動結合テスト #jasst
VMの歩む道。 Dalvik、ART、そしてJava VM
VMの歩む道。 Dalvik、ART、そしてJava VM
2015/10/14 JJUGナイトセミナー「テスト駆動開発ここが聞きたい」
2015/10/14 JJUGナイトセミナー「テスト駆動開発ここが聞きたい」
TDDはじめて物語Second Season(updated)
TDDはじめて物語Second Season(updated)
#STAC2014 システムテスト自動化ハンズオン
#STAC2014 システムテスト自動化ハンズオン
最新のJava言語仕様で見るモジュールシステム #jjug
最新のJava言語仕様で見るモジュールシステム #jjug
インパス! あのこれダメッス! ~Javaコードレビューの指摘ポイント10選~
インパス! あのこれダメッス! ~Javaコードレビューの指摘ポイント10選~
Jjugccc2017spring m6 javafx
Jjugccc2017spring m6 javafx
JJUG CCC 2014 fall 「私がTDD出来ないのはどう考えてもお前らが悪い!」~エンタープライズJava開発でのTDD適用の勘所~
JJUG CCC 2014 fall 「私がTDD出来ないのはどう考えてもお前らが悪い!」~エンタープライズJava開発でのTDD適用の勘所~
NDS36 Java7&Java8
NDS36 Java7&Java8
Jjug ccc 2016_fall_blue_green_deployment
Jjug ccc 2016_fall_blue_green_deployment
JaSST nano vol.1 "映え”を評価する~UXテストの取り組みなの
JaSST nano vol.1 "映え”を評価する~UXテストの取り組みなの
JaSST nano vol.7 「なぜペアワイズテストを使いこなせないのか」
JaSST nano vol.7 「なぜペアワイズテストを使いこなせないのか」
スクラムにおけるQAメンバー(非開発者)の関わり方を模索してみた
スクラムにおけるQAメンバー(非開発者)の関わり方を模索してみた
サーバーフレームワークに潜んでる脆弱性検知ツール紹介
サーバーフレームワークに潜んでる脆弱性検知ツール紹介
20141101渋谷ruby会議
20141101渋谷ruby会議
ハイパフォーマンスSeleniumテスト@サイボウズ
ハイパフォーマンスSeleniumテスト@サイボウズ
ドメイン駆動設計(DDD)導入判定チェックシート
ドメイン駆動設計(DDD)導入判定チェックシート
「Selenium実践入門」で学ぶテスト自動化の世界
「Selenium実践入門」で学ぶテスト自動化の世界
TDD #NagoyaTesting
TDD #NagoyaTesting
Similar a テスト駆動開発の導入ーペアプログラミングの学習効果ー
分散開発チームによるAgile開発実践 ~いろいろハマった!よかった
分散開発チームによるAgile開発実践 ~いろいろハマった!よかった
Makoto Iguchi
研究を基にしたオープンソース開発チェックポイント
研究を基にしたオープンソース開発チェックポイント
Recruit Technologies
とりあえず30分でひととおり分かった気にはなれるアジャイル入門
とりあえず30分でひととおり分かった気にはなれるアジャイル入門
陽一 滝川
テストしなイカ? Seleniumで自動ブラウザテスト
テストしなイカ? Seleniumで自動ブラウザテスト
Ohishi Mikage
【XDev】A-2 アジリティ向上のためのツール活用
【XDev】A-2 アジリティ向上のためのツール活用
智治 長沢
【JaSST'14 Tokyo】システムテストの自動化による 大規模分散検索プラットフォームの 開発工程改善 #JaSST
【JaSST'14 Tokyo】システムテストの自動化による 大規模分散検索プラットフォームの 開発工程改善 #JaSST
Kotaro Ogino
JaSST16tokyo tm_koyama
JaSST16tokyo tm_koyama
ryuji koyama
GCSアジャイル開発を使ったゲームの作り方
GCSアジャイル開発を使ったゲームの作り方
Hiroyuki Tanaka
Test automation strategy for .net core 3 transition
Test automation strategy for .net core 3 transition
Tatsuya Ishikawa
『はじめてのClojure』勉強会#3 第7章:テスト、テスト、テスト
『はじめてのClojure』勉強会#3 第7章:テスト、テスト、テスト
makopi 23
【JaSST'11 Tokyo】 テスト イノベーション
【JaSST'11 Tokyo】 テスト イノベーション
智治 長沢
CodeZineAcademy TDD実践講座PR資料
CodeZineAcademy TDD実践講座PR資料
Yasui Tsutomu
Distributed Agile using UML
Distributed Agile using UML
Kenji Hiranabe
Introduction to Continuous Testing
Introduction to Continuous Testing
Atsuhiro Kubo
20170710 hifive-test-meetup
20170710 hifive-test-meetup
Naoya Kojima
RICOH最終選考プレゼン資料
RICOH最終選考プレゼン資料
pyar6329
Team Foundation Server ~ 今を生きるエンジニアのための開発基盤とは 【BPStudy #63】
Team Foundation Server ~ 今を生きるエンジニアのための開発基盤とは 【BPStudy #63】
智治 長沢
ICSE2014参加報告 (SE勉強会 6/12)
ICSE2014参加報告 (SE勉強会 6/12)
Kazunori Sakamoto
Scrum"再"入門
Scrum"再"入門
You&I
ビルドプロセスとCI #STAC2014
ビルドプロセスとCI #STAC2014
Koji Hasegawa
Similar a テスト駆動開発の導入ーペアプログラミングの学習効果ー
(20)
分散開発チームによるAgile開発実践 ~いろいろハマった!よかった
分散開発チームによるAgile開発実践 ~いろいろハマった!よかった
研究を基にしたオープンソース開発チェックポイント
研究を基にしたオープンソース開発チェックポイント
とりあえず30分でひととおり分かった気にはなれるアジャイル入門
とりあえず30分でひととおり分かった気にはなれるアジャイル入門
テストしなイカ? Seleniumで自動ブラウザテスト
テストしなイカ? Seleniumで自動ブラウザテスト
【XDev】A-2 アジリティ向上のためのツール活用
【XDev】A-2 アジリティ向上のためのツール活用
【JaSST'14 Tokyo】システムテストの自動化による 大規模分散検索プラットフォームの 開発工程改善 #JaSST
【JaSST'14 Tokyo】システムテストの自動化による 大規模分散検索プラットフォームの 開発工程改善 #JaSST
JaSST16tokyo tm_koyama
JaSST16tokyo tm_koyama
GCSアジャイル開発を使ったゲームの作り方
GCSアジャイル開発を使ったゲームの作り方
Test automation strategy for .net core 3 transition
Test automation strategy for .net core 3 transition
『はじめてのClojure』勉強会#3 第7章:テスト、テスト、テスト
『はじめてのClojure』勉強会#3 第7章:テスト、テスト、テスト
【JaSST'11 Tokyo】 テスト イノベーション
【JaSST'11 Tokyo】 テスト イノベーション
CodeZineAcademy TDD実践講座PR資料
CodeZineAcademy TDD実践講座PR資料
Distributed Agile using UML
Distributed Agile using UML
Introduction to Continuous Testing
Introduction to Continuous Testing
20170710 hifive-test-meetup
20170710 hifive-test-meetup
RICOH最終選考プレゼン資料
RICOH最終選考プレゼン資料
Team Foundation Server ~ 今を生きるエンジニアのための開発基盤とは 【BPStudy #63】
Team Foundation Server ~ 今を生きるエンジニアのための開発基盤とは 【BPStudy #63】
ICSE2014参加報告 (SE勉強会 6/12)
ICSE2014参加報告 (SE勉強会 6/12)
Scrum"再"入門
Scrum"再"入門
ビルドプロセスとCI #STAC2014
ビルドプロセスとCI #STAC2014
Más de Shuji Watanabe
Serverless - Developers.IO 2019
Serverless - Developers.IO 2019
Shuji Watanabe
Ansible ハンズオン on AWS - DevelopersIO 2017
Ansible ハンズオン on AWS - DevelopersIO 2017
Shuji Watanabe
SSMでマネージドEC2 #reinvent #cmdevio
SSMでマネージドEC2 #reinvent #cmdevio
Shuji Watanabe
プロビジョニングの今 ーフルマネージド・サービスを目指してー #cmdevio2016 #E
プロビジョニングの今 ーフルマネージド・サービスを目指してー #cmdevio2016 #E
Shuji Watanabe
ELBの概要と勘所
ELBの概要と勘所
Shuji Watanabe
AWSによるWebサイト構築と運用 - concrete5 編 -
AWSによるWebサイト構築と運用 - concrete5 編 -
Shuji Watanabe
Cloud FormationによるBlue-Green Deployment - Dev io mtup11 003
Cloud FormationによるBlue-Green Deployment - Dev io mtup11 003
Shuji Watanabe
CloudSearchによる全文検索 - CM:道 2014/08/01
CloudSearchによる全文検索 - CM:道 2014/08/01
Shuji Watanabe
Javaアプリケーション開発におけるユニットテストとTDDの実践 Java Day Tokyo 2014
Javaアプリケーション開発におけるユニットテストとTDDの実践 Java Day Tokyo 2014
Shuji Watanabe
TDD BootCamp in JJUG CCC - レガシーコード対策編 -
TDD BootCamp in JJUG CCC - レガシーコード対策編 -
Shuji Watanabe
s3+cloud frontによる静的コンテンツ配信 - Sphinx編 #cmdevio
s3+cloud frontによる静的コンテンツ配信 - Sphinx編 #cmdevio
Shuji Watanabe
クラスメソッド会社説明会in札幌 — メンバー紹介 #cmdevio
クラスメソッド会社説明会in札幌 — メンバー紹介 #cmdevio
Shuji Watanabe
テスト駆動開発のはじめ方
テスト駆動開発のはじめ方
Shuji Watanabe
ユースケースからテスト駆動開発へ
ユースケースからテスト駆動開発へ
Shuji Watanabe
テスト駆動開発入門
テスト駆動開発入門
Shuji Watanabe
テストコードのリファクタリング
テストコードのリファクタリング
Shuji Watanabe
JUnit実践入門 xUnitTestPatternsで学ぶユニットテスト
JUnit実践入門 xUnitTestPatternsで学ぶユニットテスト
Shuji Watanabe
アジャイルテスティング
アジャイルテスティング
Shuji Watanabe
テストリストの見つけ方
テストリストの見つけ方
Shuji Watanabe
TDDをはじめよう
TDDをはじめよう
Shuji Watanabe
Más de Shuji Watanabe
(20)
Serverless - Developers.IO 2019
Serverless - Developers.IO 2019
Ansible ハンズオン on AWS - DevelopersIO 2017
Ansible ハンズオン on AWS - DevelopersIO 2017
SSMでマネージドEC2 #reinvent #cmdevio
SSMでマネージドEC2 #reinvent #cmdevio
プロビジョニングの今 ーフルマネージド・サービスを目指してー #cmdevio2016 #E
プロビジョニングの今 ーフルマネージド・サービスを目指してー #cmdevio2016 #E
ELBの概要と勘所
ELBの概要と勘所
AWSによるWebサイト構築と運用 - concrete5 編 -
AWSによるWebサイト構築と運用 - concrete5 編 -
Cloud FormationによるBlue-Green Deployment - Dev io mtup11 003
Cloud FormationによるBlue-Green Deployment - Dev io mtup11 003
CloudSearchによる全文検索 - CM:道 2014/08/01
CloudSearchによる全文検索 - CM:道 2014/08/01
Javaアプリケーション開発におけるユニットテストとTDDの実践 Java Day Tokyo 2014
Javaアプリケーション開発におけるユニットテストとTDDの実践 Java Day Tokyo 2014
TDD BootCamp in JJUG CCC - レガシーコード対策編 -
TDD BootCamp in JJUG CCC - レガシーコード対策編 -
s3+cloud frontによる静的コンテンツ配信 - Sphinx編 #cmdevio
s3+cloud frontによる静的コンテンツ配信 - Sphinx編 #cmdevio
クラスメソッド会社説明会in札幌 — メンバー紹介 #cmdevio
クラスメソッド会社説明会in札幌 — メンバー紹介 #cmdevio
テスト駆動開発のはじめ方
テスト駆動開発のはじめ方
ユースケースからテスト駆動開発へ
ユースケースからテスト駆動開発へ
テスト駆動開発入門
テスト駆動開発入門
テストコードのリファクタリング
テストコードのリファクタリング
JUnit実践入門 xUnitTestPatternsで学ぶユニットテスト
JUnit実践入門 xUnitTestPatternsで学ぶユニットテスト
アジャイルテスティング
アジャイルテスティング
テストリストの見つけ方
テストリストの見つけ方
TDDをはじめよう
TDDをはじめよう
Último
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
Hiroki Ichikura
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
taisei2219
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
Toru Tamaki
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
Toru Tamaki
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
Ryo Sasaki
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
Toru Tamaki
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
iPride Co., Ltd.
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
sugiuralab
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Yuma Ohgami
Último
(9)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
テスト駆動開発の導入ーペアプログラミングの学習効果ー
1.
テスト駆動開発の導入 ーペアプログラミングによる学習効果ー
2012.10.26 JaSST 北海道 渡辺修司 (@shuji_w6e) 1
2.
自己紹介
3.
渡辺 修司 Javaプログラマ 株式会社エスプラニング所属
ウェブアプリやデスクトップアプリの開発 テスト駆動開発、ユースケース駆動開発 アジャイル開発 最近の趣味はロードバイクとフットサル
4.
@shuji_w6e 札幌 Javaコミュニティ TDD Boot
Camp やさしいデスマーチ(Blog) 執筆活動 WEB DB Press vol.69 JUnit実践入門(Soon!)
5.
テスト駆動開発
6.
テスト駆動開発とは? テストコードをプロダクションコードより先 に記述するテストファーストを実践し、 インクリメンタルにソフトウェアを開発する 開発手法 (TDD: Test Driven
Development)
7.
テスト駆動開発のサイクル
1.設計する 5.リファクタリング Heuristics 2.テストを書く 4.テストを成功させる 3.コードを書く
8.
テスト駆動開発の目的 明確で検証可能な仕様 テスタビリティの高い設計 常にリファクタリング可能 素早いフィードバック
9.
ペアプログラミング
10.
ペアプログラミングとは? ペアで1つの作業を行うプラクティス コードを書くドライバーと、ドライバーのサ ポートをするナビゲーター 定期的な役割の交代
11.
ペアプログラミングの効果 すべてのコードを2人以上が理解している状態 曖昧な状態でコードが書かれない ツールの使い方やコードの書き方を学べる
12.
問題 http://www.flickr.com/photos/panoptikon/403903803/
13.
典型的なプロジェクトの流れ (1) 遅れる実装 (2) とりあえずシステムテスト (3)
デバッグ地獄 (4) 後からユニットテスト (5) 追加開発でリグレッションの発生
14.
ぐだぐだになる原因 仕様が複雑でなかなか決まらない 納期のプレッシャー ユニットテストの工数がない
15.
ぐだぐだになる本当の原因 完成の基準が実装者によって異なる 理解不足のままで実装している 変更に対して脆い スキル不足 担当機能以外に興味が無い 結合すると動かない
16.
事例 http://www.flickr.com/photos/kieon/4313604468/
17.
プロジェクトの概要 Java のデスクトップアプリケーション 解析エンジン +
GUI(Swing) 56名で3ヶ月程度の規模 ミッションクリティカルなシステムのデータ を解析するツール
18.
導入前 カオスなコード GUIとビジネスロジックが相互依存 シングルトンパターンの乱用 価値のないテストコード privateメソッドのテスト 少しの変更で通らなくなるテスト
19.
開発手法の改善 Tracによるissue管理 外部設計にユースケースを導入 自動化(SVN + Maven
+ JenkinsCI) ペアプログラミング テストファースト(テスト駆動開発) リファクタリング
20.
ペアプログラミングの運用 初心者同士ではペアを作らない 2週間を目安にペアを変更 担当個所が偏らないように作業を配分
21.
テストファーストの導入 必須とはしない 書ける個所はテストを先に書いてみる 「どうテストするか?」を意識する イメージが沸かない場合は軽く実装する
22.
開発の流れ (1) ナビゲータに実装することを説明する (2) ナビゲータからの質問に答える (3)
合意したならば、実装を進める (4) 適宜ツッコミを受ける (5) 一区切りついたならば役割をチェンジする
23.
効果
24.
作業時間 実装完了時間はほぼ2倍 デバッグ時間は半減 システムテスト後の修正時間は半減 トータルで23割増えた程度 ※慣れてくれば同程度の時間になる可能性
25.
品質 不具合の質が変化 システムテスト時の不注意的な欠陥が激減 プロジェクト中盤でも安定して動作 欠陥
開発期間
26.
<CONFIDENCE>
CONFIDENCE
27.
教育的効果 ツールの使い方 コーディングの技報 他人の「考え方」を知ること 多くの事を学べるが、プログラミングを作業 と考えていると効果は薄い
28.
考察
29.
テスト駆動開発とペアプロの効果 効果的なユニットテスト ユニットテストの強制 考えたことを相手に伝えるプロセス プロジェクトナレッジの共有 プログラマのスキルアップ
30.
効果的なユニットテスト CIの導入による素早いフィードバック プロジェクト終盤での「
褄合わせ」の減少 「無駄なユニットテスト」の減少 privateメソッドのテスト インターフェイスを意識したテスト
31.
ユニットテストの強制 面倒なテストを先に書く 後から書くのはもっと面倒 「動くことを確認するテスト」から 「動かすためのテスト」へ
32.
考えたことを相手に伝えるプロセス バグのあるコードは「不安なコード」 自信が無いのでコメントで誤魔化す コードに落とす前に言語化して伝える 考えが曖昧なままで書かれたコードが減少 コピペするにも考える 会話が増える
33.
プロジェクトナレッジの共有 「この機能はXXさんが担当したから解らな い」がほとんどなくなる 知見をチームに伝搬させる 担当ではない機能にも興味を持たせる
34.
プログラマのスキルアップ コーディング上のテクニック ツールの使い方 デザインパターン リファクタリング 問題に対する「考え方」
35.
課題 http://www.flickr.com/photos/togemaru/2882075323/
36.
基礎体力は必要 プログラミングスキル リファクタリング 設計パターン テストスキル
37.
教育的コスト 初心者にとって学べることは多い プロジェクトのリソースと教育コスト 当然のように教育コストを払ってくれない 余裕のないプロジェクトでは難しい 一時的なメンバーでは効果が薄い
38.
実績と経験者 経験者がいないと難しい ワークショップなどで「素振り」が必要 初心者は経験者と組むことで楽 経験者は思った以上に疲れる
39.
ワークショップのススメ 半日から数日のワークショップ テストファーストとペアプロに慣れる 小さなアプリを作成できると良い 必ずリファクタリングまで回すこと
40.
まとめ
41.
テスト駆動開発( テストファースト) 先に振る舞いを考えることの効果 テスタビリティの高いシンプルな設計 動作するきれいなコード/リファクタリング ペアプログラミング スキルの伝搬 プロジェクトナレッジの共有 コミュニケーション
42.
質疑応答
Notas del editor
\n
30&#x79D2;&#x7A0B;&#x5EA6;\n
\n
\n
\n
\n
\n
\n
1&#x5206;&#x7A0B;&#x5EA6;\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n