Sample CS Capstone Projects from 2005 - 2009 2005 Simulate a Radio Interface The team built a message simulator to test radio communications with munitions systems. The simulator used RS232 communications and ran on PCs. It included a user interface that allowed users to construct and send messages as well as log and display all message traffic. The system included support for error checking (ACK/NAK, CRC) of messages. The interface could be configured for baud rate, com port, parity, # of bits, # stop bits, etc. Election Results Visualization This team built a system for use on the website of a news/communication company. The system displays election results in a visual manner and supports selecting from multiple race results. Results for a county can be displayed on a precinct level map in a color coded manner. Color shading was used to indicate results (e.g. red to white to blue shading for a two party race, white to dark green for a yes/no referendum) and actual vote counts are also shown for each precinct as that precinct is scrolled over. Automated Test Suite for Denial of Service and Intrusion Attacks This team built an extensible framework for an automated suite of test cases that ran on a Linux platform and simulated Denial of Service and Intrusion attacks. The tool included a GUI interface to select and run tests. Around 50 different network attacks were included with the system. An audit log and error log are produced as the system runs. Automation Data Collection This team designed data collection code to gather information from equipment on a manufacturing floor. A baseline group of PLC code samples was produced for the collection of data. Code timing (infeed, cycle, outfeed, idle, etc.) and error routines was developed. Factory Floor User Interface This team designed and prototyped a user interface that presented live and historical information from the equipment on a manufacturing floor. The design was for a web based solution that used a SQL database that contained the data related to machine performance. Proposal and Job Setup System This team designed and developed a PC based sales proposal and job setup program for a heating company that allows the comfort consultant to efficiently and effectively produce a “job specific” price quote for the customer on the first appointment. The system included BTU calculations and furnace suggestions as well as pictorial tours showing what is involved in a furnace replacement. A job set-up document can also be produced immediately upon the closure of a sale. A database keeps track of all prices, eliminating confusion. The database also helps with sales management tracking. Test Prioritization This team developed processes, reporting and supporting utilities around code coverage and test prioritization tools (from an internal company research team) that provided the best test coverage for each software check-in. There was a base-line component that would run nightly and run each test, collect coverage data and save traces for each test. The developer’s side included a Windows application for automatically selecting the tests a developer should run. Ensuring Data Integrity This team developed a program that would run nightly to do integrity checks of critical manufacturing data. The Engineering (relational) and Manufacturing (Oracle) databases previously needed to be periodically manually verified to be in sync. Web-based Tutorial/Learning Tool This team developed an on-line tutorial and training tool for use in a university setting. The tutorial was based on policies and procedures for safe computing practices. A database of questions was also created with questions randomly selected for an on-line quiz. The results of the quiz could be emailed to the person who took the test and a teacher or supervisor. Identity Preservation in a Grain Mill This team developed a system to track the product (grain) throughout the growing portion of the process. The ability to add and update all aspects of field information (plant and field variables, chemicals applied, harvest information) can be managed on-line by direct farmer input or by a system administrator. Data can be exported to Excel spreadsheets and all updates and inserts into the database are tracked. A website was established and set up for use by the cooperative. Web-based Survey Software This team developed a web-based application that runs on top of a survey processing engine and allows users to create and maintain surveys for use on their web-sites. Multiple surveys and various kinds of questions can be created and edited (e.g. multiple choice, drop down choice, text choice, file choice). The survey processing engine was previously built by the sponsoring company. Code Generation Utility This team developed a utility that auto-generates C# code based on code that exists within a company proprietary prototype development environment today. The system reviews C# code and associated metadata then analyzes it to see what areas can be generated, rather than having to have developers create it. For example, it will generate the required business entities and database mappings. 2006 Web-based Survey Tool Web based survey tool to collect and manage SEI training evaluations for one company as well as to be used for vendor surveys for another company Intrusion Monitoring System Development of host based intrusion monitoring and prevention application software for IBM eServer iSeries Web-based File Viewer Develop a web based file viewer to be able to view data from old Cobol applications Marketing Study for New Product Offering Perform a marketing study on new product offerings to create a Managed Services offering that includes the areas of proactive network monitoring, data backup, security and trending. Sarbanes-Oxley Critical Function Auditing Tool Critical Function Auditing Tool - design database tables, develop an admin tool to maintain and create the data for the tables, define and transfer the security info for users from current system to Oracle, create a tool using VB.Net to administer this system Web-based Employee Directory Develop a web based employee directory that can find employees in a hierarchy list, view the list, add picture IDs, and update Active Directory from the source data Server Network Performance Monitoring Tool Develop a tool to monitor and report on the performance and efficiency of a number of remote servers. Legal Citation Data Mining Tool Create a Citation Mining Tool Interface to enable team members without SQL skills to run reports and perform analysis. Web-based Competitive Analysis Tool Develop a tool to automatically search competitors websites to determine what they are charging for products making sure to not be detected doing the search. 2007 Sports Score Database for Communications Company Create a web application that allows registered users to input sports scores (and related statistics) into a standardized database from which other media outlets (radio stations, TV, newspapers) can pull this stored information. In keeping with this, an administrator can alter posted scores, create sports schedules, manage sports, manage teams, and the like. Database Search and Update Utility Create a Web Application for searching and updating the Bermuda Information Database. The Bermuda Information Database contains information on how the Bermuda system is called and configured for various content types. The Web Application will have a password protected maintenance utility that will allow users to update the database. The database was built in standard Microsoft Access and XML, but will be migrated to Oracle during the development of the Web Application. Web-based product review recording system The scope of the project is to develop a web-based collection of work product reviews. This system will improve the customer’s world by setting a standard for product review procedures with a central storage place for viewing results later. Intrusion Monitoring System – phase 2 Development of host based intrusion monitoring and prevention application software for IBM eServer iSeries. Modify the system to be a server-side application, improve the performance and add several new features. Update a freeware database refactoring tool Develop additional functionalities for Database refactoring tool useful for developers working in agile methodology. The sponsoring company had already developed a refactoring tool with minimal functionalities using Java. Using Agile methodology this team had to add more functionality to the existing tool. Competitive Benchmarking Tool This project developed a process and web based system to consistently support competitive bench marking in all products groups and support teams. Products include snowmobiles, ATVs, motorcycles, etc. Web-based Trouble Logging System Develop a web interface to replace an existing paper based trouble log system. The web interface will allow the remote users to submit a trouble log directly into the system rather than having to mail it in. The system will also allow the company to monitor and track the progress of all of the trouble logs by going to one place. In addition, since the data is being stored in a database, the data can be accessed over many years to help track the usage of the trouble log system in general. Production Line Monitoring System Develop a web-based application for production line monitoring. This application displays status of batches and parts in the process of producing a final product. This application is intended to make it easier for observer or shift manager to keep track of work progress on the production floor. Embedded Computing Research Provide software development help with research in nanomaterials and nanotechnology. As a part of its Conformal Computing program, it is exploring how to leverage the power of multi-processor parallel architecture for large displays and eventually build a tera-scale experimental architecture. The vision therefore is to use such hardware architecture for simple to complex computer graphics applications. Simple computer graphics applications may comprise static graphics algorithms: flood fill, displaying circle, line etc. Complex computer graphics applications may comprise displaying 3D objects, texture mapping, volume rendering, animations and so on. 2008 OneNote 2007 and Team Foundation Server (TFS) Integration Provide an integrated solution where developers using OneNote 2007 during their Agile development Scrum meetings could make updates to TFS work items such as requirements, bugs and tests, directly in OneNote. Customer Request Repository Build a secure web-based tool that can access the company employee or customer requests for changes or additions to products. Allow the customer to easily collect, categorize and prioritize these requests as well as do searches and report generation. Test System for a Claims Processing Automation System Build a system to help automate the testing of an automated claims processing system. The system should allow for test data entry and modification, test process control and the comparison of original claims data and final claims data from the test. Cell Phone Application Development Using the Open Handset Alliance Android development environment, develop prototype cell phone applications. The team built applications for a Message Scheduler, sending Email from the phone, Gtalk Instant Messenger interface, Google Calendar interface, Access to Driving Directions and a Reverse Geo Coder to get the address of a phone. Open Interface to Company Applications Based Web Services Convert current applications interfaces from HTTP requests with XML responses to one based on Web Services. Build sample application interfaces and user access routines to demonstrate to developers and users how to take advantage to this kind of interface in the future. Role-based Training System Develop a system to manage training data such as courses and employee training records, required courses per role and grades. Allow users to see their own training history and what courses are available, supervisors to view their employee training records, and implement an administrator function to allow for adding/deleting courses, assigning courses to roles and roles to employees and keeping track of supervisor/employee relationships. Active Directory Automated Updating and SharePoint Learning Management System Build an Active Directory update utility that will take data from the Payroll database and run automated updates every week and create reports on the update. Also, create a SharePoint application to manage employee training data. ASCII Message Simulator to test Satellite Communications Develop a tool to generate ASCII text messages for network delivery as TCP/IP messages simulating satellite communications. This simulator supported logging, error injection, creation of test messages with predefined spacing and error rates, importing of TCP streams as new message profiles, stored data using XML and allowed using the tool in an automated fashion. Automated Unified Data Collection from a Virtual Automated Call Distributor (ACD) Develop a system to automate the real-time collection of unified date from various databases associated with a virtual ACD. The system needed to be extensible for adding more functionality and easy to build reports from. The reporting needed to be up to the minute and also required saving data for long-term information reporting to track trends. 2009 Windows Presentation Foundation (WPF) Skin Viewer Application Develop a Windows Presentation Foundation (WPF) application (Skin Viewer) that allows users to create sets of controls that can be used to build applications that have a common look and feel. For example, each division of a company could easily build websites that have a unique look and feel. Time Recording Utility Develop an application to track timesheet information incorporating approval workflow and integration with a commercial project management tool (Jira) as well as the billing system (Quickbooks). Data Reduction Tool Develop a tool that will convert binary log data into a human readable format. The tool has to be able to separate different message fields, unpack the data, apply scaling factors and graph selected field values against each other. An associated tool is also needed to easily define message formats and save the message format information in an XML structure. This XML structure will be used to define how to parse the binary log files. Evaluate the Usability of the IBM WebSphere sMash Toolset Create a set of sample web applications that address a specific business problem, select the most appropriate then develop a prototype of that application using sMash and report on the ease of use or and any problems encountered. Replace Specialized FTP Interfaces with Standard Web Services Calls Develop software to replace specialized FTP interfaces with standard Web Services calls. Integrate the associated changes on both the client and server sides. User Security Auditing Tool Develop a tool to populate a central database with application user security information (i.e. who has access to which applications) and a set of tools to report this information in various forms. Asset Management System Develop an asset management system that unifies data from several sources. A second phase automates the current lease exchange process. Digital Signature System Develop a digital signature system using DSA-digital signature algorithm signatures. The system includes adding CRCs and SHA-1 (Secure Hash Algorithm) when building the message. A second phase adds encryption of the final file. Mobile Phone “Planning Poker” Application Develop a “planning poker” application to run on mobile phones running the Android system. The application is multi-user using a peer to peer model and is integrated with Google Docs. XML Parsing Tool Develop a tool to parse SML files so that comparisons can be made between old and new versions of files. JMX Aggregator/Proxy Develop a tool that exposes custom attributes which are based off values of one or more backend JMX data source.