CS 3911 - Design Project

Summer Semester 2003

MWF 0800 - 0900 - Room 101 College of Computing (Section A, Bob Waters)
 


INSTRUCTOR:

Bob Waters  (8AM Section)

·Office:  120 College of Computing

·Email: watersr@cc.gatech.edu

·Office Hours:  Open door policy and by appointment
 

TEACHING ASSISTANT:

Ashok Kumar Ponnuswami

Office Hours: Tuesday 1330-1430 CCB 154.


OVERVIEW

GENERAL INFORMATION

General Catalog Course Description:
Prerequisite(s): CS 2340
Intensive team-based project experience in the specification, design, and implementation of software and/or hardware for subsequent use in research, industry, and teaching.

Course Objectives:
Students will develop and demonstrate their abilities to work in a team on a substantial software project.  There are three conceptual parts to the project efforts expected of each team:

     1. Define the problem
     2. Design and implement a solution
     3. Deliver the system to the customer
 

Course Organization:



CLASS SCHEDULE
 


Week
Date
Topic
Deliverable(s) Due
Teams
1
5/12
 
 
 
5/14
 
 
 
5/16
Status Report #1

Software Requirements Specification Template

2
5/19
Finalize Team Assignments
 
 
 
5/21
 
 
5/23
No class
Status Report #2
 
3
5/26
Holiday!
 
 
 
5/28
 
 
5/30
No class
Status Report #3
·Project Plan
·Requirements Document

(DUE BY 5 PM)

 

 

4
6/02
No class    
 
6/04
 
 
6/06
No class
Status Report #4
 
5
6/09
No class
 
 
 
6/11
Midterm Presentations
 
T5 (*), T4, T8
 
6/13
Midterm Presentations
Status Report #5
·Design Document
·Peer Evaluations

DUE BY 5 PM

T2, T3,T6, T9

6
6/16
Midterm Presentations
 

 T1 (*), T7, T10

 

6/18
No Class
 

 

 
6/20
No class (Drop  Day)
·Status Report #6
 
7
6/23
No class
 
 
6/25
No class
 
 
6/27
No class
Status Report #7
 
8
6/30 
No class
 
 
7/02
No class
 
 
 
7/04
Holiday!!
Status Report #8
 
9
7/07
No class
 
7/09
No Class
 
 
7/11
No class
 Report #9
10
7/14
No class
·Project Plan & Requirements Documents due for regrade@ 3 PMStatus

7/16

Final Presentation T2 Drive Cents

T5 TA Application System

7/18
Final Presentation
Status Report #10
T3(*)Lascaux

T4 Workout Support

11
7/21
Final Presentation
T7 Biologic

T8 Plasma Display

7/23
Final Presentations
T1 Real World (*)

T10 Wireless Restaraunt

 
7/25
Final Presentations
·Design Document due for regrade @ 4 PM

Status Report #11

T6 WREK

T9 (*)  3D Atlanta

12
7/28-7/31
Finals Week
·Customer Delivery
·Peer Evaluations
·Delivery Documentation due @ 4 PM 7/28
·Status Report #12
 
 
 
 
 



TEAM INFORMATION


Team numbers are available below.  General class information will be sent to via e-mail to the aliases for all teams, which will be set up to address your GT accounts.  Be sure your GT account forwards your mail to wherever you actually want to read it.

Given that your team number is N, you have the following resources available: (THESE WILL  BE SET UP SOON.  DO NOT BUG CNS ABOUT IT!)

CLASS PROJECT ASSIGNMENTS

Team # Members Project Faculty Advisor
1
Steven Smith, Dan Frazier, Luke Switkowski Travelling Salesman Assistant John Stasko
David Cantrell, Reed Gregory, Mike Imamura Transportation Support TDB
3
Bruce Goodwin, Danille Dees, Heidi Hysell, Byron Saltysiak WebCam Instant Message Amy Voida/Beth Mynatt
4
Jeff Tindall, Shawn Sousa, Marcus Magee, Adam Sigler Workout Project TBD
5
Chris Cho, Paul Favorov, Jay Yeo, Kirandeep Atwal On-line TA Applications Allison Tew
6
Thomas Hildebrant, John Pafford, Robert Gash, Jeremie Haile, Reza Naghibi WREK Radio Dan Colestock
7
Zack Dill, Andrew Foster, Patrick Watson, Saurabh Verma 3D Body Scan DB Chris Shaw
8
Claudiu Fofiu, Paul Savastinuk, , Abdul Abounaij, Michael Wentzel, Plasma Screen Display Maureen Biggers, Irfan Essa
9
Shannon Foster, Ray Takemura, Eric Soto, David Simmons 4D Atlanta Project Frank Daellert
10
Jennifer Roper, Mohammed Hishan, Najib Zarrari Wireless Restaurant System Gregory Abowd


