Multi-Threading II
1 Purpose
The primary purpose of this assignment is to help you review (and
demonstrate that you have acquired) the knowledge and skills
required to write multi-threaded applications. There is no network
programming in this assignment.
2 Overview
You have already done some work for
KitchIntel, a (fictitious)
company that intends to simplify and improve all aspects of the
"kitchen experience" (including the purchase of food and materials,
meal preparation, and waste disposal).
The company is now starting to work on a smart oven and your team
is working on the controller.
3 Documents
During the sprint planning meeting you took notes that, you think,
contain everything you need to proceed.
In case you lost them, they are
available here:
Notes from the Sprint 5 Planning Meeting
4 Tasks
You must both think about the right way to make the system thread-safe,
implement your design, and test it (both unit tests and integration/system
tests as appropriate).
5 Submission
You must submit (using
Autolab) a
.zip
file
named pa5.zip
that contains all of your code.
6 Grading
The grade you receive on this assignment will be based on the effort
you devote to it. If you make a "serious" effort and have a design
and implementation that can be argued to be correct, you will
receive a grade of 100. If you make a "serious" effort but your
design and/or implementation clearly has major defects, you will
receive a grade of 75. If you make a "half-hearted" effort, you will
receive a grade of 50. Otherwise, you will receive a grade of 0.