Projects – Fall 2001

Click on a project to read its description.

The D.H. Hill Library department of Special Collections has acquired the papers and library of Dr. Thomas Regan, Professor of Philosophy at NCSU and one of the most prominent American thinkers in the field of animal rights. On this collection we expect to build what we hope will become the most important research collection in the USA to document this significant cultural phenomenon. We seek assistance and collaboration in the development of a web site which will enable us to publicize our holdings in this field and which, through its links with other relevant sites, will assist researchers in the field wherever they might be working from. Additionally we would like the senior design students to explore the application to the site of programs which would continually trawl the web for relevant sites to be reviewed by library staff before they are added (or not) to our site. Additionally we would like some exploration of the possibility of programs which would periodically trawl the web to determine if sites already listed on our site are still functioning and, if not, whether they should be removed or placed in an "archive". This site will serve as a model for other collection-related sites we are contemplating. The project will entail collaboration with various library departments: Special Collections, Library Systems, and, perhaps, Library cataloging (for metadata-related issues) and the Digital Library Initiatives department. This will be a true collaboration-there will be plenty of room for creative engagement on the part of the student designers.

Fujitsu Transaction Solutions is one of the top three suppliers of retail systems and services worldwide. Its integration of Microsoft DNA� (Distributed InterNet Architecture) creates a high performance yet open platform that retailers as diverse as Best Buy and REI Sports are able to customize.

The team will develop a diagnostic application for the Fujitsu TeamPOS 2000, a leading edge point-of-sale (POS) register. The application will be built using the latest development technology, VB.Net. It will be used to help diagnose problems with either the control unit or attached peripherals. In addition, software hooks must be provided to enable diagnostic calls from within a POS application.

(VB.Net, Windows2000)

The goal of the NovaGov project is to design & build a prototype of a website generation system whereby website content useful to local governments may be created, maintained & hosted. The idea is to design into the system a range of functionality which a local government might want & use a configuration �Wizard� to set up actual sites. The system should provide an administrator function to define the target website by choosing from among the available options & configurations. Each participating local government (small city, town, county, etc.) should be able to specify values for a list of parameters that uniquely define the �look-&-feel� of a generated website and allow preselection of a subset of website functional units. Parameter values that define a website for a given local government should be stored in a database controlled by the administrator & be available to drive dynamic creation of website content for the given government unit. The system should comprise several different looks or "skins" for the website; a Wizard interface to allow the creation of websites (or, rather, to store the information defining each site into the database); a facility (to be called EZmod??) whereby the user of the sites (the customer) can designate portions of his site to be maintained (modified & updated) via browser & password (this would also imply a "site administrator" function for each customer, also browser accessible); a website generation engine & appropriate database design. The project is expected to produce a working test version of a site for at least one alpha customer (Henry County, Virginia). The student team is encouraged to use their creativity & artistic skills in the design of alternatives & to make suggestions for enhancements to the project. We expect all the various "skins" to be clean & efficient in design & function without seeming dowdy, & to be generated & served rapidly.

Features to be Included (not necessarily on priority order) are:
  • An administrative function (EZmod) whereby the designated site administrator can allocate permissions (passwords), etc.
  • A calendar function, reproducible so that more than one department can have a calendar. (EZmod capable, to have links to event or meeting, etc.)
  • A capability to "webcast" events, meetings, etc.
  • A very robust email capability
  • E commerce capability (accept payments, fines, etc.);
  • A personnel/department directory section with photos, email addresses, links, etc.
  • On-line access to records, minutes, maps, etc.
  • Robust security
  • An economic development section with appropriate links, data on the area, etc.
  • Sections on courts, schools, etc.

Java-based Interactive Voice Response (IVR) Framework

Develop an Application Framework for creating IVR applications in Java. An IVR is an application that accepts incoming phone calls and interacts with the user via voice prompts.

Currently these IVR's are created using Delphi and Visual Basic because of ease of integration with Microsoft�s COM Architecture. The telephony components or libraries are COM components and will be accessed using the Java Native Interface (JNI).

The Java IVR Framework will be made up of a series of thoroughly tested classes and routines to allow the creation of IVR's quickly and without error.

The Java IVR Framework will allow development of logic that can be shared between an IVR application and a web application.

TogetherSoft Control Center � will be used to model and the application with UML.

Dynamic Remote Data Entry for Event Tracking System

In order to provide the high level of quality to our customers, Deere & Company performs Field Reliability Tests on all of its equipment. Equipment is run through rigorous tests in many different environments. Data is gathered from these tests to help engineers design better equipment. Deere has developed an intranet based Field Test System (FTS) to track the information gathered from these tests. Unfortunately, many of the tests are performed in remote locations around the world. There is a need to develop a stand alone component of FTS to allow for the remote collection of field test data.

