![]() |
![]() |
|
|
Department of Computer Science
The George Washington University 801 22nd Street NW, Suite 704 Washington DC 20052 Voice: (202) 994-7181 Fax: (202) 994-4875 E-mail: cs@gwu.edu Senior Design Projects - 2002This page contains the project synopsis of Senior Design Projects completed in 2002. NIS plug-in for MacOS X Directory Services - Daniel Browne This is a plug-in for MacOS X Directory Services to provide NIS client functionality. Following the protocols established by Sun Microsystems for the most recent version of NIS (v2.0), the plug-in will perform NIS map lookup operations and translate requested information into a form usable by Directory Services. All configuration and management of the NIS interface is handled by the plug in, without the need for user intervention at the system command line. Completing the plug-in software package is a GUI utility to facilitate NIS map queries. The implementation of the plug-in package follows the most recent paradigms specified by both the MacOS X developer documentation and the open-source NetInfo directory system component of MacOS X.
The Network Topology Monitor (NTM) is a software system that is installed on a single host computer on an IPv4, Class C network. The system, developed in Java, communicates with network nodes using the Simple Network Management Protocol (SNMP) to obtain information for each device. A listing of the discovered nodes and their respective information are displayed to the user. This information, in combination with a network topology map, aid in the management of the network.
Network Traffic Monitor - Caroline Jung The Network Traffic Monitor is an application that provides utilities and information to assist in the management and analysis of data in a local area network. It provides users with information about different devices on the network, packets captured on the wire and calculated statistics about network traffic. The application also provides a graphical ping, trace route and DNS lookup functions for added usability in network troubleshooting. The Network Traffic Monitor captures all visible packets on the network to decode and extract pertinent information for use by the application. It also sends messages to all the devices on the network to retrieve individual data about each host. Collected information is displayed in the form of graphs, tables and charts. Home HVAC Optimizing - Amit Kapoor This abstract is for a software product that provides homeowners a way to manage and conserve energy. The software works primarily with an optimization algorithm that takes into account different factors within a home and manages the power supply to save money for consumers. The software will take room sizes, energy bills, and other key factors into consideration in the optimization of the home heating, ventilation, and air conditioning (HVAC) system. The system is designed to work on a 400 MHz Pentium II personal computer with a serial bus connection. The hardware HVAC zone controller is developed by Residential Control Systems and communicates over a serial bus to the software. This is the final report for a physical therapy application to work in conjunction with motion capture trackers. The application will allow for a doctor to enter in a regimen for at-home physical therapy of patients. The patient will be able to follow the doctor's regimen and be alerted when errors in the exercise are performed. The Physical Therapy Application also allows for tracking of the patient's exercise through a log file so that the doctor can review the progress. A laptop computer will be distributed with the software pre-loaded. The application is designed to work on any Windows- based machine with the Java Runtime Environment. The system must also contain three Java packages: Java Comm, JavaMail, and Java 3D. The laptop or Windows machine must have a modem so that it can be connected to the Internet. There are five modules in this application: Communications, Patient User Interface, Doctor User Interface, Range of Motion Checking, Storing in the Log File. CriticalLoad - Sergei Mikhailov CriticalLoad is a program designed to perform load testing on a web application. The key features of the program include: automated agenda creation, easily extendable agenda XML, distributed load generators, extensive tabular and graphical test result representation. CriticalLoad comes as two separate executables, the Controller and the Load Engine. The Controller provides a GUI that allows the user to configure the test, create and modify the test agenda, monitor test progress, and view test results. The Controller should be installed on the computer from which the user wishes to administer the test. The Load Engine is a program that actually generates the load against a web server or an application server. Only one instance of the Load Engine should be installed on a given computer, but there can be any number of Load Engine hosts registered with the Controller. This allows for virtually unlimited load generations capability. While the test is performed, application performance results are collected. At the end of the test, the results are displayed in tabular and graphical form. There are four different tabular and graphical views. Big Brother Compiler - Qamrun Nahar This report is the final report of building a tool that detects cheating between any two Java programs. The inputs are two or more Java programs. The output is an overall percentage of similarity based on the two programs' similarities: lexically, structurally, and location. In addition, the user sets the similarity threshold. That is, if the overall similarity of the two programs is equal to the similarity threshold or higher, then the similarity file is generated for the two compared programs. The program is written in Java. There are four software modules. They are Lexical, Structure, Location, and User Interface. Two programs will be compared at a time. The Lexical module compares two programs lexically. The Structure module compares two programs structurally. The Location module compares two programs' location of objects. Using the User Interface module, the user enters two or more programs. The outputs of the two or more compared programs are given to the user by the User Interface module. The Network Analysis and Reporting Utility (NARU) - Matthew "Chuck" Norris The Network Analysis and Reporting Utility (NARU) is the corporate networking tool of the future. When connnected to an unknown network, it will find all of the nodes on the same network, find the path the data traverses from the local node to the remote node, the network services offered by the remote host, and the operating system being run by the remote host. The NARU will then display all of this information in the remarkably intuitive and user friendly NARG (Network Analysis and Reporting GUI).
Face Recognition Software System - Jeff Parke The system allows investigators to construct a database of known criminals with associated images. Later, when the investigators have a photo of a suspect that meets certain quality requirements, they can use the system to run a comparison of the suspect's face to the faces of the known criminals in the database. The face recognition system will return the top results to allow the user to determine which image is the best match. The textual information accompanying the image results will allow investigators to quickly learn the estimated accuracy of each result and of any known personal information associated with the criminal.
The remote PC is program that will enable the user to connect to another PC and once connected, the remote PC, or the computer that is being connected to, will send an image of its desktop to the user's computer, or local PC. The user will then be able to control the remote PC as if he was actually at that computer. The user will be able to use programs, manipulate files, as well as upload and download files to and from the remote PC. The program will use the TCP/IP protocol to send the information back and forth between the two computers and the Windows Sockets API (Winsock) to provide a socket interface. Windows device handling procedures will be used to access the mouse and keyboard and to acquire their current states (which keys are being pressed, the last coordinates of the mouse, etc.). Image capture will also be done with Windows image handling procedures. Finally, the program will provide security measures to prevent unauthorized accesses. BeatBox Audio System - Alex Rud The BeatBox Audio System was designed to be an audio management solution for a "wired house" where multiple electronic devices are connected to, and communicate via, a central control system. Because such technologies are not yet available (or are not commercially popular), BBAS can be used on one machine or a computer network. BBAS is comprised of two main components, the server, and the client. The server is responsible for managing music files, creating and maintaining Sound Events (which is audio sent to a user to alert him/her of an event in the house) and facilitating communication between clients. The client of the BBAS allows the user to playback audio, upload files to the server and control other clients that are registered with the server. The system is designed to be expandable in the future, this is why a client does not necessarily need to be an audio player. For a client to be compatible with the system it must only be able to communicate with the server and parse XML. This will allow devices like PDA's and Web Tablets to control other clients without actually having to playback audio. This project involves the enhancement of the SmartMail engine and an e-mail client that is extendable through the use of plug-ins. This newer engine will be backwards compatible with the current version, and will offer new features and increased customizability. This engine builds upon the existing modules of the SmartMail engine and adds some basic new features, such as HTML support and complex folder operations. Some architectural changes are made with the addition of an Extensible Markup Language (XML) parsing module. In addition, the e-mail client offers an extendable plug-in architecture so that it can be modified in the future by creating plug-ins to do specialized work. Two plug-ins are being created for this project. A filtering plug-in provides an end-user with the ability to specify conditions on which actions are taken on e-mail messages. A calendaring plug-in offers the ability to create notes of future dates and reminders, and store them within the internet mail account so that a user's calendar may be accessed from anywhere. The SmartMail 2.0 system offers these features using the regular e-mail protocol.
![]() ![]()
Voting System for Federal Elections - Howard Sherman The Voting System for Federal Elections is divided into three separate programs, a Server, several Site Servers, and several Voting Machines. The Server initializes the election, and gives statistics to election officials throughout the course of the election. Each Site Server initializes the voting machines at its site, ensures that each vote is accounted for, and sends the site's totals to the Server in a regular fashion. Each voting machine allows voters to edit their votes, and sends each vote to the site server for storage. Amino Pathfinder - Belden Schroeder This progress report of the software, Amino Pathfinder, will determine the most suitable (unique) amino acid sequence(s) of a protein for antibody production. The software is composed of eight modules that encompass the program's inserted-data handling, processing, and data display. The modules are Amino Acid Sequence Entry Characters, Hydrophilic/Hydrophobic Amino Acid Character Tags, Amino Acid Character User Entry Error Checking, Selected Protein Sequence Request, Compared Protein Sequence Request, Hydrophilic Selected Protein Segment Search, Hydrophilic/Hydrophobic Selected Protein Segment Search, and Exit/Restart Request. The software will be distributed on a CD-ROM capable of being run on a PC with a Windows Me operating system and 64 MB of RAM. GPS Tour Guide System - Raymond Tiong This system provides a Global Positioning System based tour guide package for a university allowing users to access pre-installed campus information. The system is location aware, allowing presorted instant access to topics relevant to the user's current location. The system will run on most standard PALM OS PDA systems with an attached standard GPS Receiver device. The system provides information through two standard interfaces. The first is the vector based map screen, which plots the user's current position within predefined campus locations. This map is interactive, allowing users to zoom, pan, and click on specific locations to access more in depth information available on a second interface. The second interface provides the user with easy access to all information related to the associated map object. The system software is optimized to provide the most information set possible given its operating environment. The map objects are represented in a vector fashion, allowing a much larger set of data otherwise allowable with standard bitmap representations. SRAS (Software Registration Anitpiracy System) - Swati Vakharia SRAS (Software Registration Anitpiracy System) is a software registration system that lets administrators install and monitor Internet software on web servers. There is a server and client for this product. The server-side handles the installation and monitoring of the software. It processes all information received from the software that is sent periodically. It also allows for the automatic installation of the software once a user has been verified by the system. Another key aspect of the product is the auto updating of the software. Users no longer have to ask for updates but instead have them sent automatically. This also allows the server to monitor who is using the software and where it is being run. On the client side, the user is able to receive auto updates as well as rollback to previous versions if they are not happy with their current one. They also have the option to upgrade to the newer versions located on their machine. Finally, the client periodically contacts the server and reports pertinet information regarding the location of the software being run, the administrator of the software, and variable information to prevent tampering of the license agreement. Additive Synthesizer - Philipp Wassibauer Additive synthesis is based on Fourier's theory that every periodic sound is composed out of many sine waves added together. The product is going to achieve this with 32 sine wave oscillators. The first oscillator is pitched to the base frequency; all the others have a multiple of the base frequency, eg. the second oscillator has twice the base frequency. Each oscillator's parameters (frequency, phase and volume) can be controlled by an envelope. Furthermore, there are envelopes that control groups of parameters for faster work. Special emphasis is going to be given to the user interface, which has to represent the data of the 32 oscillators. Most implementations of additive synthesizers were lacking a good user interface to make them easily controllable, and/or the necessary processing power that we now have. To extend the flexibility four effects (flanger, phaser, reverb and delay) will be added and can be applied to any group of oscillators. This will give the user a good control over every frequency of the sound.
Laban Notation Software - Jamie Wellington Laban Notation Software allows a choreographer to electronically produce notation of a dance piece and create an animation of that dance piece. LNS provides a graphical user interface in which the user drags labanotation symbols from a toolbar onto a notation "staff". Laban Notation Software has four separate modules: (1) the graphical user interface, (2) the input/output module, (3) the monitor module, and (4) the animation module. Inspection Assistant - Daniel Zalkind This project is designed to allow building contractors to conduct inspections of their properties using Personal Digital Assistants. Inspections can be grouped by areas and distributed to inspectors. Once the inspections are complete, reports and statistics can be collected and displayed.
|
|
||||||||||||||||
801 22nd Street NW, Washington DC 20052 :: T (202) 994-7181 :: F (202) 994-4875
contact us :: sitemap :: directions :: Email webmaster :: SEAS Homepage |
||||||||||||||||||