Active Projects »

Gameful Computational Thinking

Inspired by CS for All?  Eager to contribute?  The Programming Systems Lab, led by Professor Gail Kaiser, is building a collaborative game-based learning and assessment system that infuses computational thinking in grade 6-8 curricula.  Near-term projects involve: Tooling Scratch with additional game design features Expanding a visual assessment language and authoring environment based in Blockly […]


Toward Trustworthy Mutable Replay for Security Patches

Society is increasingly reliant on software, but deployed software contains security vulnerabilities and other bugs that can threaten privacy, property and even human lives. When a security vulnerability or other severe defect is discovered, a software patch is issued to attempt to fix the problem – but patches themselves can be incorrect, inadequate, and break mission-critical […]


Dynamic Code Similarity

“Code clones” are statically similar code fragments dispersed via copy/paste or independently writing lookalike code; best practice removes clones (refactoring) or tracks them (e.g., to ensure bugs fixed in one clone are also fixed in others). We instead study dynamically similar code, for two different similarity models. One model is functional similarity, finding code fragments […]


About CloudView

CloudView is a project that enables detection and diagnosis of network faults using a peer to peer architecture. Consider the following scenario. A user is trying to log into an IM server, but she is not able to. There could be a variety of reasons for the failure. Some plausible causes for this failure are the IM server is temporarily unavailable, the ISP is down, or the user’s password is not correct.

CloudView can be used to diagnose this problem, proceeding as follows: CloudView tries to contact other peers who are part of its network, which will then run probes to try to isolate the problem. Examples of probes could be trying to log in from another node, using a different username and password, and trying to ping the server. The results of these probes will be returned to the original node, and using the rule book it would try to find the cause of the problem. This entire process is automated and the group of peers runs a set of analysis tests and depending on the results on these tests, we can diagnose the problem.

Our system is based on the DYSWIS system. While DYSWIS is focused on the detection and diagnosis of network and transport level faults, CloudView is aimed towards the detection and diagnosis of faults at the application level.

In previous semesters, we have focused on the XMPP/Jabber Chat Protocol and developed a proof-of-concept implementation. We have also extended our system to the Samba (SMB) protocol.

We are looking to add more functionality to the current implementation and also extend this into other domains, which include BitTorrent, Cloud Computing, Email, Web Browsing, and Games.

Team Members

Prof. Gail Kaiser, kaiser [at]

Graduate Students
Swapneel Sheth, swapneel [at]

Former members
Rajat Dixit
Palak Baid
Somenath Das
Siming Sun
Jau-Yuan Chen