1 841f0intro1Aug21 CIS841 – Verification and Validation Dr David A. Gustafson [email protected] http://www.cis.ksu.edu/ ~dag
Jan 17, 2016
1841f0intro1Aug21
CIS841 – Verification and Validation
Dr David A. Gustafson
http://www.cis.ksu.edu/~dag
2841f0intro1Aug21
Goals
Prepare students to be software testers and researchers in software testing. In particular, students should understand the current state of the art in software testing, be able to read and evaluate current literature in software testing, and be able to plan an effective testing effort.
3841f0intro1Aug21
Specific Goals of CIS841
understanding of software – faults, failures, errors, and testing
knowledge of “state-of-the-practice” and “state-of-the-art” (current articles)
understanding of issues, terminology, foundations, and techniques
learning to read the literature
5841f0intro1Aug21
Conduct of Course
TU 9:30-10:45 am Discussions/Lectures Homework Exams Read Syllabus Read announcements
6841f0intro1Aug21
Crib sheets For each exam, I will allow each student to bring in
one (or more on the final) 8.5 by 11 sheets of paper, hand-written, both sides.
The development and writing of the crib sheet must be your own work. Do not show your cribsheet to others. Do not use someone else’s cribsheet. Cribsheets that share too much to be original will be turned in the honor system.
The crib sheet(s) will be turned in with the exam.
7841f0intro1Aug21
Off Campus
Unless noted, due dates for off-campus students are the same as for on-campus students – contact me if this is a problem
For in class work, email as soon as possible but definitely before next class (on-campus)– Including today’s work
Turn in proctor information as soon as possible
9841f0intro1Aug21
Active Learning
TTYP Venn Diagrams Classification Definitions 1 minute paper Meta-cognition
10841f0intro1Aug21
Exams cover
Lectures and Discussions Homework Articles and Readings PreLecture Quizzes
11841f0intro1Aug21
Think not regurgitate
Quotes are someone else’s thoughts, not your thoughts. When I see a quote on a student’s paper or exam, I am not sure if the student understood what was said in a quote.
Any quote must be acknowledged as a quote(e.g. “…”), referenced and explained.
12841f0intro1Aug21
Grading two midterms (100-150 pts) one final (200 pts) Prelecture quiz (4-10 pts) homework (10-20 pts)
– due beginning of class (10% off) 6 main tasks (30-100 pts) Final paper (100 pts) 90% of total points is an A, 80% is a B
13841f0intro1Aug21
Grade Information
will be available on kstate online– Online.ksu.edu
14841f0intro1Aug21
Availability of Lectures
world wide web– Powerpoint
» Pre
» Post
– Tegrity video» Link from class web page below my webpage
» www.cis.ksu.edu/~dag
15841f0intro1Aug21
Articles
current information– sometimes unproven
different viewpoints different styles, terminology, levels little background information
16841f0intro1Aug21
How do you read an article?
My approach– Read abstract– Check refs– Read conclusions– Only then, read paper
17841f0intro1Aug21
Program X
int x, y; char out;cin >> x >> y;out = ‘A’;if (x < y) out = ‘B’;if(x > 10) out = ‘C’;if (y < 40) out = ‘D’;cout<< out;
18841f0intro1Aug21
TTYP1
Def: Subdomain: an area (subset) of the input domain such that all points in that subset are treated identically by the program.
Draw the x-y space (input domain) and find the subdomains. Label each subdomain with the output value returned.
19841f0intro1Aug21
Program Xfault1
int x, y; char out;cin >> x >> y;out = ‘A’;if (x < y) out = ‘B’;if(x > 10) out = ‘C’;if (y <= 40) out = ‘D’;cout<< out;
20841f0intro1Aug21
TTYP2
Def: failure set: a subset of the input domain that displays the failure. That is, the external behavior of the program is different (incorrect) on points in that subset
Draw the failure set on the diagram of the x-y space.
21841f0intro1Aug21
For Thursday, Aug 23
Write a correct program in C++ that has two numeric inputs, and a deterministic output. E.g. area
Find 1) a fault that would be very easy to find, and 2) a fault that would be very hard to find. Estimate the number of the inputs that show each fault.
(a fault would be a change to something in the correct version that would make it produce the wrong output for some inputs)
22841f0intro1Aug21
1 minute paper
What questions about testing would you like to answer? Or be answered?