![]() |
Overview | Assignments | Policies |
CIS 5550: AssignmentsAssignment 0: Hello WorldFor this assignment, you will implement "Hello World" in Java. The real purpose, of course, is to set up the environment you will need for this class, and to practice the various steps, such as GitHub commits and Gradescope submissions. HW0 handoutAssignment 1: Static Web ServerThe goal of this assignment is to build a simple HTTP server that serves static files from a given directory. An enhanced version of this server will later be used as the frontend of your search engine. HW1 handoutAssignment 2: Dynamic Web ServerIn this assignment, you will extend your static web server from HW1 with support for dynamic content and routes. The API will be based on the API from Spark Framework. HW2 handoutAssignment 3: HTTPS Server on the CloudFor this homework, you will add support for sessions and HTTPS to your web server from HW2, and you will deploy it on an Amazon EC2 instance. HW3 handoutAssignment 4: In-Memory Key-Value StoreThe goal of this hoemwork is to implement a simple distributed key-value store, which will build on your web server from the previous three assignments. HW4 handoutAssignment 5: Key-Value Store with PersistenceFor this assignment, you will extend the key-value store from HW4 with persistence, as well as a nice user interface and some additional API functions. HW5 handoutAssignment 6: Analytics EngineFor this assignment, you will build a simple distributed analytics engine called Flame that is loosely based on Apache Spark. HW6 handoutAssignment 7: Enhanced Analytics EngineIn this assignment, you will enhance your Flame engine with additional operations that will be useful for crawling, indexing, and for computing PageRank. HW7 handoutAssignment 8: Distributed Web CrawlerFor this assignment, you will build a simple distributed web crawler, based on your Flame engine from HW6+HW7 and the KVS from HW4+HW5. HW8 handoutFinal Project: Cloud-Based Search EngineFor the final project, you will combine the above components, enhance them, and add a few more, to build a complete web search engine that runs on the Cloud. Project handout |