Inf 43: Introduction to Software Engineering
Spring, 2016
Assignment 2: Testing
Due: Friday, May 20, 2016, 11:55pm
In this assignment you will design Black Box test cases.
The homework is due on Friday, May 20, 2016, at 11:55 pm,
uploaded as two Word files to the EEE DropBox "Inf 43 - Hw 2".
ASSIGNMENT DETAILS – PART 1
You will design test cases for SubDo's capability to compute match factors,
which are used to rank substitute teachers for a particular absent teacher.
This capability is fully defined in the "SubDo Updated Requirements Extract" below.
Focus your attention on this particular aspect of SubDo.
Since the SubDo system hasn't been implemented, you won't actually run the test cases.
Make sure you do not test the user interface and its error handling capabilities,
or SubDo's other functionality, such as contacting a substitute teacher.
You will follow the equivalence class partitioning approach to black box testing.
Your homework should start from the
Homework 2 template
and should contain two (was "several") copies of the
testing matrix.
You are welcome to make minor changes to the visual look of the testing matrix, but
you must retain the basic structure.
For this part of the assignment, you will not fill in the "Result from Execution" column.
The name of the file you upload for Part 1 should be SubDo.doc (or .docx).
Your input to a test case will often be one or more
regular teachers, substitute teachers, and schools.
You should provide specific input data.
This data can go in the second column of the matrix, or
in that column you can refer to information
you've put in the "Notes to help understand" section.
Make sure you include and describe two distinct bases for dividing
the set of all inputs into subsets or subdomains.
SubDo Updated Requirements Extract
SubDo stores the following information about each teacher:
- The teacher's nine digit Social Security Number. This uniquely identifies the teacher.
- The teacher's SubDo four digit PIN.
- The teacher's name.
- The school at which the teacher works.
- The grade level which the teacher teaches.
The possible grades are E (for any elementary school grade (K-6)),
J (for any Junior High School grade (7-9)), H (for any High School Grade (10-12)),
and A (for non-grade level related specialties such as school nurse).
- The teacher's subject, one of the following: "Home room", "Science", "Math", "English", "Social Studies", "Physical Ed", and "Arts / Music", "World Language" or "Other".
- A list of future dates when the teacher plans to be absent from school.
SubDo stores the following information about each substitute:
- The substitutes' nine digit Social Security Number. This uniquely identifies the substitute.
- The substitute's SubDo four digit PIN.
- The substitute's name.
- The substitute's phone number.
- A list of the courses for which the substitute has been certified. (This list
may be empty, and typically contains at most two entries, drawn from the same
possibilities listed above for teacher's subject.)
- The substitute's home address. All substitutes live in Orange County, California.
- The number of days the substitute has been employed by the OC School District
in the current school year
- A list of days of the week during which the substitute is not available,
known as "black-out" days.
- The substitute's seniority, which is the number of years the substitute has been registered with the school district.
SubDo stores the following information about each school:
- The school's name.
- The school's address.
The following section describes the rules SubDo follows in deciding the order
in which to contact substitutes when a vacancy due to a teacher absence occurs.
Substitutes are selected for a vacancy according to the following rules.
- A substitute who is already assigned to a vacancy on a particular day is not considered for another vacancy on that same day.
- A substitute who has the day of the absence blacked-out is not considered.
- Compute the "match factor" as follows,
and prefer the substitute with the highest match factor.
- d = distance in miles from substitute's home to vacancy's school, as indicated by Google Maps
(the "driving" option should be selected, and if Google Maps suggests more than one route, use the route with the shortest distance).
- q = 1 if the teacher is certified for the vacancy's subject; 0 otherwise.
- p = the number of previous days the substitute has been employed in this school year by OCSD.
- s = the substitute's seniority.
- Match factor = (10 × (10 - d)) + (30 × q) + s – (2 × p)
Vacancies for the current date are considered in random order when contacting substitutes.
For each vacancy, substitutes are ranked by match factor, and the highest ranking substitute is called.
If he or she does not accept the position,
the process continues with the next highest ranking substitute,
until one accepts or time runs out or the list is exhausted.
ASSIGNMENT DETAILS – PART 2
You will design test cases for the search functionality on the web page
http://www.uci.edu/.
Unfortunately, we do not have access to a Requirements Document for this
functionality, so you will have to intuit the requirements based on your
own experiences.
Focus your attention on this one aspect of www.uci.edu.
Make sure you do not test other aspects of the web page's user interface,
such as the drop down boxes.
You will follow the equivalence class partitioning approach to black box testing.
Your homework should start from the
Homework 2 template
and should contain two (was "several") copies of the
testing matrix.
You are welcome to make minor changes to the visual look of the testing matrix, but
you must retain the basic structure.
For this part of the assignment, you should fill in the "Result from Execution" column.
The name of the file you upload for Part 2 should be UCI.doc (or .docx).
Make sure you include and describe two distinct bases for dividing
the set of all inputs into subset or subdomains.
Make sure to actually run your test cases and note the results in the
rightmost column.
ALERT
You can discuss this assignment with other students in the class,
but do not look at anyone else's work, and don't allow anyone
else to look at yours.
In past years more cheating cases have been occurred (or perhaps, discovered)
in homework 2 than in the other two homeworks.