Student Project Page

From Java CoG Kit

Jump to: navigation, search

Contents

Refernces

If you write an article and use bibtex, please use the following files for Gregors references. There is no need to replicate this information! This will save you a lot of work

All of Gregors references are available in bibtex format at

In partiular the following files will be used with bibtex

Illinois Institute of Technology, CS550 Distributed Systems,

The Class Project for the CS550 Advanced Operating Systems (3 cr. sect. 1) -- Fall 2005 taught at Illinois Institute of Technology taught by Dr. Sun. The projects listed here are supervised by Gregor von Laszewski, gregor@mcs.anl.gov. The course policies are posted at the [calss web page].

  • Two-page Term Project Proposal Due: Sept. 20, 2005 (e.g. two days earlier, no extension possible)
  • Final Term Project Report Due: Dec. 6, 2005 (two days earlier, extension possible if needed.)
  • Incompletes. Incompletes are handled according to IIT policies.
  • Reports are written in Word or LaTeX. Using automatic section and figure numbers is a must. If Word is used, figures should only be drawn as embedded ppt inlines or with visio. It is not acceptable to use MSdraw or use the drawing capabilities of word. Best is if you structure your paper in such a form that all figures are presented at the end.
  • References are to be maintained in bibtex. You can export them to html and use them this way conveniently in word. citations are of the form [3letterslastname2numbersyearabrev]
  • You will maintain your progress of the project on the Wiki, while reporting on a weekly basis by answering the following questions: What have I done this week, what have I not achieved this week, what will I do next week.

Publication Opertunities

http://www.acm.org/crossroads/

Projects

Project A: Survey of Grid Workflows

Prepare a quality article that surveys Grid Workflow systems. Identify different properties and provide a classification. Please note that not every classification in the literature is correct.

A starting point for this project is a google search on "Grid Workflow" and http://www.extreme.indiana.edu/swf-survey/, also check out Gregors vita.

You will be maintaining a Wiki page on which you will add a table and pointers to Grid Workflow systems. The comparitve paper will be based on this table.

Evaluation criterion: Here it is important that you make sure your bibliography and your writeup are of standard quality. That means the paper should be submittable to a conference or journal without much modifications.


Project B: Programming A Distributed Web/Grid Service Framework

All Projects are subject to change and can be negotiated with you. The project has several Tasks. To obtain an A it is not necessary to do all tasks. A reasonable subset will be sufficient. Discuss with me your progress during the middle of the semester.

Task 1: Proposal

Define a Project proposal. Here it is important that you suggest what you will do with me and make sure the class requirements are met.


I suggest the topic title given in Project B. As part of this project you will develop a secure Web service that can be employed as a distributed service infrastructure and allows a number of users to execute jobs on them. A simple queuing system for jobs and available machines will distribute the work amongst the available services. The focus of the project is to learn on how to secure such a service. Acceptable programming environments are Java and C#/.net.

Task 2: Configure the Java CoG Kit Distribution

You may skip this task and postpone till later. The other tasks are more important. At a later stage in the project we will be using the karajan workflow engine from the Java CoG kit and transfer the necessary jar files to the remote service to run it there while using a specific classpath loader. To get you familiarized with the code, we like that you develop a GUI that allows generating a custom distribution of the Java cog cit with the necessary jar files.

A screenshot may look like

Java CoG Kit configuration module
[ ] karajan
[ ] common
[ ] gt2 provider
[ ] gt3 provider
....

the contents of the GUI is derived from the module directories.

Step 1: generate the GUI

cog-configure

  • -dir <dir where the modules are> creates the program that generates the GUI and can be called from the program
  • -gui pops up the gui and selects the modules
  • ...

Task 3: Distributed Monte Carlo

Develop a program that uses the monte carlo method to determine PI. Do two programs. One that uses the karajan workflow and the other that uses your Web service. Compare the codes. Discuss performance, scalability, and deployment issues.

Note: what is different between this program and the laplace equation

Task 4: Distributed Laplace Equation

Now develop a program for solving the Laplace equation do compare your frame work with a solution provided for the karajan workflow. Discuss your solution with the developers of karajan.


Task 5: Secure Execution Web Service

Develop a secure Web service that executes a program on a remote machine. Discuss the strategy that allowed you to secure the service. Identify what features of the OS supports securing your service. Remember that we deal with multiple users.

Conduct a performance experiment that measures the difference between secure and unsecured web service.

Task 6: Reuse the WS-RF execution service from GT

Do all of the above but use now WS-RF

Task 7: Something in addition

Do something in addition, such as running a blast job. You could suggest otther things.

  • go to NCBI and download protein that you tahn blast
  • use google maps to do an interesting project with distributed application (assume each of you has a gps enabled cell phone, write a secure program and service that shows where you are).
  • assume you like to do a parameter study, write a framework that maintains the parameter study.

Other project ideas

  • a) if you like security we have a project that could improve the way we issue certificates
  • b) if you like gui programming you could improve the desktop gui that we have
  • c) if you like a commandlines you could improve the commandline shell we have
  • d) if you like metadata you could help on a project that enable scientific expereiment management
  • e) if you od not like any of them and you have a better idead based on your skills, let me know.


Student Project Suggestions

Personal tools
Collaboration and Jobs