"Understanding User Comfort" Project is a research program that is trying to measure and model user comfort with resource borrowing, a commonly used technique in distributed computing.

What is resource borrowing?

In our day-to-day interactive use of desktop PCs, significant amount of system resources (like CPU, memory, network bandwidth) remain unused. We want to answer the question: How much of these resources can we utilize for other purposes, without affecting user interactivity? The user should not be discomforted.

The client emulates resource borrowing according to different profiles, and allows user feedback if his interactivity is affected. Based on collected data, we want to develop a reliable model for this relationship. This can significantly help workstation sharing distributed systems and background applications to utilize more resources without causing any discomfort to the user. It can also motivate design of interactivity-aware scheduling algorithms.

The Client/Server mechanism

The "Understanding User Comfort" client employs a client server mechanism to retrieve new testcase profiles from the server and transfer the feedback results back to the server. The testcases encode various profiles for resource borrowing which the client uses to emulate resource borrowing in various unique ways. When the user expresses discomfort feedback, the client saves the results in a local file. When connected again to the server ( during a hotsync ), it sends the updated results back to the server. Thus, all the results which are collected in the server which can then be analyzed for further study.