Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
クラシフィケーションツリー
Powered by TEF道
なかくき@ぐっずたんとう
©2019 TEF-Do 1
Test Engineer‘s Forum 北海道
(TEF道)
ソフトウェアのテストを中心として、ソフトウェアテストの勉強会、
ワークショップの開催にとどまらず、良いソフトを作るための技
術やノウハウの共有、ときには研究っぽいことをやってみて...
ねらい
クラシフィケーションツリーを
学ぼう!!
↑すでに修得済みだったらごめん
©2019 TEF-Do 3
ついでに…
使いこなせていないので、学習中。
©2019 TEF-Do 4
なので…
• 講義ではなく、一緒に使い方を学ぶスタ
イルで進めます。
(後だしなんてずるい、とは言わせない)
©2019 TEF-Do 5
メニュー
• 茶番
• 知る
• 描く①
• 描く②
©2019 TEF-Do 6
こんなことないですか?
組み合わせテストを考えるときの困りごと
• 因子がよくわからなくなる症候群
• 因子の粒度をそろえたくなる症候群
→粒度をそろえてるうちにテストの組み合
わせが爆発する
©2019 TEF-Do 7
これが
クラシフィケーションツリー
©2019 TEF-Do 8
概要
• クラシフィケーションツリー
(分類木法。 Classification Tree
Method。略称はCTM。)
©2019 TEF-Do 9
概要
• 用途をテストに限らない汎用的なモデリング手法。
• テスト設計ではいくつかのサブセットルールと意味論的な定
義を加えている。
• テスト観点や同値分割を階層構造でモデル化する。
– 同値分割のズームイン・ズームアウトを容易にする
– ...
構成要素
ドメイン
クラス クラス
クラシフィケーション クラシフィケーション
クラシフィケーション
クラシフィケーション
クラシフィケーション クラス
テストの入力や観点
クラシフィケーションが
とりえる値や同値クラス
機能名やテスト入力名
...
関係①
ドメイン
クラス クラス
クラシフィケーション クラシフィケーション
クラシフィケーション
クラシフィケーション
クラシフィケーション クラス
Is-a、同値分割の関
係
親ノードがとりえる同
値クラスや値を子ノー
ドに置く
クラシフィ...
関係②
ドメイン
クラス クラス
クラシフィケーション クラシフィケーション
クラシフィケーション
クラシフィケーション
クラシフィケーション クラス
クラシフィケーション
→クラシフィケーション
ドメイン
→クラシフィケーション
クラス
→ク...
注意①
ドメイン
クラス クラス
クラシフィケーション クラシフィケーション
クラシフィケーション
クラシフィケーション
クラシフィケーション クラス
兄弟ノードはクラシ
フィケーションかク
ラスで統一する
©2019 TEF-Do 14
注意②
ドメイン
クラス クラス
クラシフィケーション クラシフィケーション
クラシフィケーション
クラシフィケーション
クラシフィケーション クラス
クラシフィケーショ
ンの兄弟は直交して
いるのが理想
クラスの兄弟ノードは、漏
れ・ダブりを...
整理
構成要素
•ドメイン
–機能名やテスト入力名
•クラシフィケーション
–テストの入力や観点
•クラス
–クラシフィケーションがとりえる値や同値クラス
©2019 TEF-Do 16
関係
•Is-a、同値分割の関係
–クラシフィケーション...
描く
クラシフィケーションツリー
千里霧中:クラシフィケーションツリー法入門 より抜粋©2019 TEF-Do 17
描き方
• 基本的に書き方は自由
• アプローチとして以下を組み合わせる
– ボトムアップ
具体的なものを抽象化・グルーピング
– トップダウン
抽象的なものを具体化
– 整理
©2019 TEF-Do 18
たとえば、北海道のソウルフード
北海道の
ソウルフード
スープカレー ジンギスカン
©2019 TEF-Do 19
ラーメンパフェ
ぐだぐだ言ってないで
ためしに描いてみよう
お題
• 北海道のソウルフード
とりあえず、2~3階層ぐらいまで
©2019 TEF-Do 20
どんな感じになってます?
• 発散しまくってる
• 一か所だけやけに細かい
• なんだかよくわからないけど楽しい
©2019 TEF-Do 21
たとえば、北海道のソウルフード
北海道の
ソウルフード
スープカレー ジンギスカン
種類
羊の品種
カンタベリー・ラム
レスター
サフォーク
味付き 味なし
©2019 TEF-Do 22
ラーメン
プレ・サレ
パフェ海鮮丼
調理器具
ジンギス...
ひとまず、
それで良いと思う
©2019 TEF-Do 23
ルールを追加
• 北海道に訪れる人が、北海道のソウル
フードを教えて、って言われたときを想
像して描いてみましょう。
©2019 TEF-Do 24
たとえば、北海道のソウルフード
北海道の
ソウルフード
スープカレー ジンギスカン
種類
分類
旭川
函館
札幌
味付き 味なし
©2019 TEF-Do 25
ラーメンパフェ海鮮丼
調理器具
ジンギスカン鍋
網鉄板
つっこ飯
ウニ丼
メイン具...
参考
• クラシフィケーション・ツリー法入門
©2019 TEF-Do 26
Upcoming SlideShare
Loading in …5
×

