● 1. Discussion on Quality ○ About QCD ○ Work 1: Deriving points of view from where you stand ○ Quality Model discussion The Kano Model ○ Software quality characteristics ● Ⅱ. Discussion on Software Tests ○ Work 2: Myers triangle problem ○ A more academic discussion on software tests Agenda

● 1. Discussion on Quality ○ About QCD ○ Work 1: Deriving points of view from where you stand ○ Quality Model discussion The Kano Model ○ Software quality characteristics ● Ⅱ. Discussion on Software ○ Work 2: Myers triangle problem ○ A more academic discussion on software tests Agenda

● 1. Discussion on Quality ○ About QCD ○ Work 1: Deriving points of view from where you stand ○ Quality Model discussion The Kano Model ○ Software quality characteristics ● Ⅱ. Discussion on Software ○ Work 2: Myers triangle problem ○ A more academic discussion on software tests Agenda

Write the “product perspective” for each view point. Work 1: Deriving points of view from where you stand References: Learn the next step you must take for your current review - A walkthrough of conducting reviews Kenji Adachi http://www.slideshare.net/AdachiKenji/20150529-ja-sst15web A: Market and customer B: Product planning C: Design and development D: Test

“Product Perspective” Presentation: Deriving points of view from where you stand A: Market and customer B: Product planning C: Design and development D: Test

“Product Perspective” Presentation (just one example) Deriving points of view from where you stand A: Market and customer Do I want to use it ? Will it become popular? Physical appearance, status C: Design and development Can it use the latest technology, is it easy to use? Is it versatile? B: Product planning Will it sell? D: Test Can it be made easily, Can it be used without any issues?

When your viewpoint changes, even with the same product, different areas become important Goal of the work: Deriving points of view from where you stand

● 1. Discussion on Quality ○ About QCD ○ Work 1: Deriving points of view from where you stand ○ Quality Model discussion The Kano Model ○ Software quality characteristics ● Ⅱ. Discussion on Software ○ Work 2: Myers triangle problem ○ A more academic discussion on software tests Agenda

● 1. Discussion on Quality ○ About QCD ○ Work 1: Deriving points of view from where you stand ○ Quality Model discussion The Kano Model ○ Software quality characteristics ● Ⅱ. Discussion on Software ○ Work 2: Myers triangle problem ○ A more academic discussion on software tests Agenda

● 1. Discussion on Quality ○ About QCD ○ Work 1: Deriving points of view from where you stand ○ Quality Model discussion The Kano Model ● Software quality characteristics ● Ⅱ. Discussion on Software Tests ○ Work 2: Myers triangle problem ○ A more academic discussion on software tests Agenda

Glenford J. Myers, The Art of Software Testing Let’s write out a series of test cases needed to test the following program (in other words, a suﬃcient data set). Example: XX test case 1. This program reads 3 integers from a card. 2. These 3 values represent the lengths of the 3 sides of a triangle. 3. The program will print a message determining if the triangle is a scalene triangle, isosceles triangle, or equilateral triangle. Work 2: Myers triangle problem

Valid 1. Test case expressing a valid scalene triangle Example［A=3,B=4,C=5］ 2. Test case expressing a valid equilateral triangle Example［A=1,B=1,C=1］ 3. Test case expressing a valid isosceles triangle Example［A=2,B=2,C=3］ 4. For a valid isosceles triangle, test case that expresses a combination of three types, including two equilateral triangles [A=B, B=C, C=A]

Example［A=3,B=3,C=4］［A=3,B=4,C=3］［A=4,B=3,C=3］ Work 2 (answer): Myers triangle problem

Invalid❶ 5. Test case with a input ﬁeld value of 0 Example ［3 patterns in which A=0, B=3 , C=4, and one other is 0］ ［3 patterns where A=0, B=0, C=1, and 2 others are 0］ 6. Test case with a negative number input ﬁeld value ［3 patterns where A=1, B=3, C=14 and 1 other is negative］ ［3 patterns where A=-1, B=-1, C=1 and 2 others are negative］ ［A=-1,B=-1,C=-1］ Work 2 (answer): Myers triangle problem

Invalid 2 7. Test case [A+B=C] in which all of the ﬁelds are integers above 0, and the sum of the two ﬁelds is equal to the remaining ﬁeld Example［A=1,B=2,C=3］ 8. Test case with three combinations of [A+B=C] in ﬁeld 7 Example［A=1,B=2,C=3][A=1,B=3,C=2][A=3,B=2,C=1] Work 2 (answer): Myers triangle problem