The project involves developing a Java application that allows for the remote entry of data against a machine being tested. The application should take a set of XML files as input. These XML files will contain the general information about the machine (i.e., it�s name, current hours, location) and a list of questions to be answered for that machine. Events can be thought of simply as answers to these questions. The remote entry application will take this base information and dynamically present the questions to the user in a form. User fills out the form and saves it locally to an XML document. The user needs the ability to review and edit the information that has been entered. When the user has reconnected to the Deere network, the XML files can be uploaded to the FTS system.

Workflow Application & Framework

Workflow is the flow of data through a process. For example, a document may request data relating to an order that must be filled. The ordering process goes through many steps during its cycle. A customer places an order. Then a warehouse fills the order. The shipping department ships the order. Finally the customer receives the order. At any given state, certain activities may be performed, such as updating the document or notifying people involved. The document can either be forwarded to the next state, or rejected back to the previous state, until it reaches some terminal state (i.e., order completed).

Internet applications are being developed to make it easier to track a document through its many states. We get many requests to develop such systems. What we would like is a framework for workflow applications, a cookie-cutter per se, so we can easily fulfill these requests on a timely basis. We have two workflow applications you can choose from to develop as you build your framework: corrective action requests for a Quality Manual and an event tracking system for field issues.

This project involves writing a Java application for one of the workflow systems and designing a generic framework that can be used for most workflow applications. The document itself should be defined as data and will differ from application to application. Behavior, however, may be driven using the abstract state pattern, such that at any given state there are two possible actions: forward to next state and reject to previous state. This abstraction might be the basis for the framework.

Create a User-I/O module for Perl, based on the Direct Access File System (DAFS) API V0.6

The goal of this project is to make a DAFS User I/O API library, written in C, available to Perl scripts by writing a module that allows these functions to be called from Perl scripts. DAFS is a new protocol for �local file sharing� over advanced memory-to-memory networks such as the Virtual Interface (VI) Architecture and Infiniband. This version of the API specification contains a set of interfaces that capture basic file operations (open, close, read, write) in DAFS. It will grow over time to include the full richness of DAFS including locking, fencing, and chaining. The DAFS API provides a convenient programmatic interface that allows applications to securely access files over low-latency, high-throughput networks. The interface is simplified and file-oriented, hiding many of the details of the DAFS protocol. DAFS User I/O is an asynchronous I/O package implementing the latest version, 0.6 of the DAFS API specification. User I/O has the potential to significantly reduce the number of CPU cycles spent doing I/O because, once set up, all operations can be executed w/o kernel involvement on either the client or the server.

For more information on the DAFS API, see URL:

Nortel Networks currently leverages external vendors to deliver streaming/webcasts to customers and partners. As an alternative being considered, please plan the implementation of an external streaming/webcast solution, which should exclude web-based tools (registration, surveying, etc.), and focus on global distribution, infrastructure, hardware, and core streaming delivery tools using the RealNetworks format.

Points to consider:
This should take into account current reporting/metrics on webcast participation to determine global scalability/availability, it should also take into account any load balancing or caching/splitting required (and determine the most cost effective balance between serving/caching, centralization/decentralization of infrastructure).

This project involves the requirements analysis, prototyping, design, rollout planning, and delivery of an enhanced project management system to be used in geographically dispersed EMC Midrange engineering sites. The goal is to enhance a prototype RDBMS-based milestone tracking system. Specifically, we want an enhanced Web-based front end to the system, and we want the prototype to be expanded to include a design document review, approval, and archive system. We also would like the design to specify how to add a time reporting and status reporting interface at a later time. The activities to be performed by the students will include a requirements analysis, prototype evaluation, change recommendations, design, development, review, and roll out of the improved system.

The current project management process is manual and is based on years of experience developing a UNIX operating system. In the past year, we have shifted the work of the RTP lab and its affiliated sites in Columbia, SC, South Plainfield, NJ, and Colorado Springs, CO to focus on storage products, both SAN (Storage Area Network) and NAS (Network Attached Storage). Based on our analysis of our marketplace needs, we are implementing a new development process model that supports parallel development.

We have developed a prototype RDBMS to verify that the information to be collected and tracked is correct. However, the current prototype will not be robust enough to deploy in a 350+ person, multi-site development operation.

We believe the key deliverables are:

  • Web-based graphical front end that allows data entry, review, status monitoring, & comparisons for a design project. The data is entered and monitored by feature
  • Web-based document archive, review, & approval system tied to features
  • Recommendations for a Web based time & status reporting system tied to projects & features

CapTrust Financial Advisors is an independent investment consulting firm based in Raleigh. As a specialty financial services firm, CapTrust is dedicated to developing customized investment solutions for each client. As part of this commitment, CapTrust has developed a proprietary quarterly performance reporting system. This performance monitor consolidates a client�s multiple accounts into one overall portfolio value. As a result, a client is able to see the total dollar value of their investments and an overall percentage return.

Our goal is to automate this process. Currently we have to manually take information from a software package � Security APL � and enter this into an excel spreadsheet which calculates the combined portfolio values. We then have to present this information to the client via another more user-friendly Excel spreadsheet. The transition to a new system will take two steps:

  • Find a solution that will pull the data from the APL software and calculate the portfolio performance values. This step should also have the flexibility to manually enter data from other outside accounts into the portfolio calculation.
  • Once the calculations have been made a report engine needs to be designed which will present the information to the client in an easy to read format.