クラシフィケーションツリー

57 views

Published on

TEF道の2019年2月勉強会の資料。
開催日:2019年2月28日

Published in: Software
  • Be the first to comment

  • Be the first to like this

クラシフィケーションツリー

  1. 1. クラシフィケーションツリー Powered by TEF道 なかくき@ぐっずたんとう ©2019 TEF-Do 1
  2. 2. Test Engineer‘s Forum 北海道 (TEF道) ソフトウェアのテストを中心として、ソフトウェアテストの勉強会、 ワークショップの開催にとどまらず、良いソフトを作るための技 術やノウハウの共有、ときには研究っぽいことをやってみて論 文提出など、いろいろやってます。 #tefdo ©2019 TEF-Do 2
  3. 3. ねらい クラシフィケーションツリーを 学ぼう!! ↑すでに修得済みだったらごめん ©2019 TEF-Do 3
  4. 4. ついでに… 使いこなせていないので、学習中。 ©2019 TEF-Do 4
  5. 5. なので… • 講義ではなく、一緒に使い方を学ぶスタ イルで進めます。 (後だしなんてずるい、とは言わせない) ©2019 TEF-Do 5
  6. 6. メニュー • 茶番 • 知る • 描く① • 描く② ©2019 TEF-Do 6
  7. 7. こんなことないですか? 組み合わせテストを考えるときの困りごと • 因子がよくわからなくなる症候群 • 因子の粒度をそろえたくなる症候群 →粒度をそろえてるうちにテストの組み合 わせが爆発する ©2019 TEF-Do 7
  8. 8. これが クラシフィケーションツリー ©2019 TEF-Do 8
  9. 9. 概要 • クラシフィケーションツリー (分類木法。 Classification Tree Method。略称はCTM。) ©2019 TEF-Do 9
  10. 10. 概要 • 用途をテストに限らない汎用的なモデリング手法。 • テスト設計ではいくつかのサブセットルールと意味論的な定 義を加えている。 • テスト観点や同値分割を階層構造でモデル化する。 – 同値分割のズームイン・ズームアウトを容易にする – 組み合わせの分布を抽象・具象両面で評価可能にする – テスト観点の分析をやりやすくする ツールを使って、テスト網羅度のビジュアライズやテストの自 動生成をサポートさせる場合もある。 ©2019 TEF-Do 10
  11. 11. 構成要素 ドメイン クラス クラス クラシフィケーション クラシフィケーション クラシフィケーション クラシフィケーション クラシフィケーション クラス テストの入力や観点 クラシフィケーションが とりえる値や同値クラス 機能名やテスト入力名 ©2019 TEF-Do 11
  12. 12. 関係① ドメイン クラス クラス クラシフィケーション クラシフィケーション クラシフィケーション クラシフィケーション クラシフィケーション クラス Is-a、同値分割の関 係 親ノードがとりえる同 値クラスや値を子ノー ドに置く クラシフィケーション →クラス ©2019 TEF-Do 12
  13. 13. 関係② ドメイン クラス クラス クラシフィケーション クラシフィケーション クラシフィケーション クラシフィケーション クラシフィケーション クラス クラシフィケーション →クラシフィケーション ドメイン →クラシフィケーション クラス →クラシフィケーション Has-a、 コンポジションの関係 親ノードが子ノードを包括 する 親ノードが属性として子 ノードを持つ ©2019 TEF-Do 13
  14. 14. 注意① ドメイン クラス クラス クラシフィケーション クラシフィケーション クラシフィケーション クラシフィケーション クラシフィケーション クラス 兄弟ノードはクラシ フィケーションかク ラスで統一する ©2019 TEF-Do 14
  15. 15. 注意② ドメイン クラス クラス クラシフィケーション クラシフィケーション クラシフィケーション クラシフィケーション クラシフィケーション クラス クラシフィケーショ ンの兄弟は直交して いるのが理想 クラスの兄弟ノードは、漏 れ・ダブりを避ける クラスは入力条件に 使えるものを ©2019 TEF-Do 15
  16. 16. 整理 構成要素 •ドメイン –機能名やテスト入力名 •クラシフィケーション –テストの入力や観点 •クラス –クラシフィケーションがとりえる値や同値クラス ©2019 TEF-Do 16 関係 •Is-a、同値分割の関係 –クラシフィケーション→クラス •Has-a、コンポジションの関係 –ドメイン→クラシフィケーション –クラシフィケーション→クラシフィケーション –クラス→クラシフィケーション 注意 •兄弟ノードはクラシフィケーションかクラスで統一する •クラシフィケーションの兄弟は直交しているのが理想 •クラスの兄弟ノードは、漏れ・ダブりを避ける •クラスは入力条件に使えるものを
  17. 17. 描く クラシフィケーションツリー 千里霧中:クラシフィケーションツリー法入門 より抜粋©2019 TEF-Do 17
  18. 18. 描き方 • 基本的に書き方は自由 • アプローチとして以下を組み合わせる – ボトムアップ 具体的なものを抽象化・グルーピング – トップダウン 抽象的なものを具体化 – 整理 ©2019 TEF-Do 18
  19. 19. たとえば、北海道のソウルフード 北海道の ソウルフード スープカレー ジンギスカン ©2019 TEF-Do 19 ラーメンパフェ
  20. 20. ぐだぐだ言ってないで ためしに描いてみよう お題 • 北海道のソウルフード とりあえず、2~3階層ぐらいまで ©2019 TEF-Do 20
  21. 21. どんな感じになってます? • 発散しまくってる • 一か所だけやけに細かい • なんだかよくわからないけど楽しい ©2019 TEF-Do 21
  22. 22. たとえば、北海道のソウルフード 北海道の ソウルフード スープカレー ジンギスカン 種類 羊の品種 カンタベリー・ラム レスター サフォーク 味付き 味なし ©2019 TEF-Do 22 ラーメン プレ・サレ パフェ海鮮丼 調理器具 ジンギスカン鍋 網鉄板 スリットあり スリットなし
  23. 23. ひとまず、 それで良いと思う ©2019 TEF-Do 23
  24. 24. ルールを追加 • 北海道に訪れる人が、北海道のソウル フードを教えて、って言われたときを想 像して描いてみましょう。 ©2019 TEF-Do 24
  25. 25. たとえば、北海道のソウルフード 北海道の ソウルフード スープカレー ジンギスカン 種類 分類 旭川 函館 札幌 味付き 味なし ©2019 TEF-Do 25 ラーメンパフェ海鮮丼 調理器具 ジンギスカン鍋 網鉄板 つっこ飯 ウニ丼 メイン具材 フルーツ クリーム 具だくさん系 スパイシー系 目的を意識することで、 無駄な発散はなくなる (と思う)
  26. 26. 参考 • クラシフィケーション・ツリー法入門 ©2019 TEF-Do 26

×