Invalid ❸ 9. Test case [A+Band the sum of the two ﬁelds is smaller than the remaining ﬁeld Example［A=1,B=2,C=4］ 10. Test case with three combinations of [A+Bﬁeld 9 Example［A=1,B=2,C=4］,[A=1,B=4,C=2], [A=4,B=2,C=1] Work 2 (answer): Myers triangle problem

Invalid ❹ 11. Test case [A=B=C=0] in which all ﬁelds are 0 Example［A=0,B=0,C=0］ 12. Test case in which values have been inputted that are not half-width digit integers Example [decimal point, control code, half-width/full-width space, half-width/full with capital/lower-case letters, half-width/full-width kana, full-width digits, kana, kanji, etc.] 13. Test case in which there are less than 3 input values Sample ［3 patterns in which A=null,B=3,C=4, and one other is blank］ [3 patterns in which A=null,B=null,C=1, other other two are blank] [A=null,B=null,C=null] Work 2 (answer): Myers triangle problem http://blog.livedoor.jp/hime78/archives/50980099.html

Valid (display) 14. Does the actual display match the expected display results, based on the values entered? Work 2 (answer): Myers triangle problem http://blog.livedoor.jp/hime78/archives/50980099.html

● I thought of doing the Myers triangle problem at a study session, and it ended up being much harder than I expected. It was a great learning experience. ○ http://togetter.com/li/843768 ● Number of required tests cases ○ http://a-lifelong-tester.cocolog-nifty.com/blog/2011/06/post- caee.html ○ Various perspectives on triangle problem tests Side note: Myers Triangle Problem

● 1. Discussion on Quality ○ About QCD ○ Work 1: Deriving points of view from where you stand ○ Quality Model discussion The Kano Model ○ Software quality characteristics ● Ⅱ. Discussion on Software Tests ○ Work 2: Myers triangle problem ○ A more academic discussion on software tests Agenda

● A more academic discussion on software tests ○ 7 test principles ○ Test techniques ○ Test levels ○ Test types ○ 4 test quadrants ○ Test automation pyramid A more academic discussion on software tests ｜Agenda ISTQB glossary

● A more academic discussion on software tests ○ 7 test principles ○ Test techniques ○ Test levels ○ Test types ○ 4 test quadrants ○ Test automation pyramid A more academic discussion on software tests ｜Agenda

1. Tests will tell you if there are any defects, but cannot conﬁrm that there are not any defects 2. Exhaustive testing is impossible 3. Test early to reduce time and cost 4. Defect clustering 5. Be aware of the pesticide paradox 6. Testing is context dependent 7. The “absence of errors” trap 7 test principles

2. Exhaustive testing is impossible 1×1 2 paths 2×2 12 lines 3×3 184 lines 4×4 8512 lines 5×5 1,262,516 paths 6×6 575,780,564 paths The Art of 10^64 -Understanding Vastness https://www.youtube.com/watch?v=Q4gTV4r0zRs S G How many paths from the start to goal of this square? Can take a roundabout path, but cannot cross the same path twice

● A more academic discussion on software tests ○ 7 test principles ○ Test techniques ○ Test levels ○ Test types ○ 4 test quadrants ○ Test automation pyramid A more academic discussion on software tests ｜Agenda

● Equivalence partitioning ● Boundary value analysis ● Decision table testing ● State transition testing ● Use case testing ■ Image https://thinkit.co.jp/images/article/40/2/4021_zoom.gif Speciﬁcation-based/black box test method | Test methods

Apple selling price 1. 1-4 apples 200 yen each 2. 5-9 apples 170 yen each 3. 10+ apples 160 yen each Equivalence partitioning, boundary value analysis 0 1 4 5 9 10 Prices of 200, 170, 160 yen Software Test Technique Drill by Koichi Akiyama

If the buyer for a certain job is an educator, they will get 10% oﬀ selected items. Decision table test 1 2 3 condit ions Is the buyer an educator N y y Is the purchased item eligible - N y Action 10% discount N N y Judgment on discount for the job

Use Case Test https://thinkit.co.jp/images/article/40/2/4021_zoom.gif Business Trip Application System Applicant Approver Accounting Team Register business trip application Submit business trip application Approve business trip application Reject business trip application

Send back business trip application

Check business trip application Sample use case diagram

● A more academic discussion on software tests ○ 7 test principles ○ Test techniques ○ Test levels ○ Test types ○ 4 test quadrants ○ Test automation pyramid A more academic discussion on software tests ｜Agenda

● A more academic discussion on software tests ○ 7 test principles ○ Test techniques ○ Test levels ○ Test types ○ 4 test quadrants ○ Test automation pyramid A more academic discussion on software tests ｜Agenda

● Feature test ■ Test for “what are you doing” ● Non-feature test ■ Test for ”how you will make this action” ● Structure test ■ Test for “how much of the structure have you covered” ● Re-test, regression test ■ Test for running a tested program many times Test Type

● A more academic discussion on software tests ○ 7 test principles ○ Test techniques ○ Test levels ○ Test types ○ 4 test quadrants ○ Test automation pyramid A more academic discussion on software tests ｜Agenda

● A more academic discussion on software tests ○ 7 test principles ○ Test techniques ○ Test levels ○ Test types ○ 4 test quadrants ○ Test automation pyramid A more academic discussion on software tests ｜Agenda

1. Do tests from a variety of standpoints 2. Even for a program that seems simple, there are many different tests cases 3. Be aware of QCD - Quality, Cost, and Deliver/Time

Don’t think about just good or bad, but propose new ideas and make improvements in order to improve quality Summary

◆ The Art of Software Testing ◆ JSTQB Foundation Level Syllabus Version 2018.J01 ◆ Software Textbook JSTQB Foundation Version 4 ◆ Lessons Learned in Software Testing ◆ Lessons Learned in Software Testing: A Context-Driven Approach ◆ ソフトウェア品質知識体系ガイド 第2版 –SQuBOK Guide V2- (日本語版) ◆ ソフトウェアテスト技法ドリル－テスト設計の考え方と実際 (日本語版) Additional References