CapTrust offers a unique professional working environment and is located on Six Forks Road. For further information on our company please check the website or contact John Appleby for further details regarding the project.

There are many highly functional web quizzing/polling tools/systems (e.g. WebAssign.) However, there are often problems in using them with hand held devices (PDAs) because of the small screens and the limited capabilities of the available browsers. Also the "reporting" is usually "gradebook oriented" which isn't suitable for in-class use. However hand helds (with wireless connectivity) are fast becoming the device of choice for in-class quizzing and interaction.

This requirement led to the development of a quizzing/polling system which is oriented to Hand helds and provides for immediate display of results to the class (on a projector screen) under control of the teacher. The existing system is implemented in HTML with Perl CGI scripts.

The implementation is "bare bones" and is being used as proof and testing of the concept. There is room for a lot of improvement and enhancement of functionality to meet the needs of the teachers.

We are interested in a senior design project that would:

  • Examine the existing prototype and understand its functionality
  • Interview several campus personnel to determine any additional core needed functionality (We'll provide a list)
  • Extract parts that overlap with existing technology and wrapper this around that technology instead (WebAssign, most likely)
  • Explore authentication possibilities with hand helds (There may be insurmountable issues with the hand held browser)
  • Build a more rigorous implementation of such a tool which uses existing technology to its greatest advantage, yet provides ease of use by the instructor and the students with hand helds

We believe that much testing can be done with browser based hand held emulators, but we can probably borrow a couple for limited testing at some point.

Modeling & Visualization of Sun Exposure Effects on the Human Anatomy

The goal of this project is to develop an Internet web site for dissemination of real-time surface solar radiation measurements. Real-time measurements from solar pyranometers that record minute-to-minute ambient flux in the ultraviolet part of the spectrum will be installed locally as part of this project. These measurements will be integrated into the material presented by the web site. This web site will employ computer graphics to simulate the illumination of the human form by the sun, producing easily recognizable 3D images that illustrate anatomically resolved exposure. The web site will display images of a simulated �sun-burned� baby. By interacting with this web site, a user could experiment with numerous what-if scenarios by varying geodesic, posture, and behavioral input parameters to discover the impact of sun behavior on exposure. Behavioral parameters include specification of skin type, use of sunscreens, selection of clothing, and other types of protective covering (sunglasses, hats, etc.). A session at the proposed web site will help a user (child or adult) plan appropriate attire and activity to minimize solar exposure risk. This information will be presented in an attractive, informative way and thus provide a powerful vehicle to create public awareness of these potential dangers.

Part Searching

It is estimated that, through the intelligent reuse of existing parts, the cost of complex manufactured equipment and machines can be reduced by as much as 20%. The ability to easily look for existing parts by their shape does not exist. Currently, one searches for parts by their name, their part number, where they are used within an assembly, and other similar ways. The value of intelligent searches for textual information is widely accepted. The goal of this project is to extend intelligent �Google� type searches for mechanical parts to include geometry as a search criterion.

This project will require an intelligent part search based on geometry and a user interface that is easy to use and easily fits into a web-based mechanical design process. Thus the project will hone:

  • Web development skills
  • Database (Oracle) skills
  • XML skills
  • C++, Java, SQL language skills
  • Sophisticated Algorithm Development

The ideal team will consist of a diverse group of individuals who want to research cutting-edge pattern recognition algorithms, incorporate them into an intuitive User Interface within a CAD system, and communicate over the web with an enterprise IT system supported by Oracle. In addition to it being a true test of your computer science education and teamwork abilities, it will be excellent preparation for your after graduation challenges.

The purpose of this project is to develop a software tool to automate the configuration of a complex, proprietary Manufacturing Execution System (MES) provided by Propack Data. This tool should display a series of questions that categorize high-level requirements of the MES. By answering these (possibly dynamically generated) questions, customers from the pharmaceutical industry map out business requirements for their particular application. The structure of the tool that is envisioned is that of a compiler. The tool should map these user-specified requirements (answers to the questions displayed by the above) into appropriate Propack MES parameter values and output as SQL statements or .INI files. These SQL statements (or .INI files) specify application specific configuration values for the MES.

The deliverables of the project are:

  • A white paper that explains the problem, solution and approach
  • A software tool with process data + design documentation

Continue development of the ePartners website. The purpose of this website is to facilitate interaction between industrial epartners of the Computer Science Department and students and alumni. The site maintains a resume bank, job postings, calendar of events, and other membership related components. Improvements to the site are expected through extensive usability studies and the development of additional functionality.

Investigate/evaluate wireless technology (802.11b and/or Bluetooth).

Define/build on interesting wireless applications (e.g., �Wisdomtooth� CSIDC entry, 802.11-Bluetooth Interference Study).