CS263 AppScale Project Options

The goals of this project are to
  1. Give you hands-on experience with a large-scale distributed systems application
  2. Expose you to development based on an existing, large, open-source code base
  3. Open your mind to systems development in which multiple components, written in multiple languages, interoperate (efficiently and scalably, if possible)
  4. Give you a better understanding of virtualization and how to use them (build images, deploy full system instances from images)
  5. Get you thinking about the challenges and opportunities related to cloud comput

The first step of the project is to write a Python and Java Google App Engine (GAE) App, debug and test it with the SDK, and deploy it on Google's resources (free of charge). This will give you insight into the GAE process and what it supports and what it doesn't. You can find instructions on how to do this on Google's GAE pages.Write a GAE app in both Java and Python so that you can get the feel of how different each is.

Concurrently, you should begin investigating the background you need for your main project. Project options are listed below with descriptions and details. Also below are the specs and the list of important dates (when things are due, etc). There are due dates for progress reports throughout the quarter. The dates are also on Chandra's shared Google Class Calendar. See the cs263 page for the link to add this calendar to your calendar set.

Project Specs and Due Dates