PROJECT IDEAS

  • Desktop PDA Interfaces (Continuing the Dynex M/F Project)

Contact: Jeff Pierce  (jpierce@cc.gatech.edu)

Last semester students developed a programming framework for PDA support. This would be a continuation of that project.

Users of personal digital assistants (PDAs) like Pilots or PocketPCs will often dock their PDA when working on their desktop machine and
then ignore it. We could instead take advantage of the PDA as an additional input/output device to monitor or control some aspect of the
desktop computer. The goal of this project is to prototype and study several applications whose interfaces relies on adding a PDA to a
desktop PC. For example:

  • Use the PDA to monitor your instant messaging contact list: who's online, who's busy, etc.

  •  Use the PDA to keep track of the progress of different tasks (ftping files, downloading web pages, print a paper)..

  •  Use the PDA to switch between different projects (sending email, writing a paper, working on classwork).

  • Use the PDA to monitor your hard disk usage, CPU activity, and network activity.

  • Home Positioning System

  • Contact: Gregory Abowd (abowd@cc.gatech.edu)

    We have built an indoor location system for the Aware Home based on RFID technology and floor mats. I would like a project team to take this  prototype and design and produce a marketable positioning service that could be deployed in any home.  This project would have significant RF design requirements (we built our own RF ID antennas based on some commercial technology) but it could be greatly improved.  It would also involve building a reliable software infrastructure that could learn the patterns of RFID reads and convert that to estimates of room-level location.  It could also involve some industrial design. In fact, I would love for this project to overlap with Industrial Design, ECE and CoC. Another very interesting possibility with this project is to reduce/remove the need for extensive wiring through use of wireless communication technology and to minimize the power requirements.  I can discuss these options with the students, but it would take particularly strong students with a lot of creativity and motivation to pull that off.  I have one person who can help as technical consultant at the beginning of the project (Thomas O'Connell).

  • .Living Memory Box

  • Contact: Gregory Abowd (abowd@cc.gatech.edu)

    Molly Stevens is working with me on a collaboration with Hewlett Packard on the general theme of capturing memories of family life and  linking digital and physical artifacts.  We would like some students to help build a platform for something called the Living Memory Box to allow for easy association of digital records to physical artifacts and the attachment of metadata to those records.  We have several pieces of this already prototyped and the students would work with Molly and HP folks on this project, possibly using some of HP Lab's new UbiMedia software infrastructure.

  • Augmenting PDAs with Displays in the Environment

  • Contact: Jeff Pierce  (jpierce@cc.gatech.edu)

    A major drawback to personal digital assistants (PDAs) is their small screen size. While a PDA's computational power, memory, and battery life will all improve with time, the size of its screen is limited by what people are willing to carry with them. If we wish to avoid having the small screen size dictate the types of tasks we can use a PDA for, we need to find a way to improve the available screen real estate.  One way to add more screen real estate is to recognize that there are many places in the world around us where there are displays in the environment. For example, offices often contain desktop displays and classrooms often contain projectors. If we could temporarily annex a display in the environment when using our PDA, we could use our PDA for a wider range of tasks (or complete existing tasks more efficiently).   In addition to creating an infrastructure for annexing displays, we need to determine how to effectively use that additional screen real estate, for example by dividing application functionality across the different displays.  The goal of this project is to prototype and study several applications that divide input and output to the application across (at least) a PDA screen and a desktop display.

    • Graphical Model Editor

    Contact: Frank Dellaert (frank@cc.gatech.edu)

    Graphical models (http://www.ai.mit.edu/~murphyk/Bayes/bayes.html) combine graph theory and probability theory to build models of probabilistic events. Examples are Bayes nets, factor graphs and Markov Random fields. They can be about static reasoning, e.g. given a set of symptoms, what is the most likely disease a patient has ? Or they can involve time: e.g.. track this target over time given noisy measurements.
    My students and I are in the process of building the mathematical back-end to perform inference in graphical models. This is done in a functional language called ML (http://caml.inria.fr/tutorials-eng.html). Specifically, we use a very fast compiler called Caml (caml.inria.fr).
    The project would involve building a graphical front-end that will allow us to compose graphical models using a GUI. This will mainly involve interacting and displaying graphs on the screen, as well as providing visula feedback from various simulations run with the models.
    All this will need to be done in ML, using GTK as the graphical user interface toolkit. We have experience building such UIs from previous senior design projects, and one of these students is sticking around over the summer and can provide you with valuable help/pointers. A swiki on the local Redhat installation of Caml and lablgtk is available at http://pbl.cc.gatech.edu/cpl/104.

    • CoC Lobby Plasma Screen Demo Application (TAKEN)

    Contact:  Maureen Biggers (maureen@cc.gatech.edu)

    The College of Computing is installing a large plasma screen display for visitors to view when in the CoC building.  What is needed are applications to run on this screen which depict the many facets of CoC research.  Got some cool ideas? 

    • On-Line TA Application System  (TAKEN)

    Contact: Allison Elliot Tew (allison@cc.gatech.edu)

     *  Process Undergraduate & Graduate Teaching Assistant (TA) applications
    *  Support TA application history, so returning TAs only need to update,  instead of re-enter all of their information
    *  Administrator interface should automate assignment of TAs to classes
    *  Support for email & reporting of hiring to individuals and campus financial offices
    *  Must work with CNS to ensure design consistent with deployment on CoC external website

    • Webcam Instant Messaging (TAKEN)

    Contact: Amy Voida (amyvoida@cc.gatech.edu)   [Advisor: Elizabeth Mynatt: mynatt@cc.gatech.edu]

    A research prototype exists that allows users to send and receive webcam
    photos inline in the instant messaging conversation. The research prototype
    is a nice proof-of-concept application but is not thoughtfully designed,
    somewhat unstable, and not suitably extensible. The project team will
    recreate the functionality of the research prototype in a robustly
    object-oriented and extensible manner for wide-scale deployment.

    • Submarine Simulation

    Contact: Bill Leahy  (leahy@cc.gatech.edu) and Kurt Eiselt (eiselt@cc.gatech.edu)

    What we need is a good multiplayer submarine simulation.
    Should be realistic but playable.
    Web interface.
    Can be modern day or WWII.
    Should include destroyers and subs (no air assets to make it more playable.)
    Needs to be scalable i.e. lots of players.

    • TeamView: Visualizing the Behavior of Social Insects (Continuation of previous semester project) (TAKEN)

    Contact: Tucker Balch <tucker@cc.gatech.edu>

    We are investigating how the behavior of individuals in social groups can be automatically recognized and learned
    by observing their movement patterns.  Initially we are exploring this problem by looking at social insects
    (ants and bees).  We have developed computer vision software that can track the insects, and record their
    positions over time to log files.

    What we need, and this would be the goal of this project, is a way for a researcher to replay, visualize and annotate
    the log files.  We envision something like a media player that would animate the movements of the animals.
    It would have play, pause and rewind buttons, and additional bells and whistles for visualization (e.g.
    a histogram of where the animals are most often located) and notation (e.g. labeling an individual's behavior).

    For more information about this research, take a look at http://borg.cc.gatech.edu/biotracking

    This semester would focus on editing and annotating tracks.

    • Smart Card Operating System

    Contact: Andre Dos Santos  (andre@cc.gatech.edu)

     The goal of this project is to design a smart card operating system. The
    team of students will learn how to design and develop code for embedded
    devices with space and processing power constraints. In addition, the
    team will learn what are the requirements, including security, for
    operating systems that control tamper resistant devices. The operating
    system can be developed either in C or assembly compatible with the Intel
    8051 instruction set. Please drop an e-mail to andre@cc with any questions
    on this project.

    • MacMOOSE

    Contact: Amy Bruckman  (amy@cc.gatech.edu)

    If anyone is interested in doing a MacOS X version of MacMOOSE/WinMOOSE,
    that might make a fun project.  (WinMOOSE was a 3911 project originally.)
    The client is a programming environment for MOOSE Crossing, an educational
    MUD.

    WinMOOSE was made by a team of students who did a basic version their
    first term, and then finished it as an independent study the following term.
    I'd especially like to work with students who will still be here in
    the fall and might be interested in taking the software to full public release.

    http://www.cc.gatech.edu/elc/moose-crossing/

    • Workout Support Tool (TAKEN)

    Contact:  Pete Wellborn  (pete@wellbornlaw.com)

    The top strength and conditioning coach in the world -- Mark Verstegen,
    a former GT coach, is in need of help to develop a human peformance system
    that will incorporate database functions, work-out design and recording,
    web-based acces, etc.  The system will, among other things, allow
    remotely-located athletes or coaches to access the system and develop a
    work-out, based upon advice and prompts.  (Think "Work-Out Wizard.")  You
    may get to hob-nob with Mia Hamm, Nomar Garciaparra, Mary Pierce, Eddie
    George, and other elite athletes when you visit Mark's world class facility
    in Tempe.  See athletesperformance.com.  Plus, Mark is a GREAT guy . . . .

    • Ultimate Point of Sale

    Contact:  Pete Wellborn  (pete@wellbornlaw.com)

    Local tanning bed industry leader needs help designing the end-all,
    be-all database/POS system.

    • Transportation (Trucking Industry) Support (TAKEN)

    Client: David Cantrell (dlc@burdell.org)

    Here is my problem.  When we started our company, we created a DOS
    based program called Drive-Cents.  This program catered to a section of
    the  trucking industry called Owner-Operators.  The output was industry
    specific and helped the small owner with statistics and savings methods to be a
     better and more knowledgeable business person.  We updated our systems to

    Windows 2000 on the work stations and Linux on our server.  When we did
    this our DOS program quit working.  We started using QuickBooks and downloaded
    the information to Excel so we could create somewhat of a standard report.
    What I am asking is to have the program rewritten to Java or something like it so that it can be used in
    our network as before. 

    • Teaching Squeak Environment

    Contact: Bob Waters (watersr@cc.gatech.edu)

    The current version of Squeak allows only certain fonts to be enlarged. When teaching, many of the items in squeak are too small for students to read when projected.  This project would involve modifying squeak behavior so all text is printed in larger fonts for display on the overhead projection system.

    • Software Architecture Visualization

    Contact: Bob Waters (watersr@cc.gatech.edu)

    Eclipse is a general Java framework for applications.  It can be extended via plug-ins.  This project is to develop a plug-in using Eclipse and GEF (Graph Editing Framework) to input description files in  xADL and display them in eclipse.

    WARNING:  The team that tried this project last semester could not get past learning curve on Eclipse programming.  Take this only if you enjoy a challenge or already know how to program plug-ins in Eclipse.

    • Wireless Restaurant Solution System (TAKEN)

    Contact: Shawkat Kabbara (shawkat@kabbara.com)

    Build a prototype for a wireless restaurant solution system.  Devices used include: PDA's. Cell Phones, GPS Systems

    The UI should allow users to view restaurants in different cities.  Users should be able to purchase gift certificates from their favorite restaraunt and pay via credit card.  You should be able to view restaurant information and menus.  You should be able to place an order and pay on-line, for pickup, delivery or eat-in.  If users want to eat in, they should be able to place reservations. 

    • Large DataSet Handling

    Contact: Bob Simpson (robert.simpson@gtri.gatech.edu) or Betty Whittaker (elizabeth.whittaker@gtri.gatech.edu)

    Work with GTRI and U.S. Government customer to analyze large quantities of click stream data.

    • Plexicon

    Contact: Spencer Rugaber (spencer@cc.gatech.edu)

    Plexicon is an on-line dictionary of programming concepts and that I had a team two terms
    ago.  The software is in pretty good shape, but the dictionary needs to
    be populated.  Even though little if any software needs to be developed,
    this is still a design project.  Deciding exactly how to organize concepts
    is the essense of knowledge engineering.

    • Ectropic

    Contact: Spencer Rugaber (spencer@cc.gatech.edu)

    This is a design tool in use in CS2340.  The team would make major enhancements to the existing version of Ectropic to include UML modeling support.  This requires programming skills in Squeak/Smalltalk.

    • WREK Remote Broadcast System (TAKEN)

    Contact: Thomas Hildebrant (thomash@cc)

    WREK, Georgia Tech's student radio station, would like to have a network
    audio tool developed for remote broadcasting.  The requirements for live
    broadcasting are significantly different from other network audio
    applications.  TCP-based solutions are not feasible due to the delay
    involved; for example, sports fans listen to our play-by-play broadcasts
    at the venue and will not tolerate hearing the game called 15 seconds
    late.  Existing UDP applications are geared towards Internet telephony and
    do not provide high-quality audio at low bitrates.

    The tool we are looking for would encode audio by MP3 and send it to a
    receiving computer over RTP, an unreliable, UDP-based protocol.  There are
    a few things we can experiment with to allow for packet-loss recovery,
    like redundant audio streams.  We will need a UI incorporating VU and peak
    program meters and a gain control.

    Potential developers should be familiar with digital audio fundamentals,
    and networking experience is preferred.

    • Data Access System (TAKEN)

    Contact: Rich Fleming (rich@analog.org)

    Tech has access to a very large and very expensive database with no easy
    way to access the data.  We want a group to design a front-end to
    interface with this database of 3D body scans.  The front-end will sit
    on top of an already written 3D visualization program and make calls to
    a remote database.  This program will probably be shipped to many
    companies in industry (Gap, Levi, Boeing, and Leer, among others) so a
    premium will be put on reliability and usability.  Simply, the design
    goals are as follows:
         Design an easy to use and easy to understand user interface
         Write the database calls that will be used to extract the pertinent
    data from the database
         Based on the information retrieved, interface with a 3D
    visualization program to put the data into a relevant form

     

     



    Georgia Tech Disclaimer
    This page is maintained by: watersr@cc.gatech.edu
    Last Modified on Wednesday, May 13, 2003 .