Assignments

Topic Learning Goals Tools
1 X Programming Drawing. Tunability. Low-level event handling.

Program: Mad Birds

XLib
2 Toolboxes Model-View-Controller. Using Java widgets.

Tentative Program: Interface to Quest web service.

Java, Swing, XLib
3 Custom Controls Developing your own control. Interaction design.

Program: Timeline control for a file browser.

Java, Swing
4 Mobile Apps Developing a mobile application for Android.

Tentative Program: Interface to Quest web services.

Android Development Kit
5 Direct Manipulation Introductory graphics, including using affine transformations.

Program: Paper dolls

Java

General Policies and Advice

Participation

In addition to the above assignments, each student is expected to prepare an exam study question drawn from a randomly assigned lecture. Students will post their study questions to a separate Piazza instance. The instructor will comment, where necessary, to ensure reasonable and accurate questions.

It is highly likely that some of these questions will appear on your exams.

Study questions are due by the following class time. Submission is via Piazza (be sure to do it in CS349E!) in two parts. The first part, posted anonymously but to the entire class, is the question. The second part contains the proposed answer. It has exactly the same title and is posted privately.

Study questions will be assigned a mark based on a two-dimensional scale: the quality of execution and Bloom's taxonomy.


Source: Wikipedia

Bloom's taxonomy recognizes that simply regurgitating facts (Remembering) is not the same level of learning as being able to apply new skills in a novel situation (Apply) (for example). "Learning at the higher levels is dependent on having attained prerequisite knowledge and skills at lower levels." Learning at the higher levels is more difficult (but more rewarding) than learning at lower levels.

Similarly, writing exam questions that test rote knowledge (bottom level of the hierarchy) is not particularly hard. Writing exam questions that test higher levels is more difficult. So, like some Olympic sports have both a "difficulty" and a "execution" score, so will our exam questions. For each question, the instructor will judge the level on Bloom's taxonomy and place it in a "quality of execution" bucket. The mark will then be derived from the following table:

Execution
Bloom Level Acceptable Good Excellent
Analyze etc 4 5 5
Apply 3 4 5
Understand 2 3 4
Remember 1 2 3

All assignments are individual efforts and academic integrity policies apply. In particular, exam questions are not to be taken from the textbook(s).