CSSE Senior Project Proposals for 2007-8

▼ In red = Selected by student teams

#

Organization

Contact

Proposal

1

Wolfram Research, Inc.

 

Joel Klein

 

Web Analytics --

 

Wolfram Research Inc., makers of the Mathematica integrated system for technical computing, proposes the development of a web analytics system that would be both used internally and made available to users of webMathematica.  The exact feature set is negotiable, but features will address the basic concerns of web site operators such as "how many visitors are we getting?", "where are they?", "how did people find us?" and "is our site usable?"  The features could thus include click path visualization; tracking referrals; support for RSS feeds; and geolocation data overlay on world maps.  This web analytics package would take advantage of Mathematica's ability to import data, crunch numbers and present compelling visualizations.  This project would be usable by anyone with a web site, not just a webMathematica site.  The analytics package would be usable both in the Mathematica desktop application or through a webMathematica server, analyzing traffic from a variety of servers including IIS, Apache, and Apache Tomcat.  The core data provision and analysis functionality should take the form of a reusable Mathematica package. This package would provide the basis for a plug-in to the webMathematica environment.

 

Hence there would be a useful interface both within Mathematica and through a web interface.

 

This project would be overseen in part by one of the people who analyze the approximately 15 million page requests a month to the sites hosted by Wolfram Research, including popular information sites such as MathWorld.com and integrals.com.  This project can have capabilities similar to existing programs such as StatCounter.com and Google Analytics, but we challenge students to find creative solutions to the needs of web analysts.  One possible unique twist is to use Mathematica's support for symbolic expressions in some way, e.g. to run what-if scenarios based on current data.  Copies of Mathematica, webMathematica and Wolfram Workbench will be provided along with complementary enrollment in the M220 course offered through the Wolfram Education Group (see wolfram.com/services/education for more information) and support for working with webMathematica. 

2

Wolfram Research, Inc.

 

Joel Klein

 

Portfolio Optimization

 

Wolfram Research Inc., makers of the Mathematica integrated system for technical computing, continues to see expanded demand for its gridMathematica product in the parallel/grid/supercomputing market.

 

While there are many gridMathematica users including Dow Chemical, NASA, and Los Alamos National Laboratory, Wolfram Research is always looking for significant and interesting demonstrations of gridMathematica to show potential customers at conferences and trade shows and through its corporate website.  This senior project would be to create a gridMathematica application in the area of financial analysis.  The application computes an optimal stock investment portfolio given an initial fixed investment amount and a risk preference. This multi-faceted project will require algorithm design to select stocks for the portfolio, visualization of the performance of the individual stocks and of the risk-reward tradeoff of the portfolio, and coordination of long-running computations across multiple computers. This challenging project will require ingenuity to discover the best of several competing solutions.  Since gridMathematica is suited to rapid application development, we expect that the productivity of the programming environment will allow more time to explore alternate ideas and variations than if the program were developed in more traditional parallel programming environments.

Copies of gridMathematica and the Wolfram Workebench integrated development environment will be provided along with complementary enrollment in M220 and M225 courses offered through the Wolfram Education Group (see wolfram.com/services/education for more information).

 

All the following will be true of this successfully completed project:

 

(1) The program will be responsible for determining the number and specific stocks that comprise the portfolio.

 

(2) Analysis of stocks should be based on historical information. The time window for historical data is to be determined by the program on a portfolio-by-portfolio basis.

 

(3) The program should show a visualization of the E-V Frontier for the portfolio and for portfolio variations with fewer stocks in the portfolio.

 

(4) The developers will be expected to demonstrate and explain improvement in the portfolio as more computational resources are added.

3

 

Currently acquiring a client.  See Chris Archard (achardct@rose-hulman.edu)

Cell Phones + Pictures + GPS = Social Network

 

There’s a new startup with a cool idea about how cell phones, GPS, pictures, and social networks should interact.  The project would involve a mobile device application, a database to store pictures and tags on a server, and a web front end to access it.  The team would also be able to see the startup grow, and possibly take something to market before the end of the year.

 

As a side note, mobile technology is becoming the new trend in Silicon Valley based startups, with millions of venture capital money going to new companies formed out there… it’s defiantly a great place to have experience right now!

4

 

Dru Devore

Social framework of an online world --

(This project is associated with a forming team.)

 

Massively Multiplayer Online Role-Playing Game (MMORPG) is a genre of online computer role-playing games (RPGs) in which a large number of players interact with one another in a virtual world.  MMORPGs are very popular throughout the world, with combined global memberships in subscription and non-subscription games exceeding 15 million as of 2006. Worldwide revenues for MMORPGs exceeded half a billion dollars in 2005,  and Western revenues exceeded one billion USD in 2006.[Wikipedia]

 

The project is to design build the social framework of an online world for use with the Torque Game Engine (www.garagegames.com).  This will include voice chat/voice broadcast server for use with an mmorpg as well as implementing social frameworks in which player characters will interact.  This will most likely include economics, politics, and more traditional group-base obstacles.  The project will utilize C++ and will develop both the game server and the client-side front end.

 

Additional comments (Zach Blankenbaker):

 

Our project can easily justify the work of four people.

    There is more than sufficient work for such.  Most of those involved will be working in a new environment (the Torque Engine), in a new language (C++/torquescript), with new development tools (the torque tools/IDE).

In addition to defining and implementing social, economical, and political structures, we will need to extend those structures into a graphical context.

    In keeping with the proposed roles (Project Lead, Lead Tester, and Requirements Analyst),  we are also going to need someone in change of content creation - primarily sound and graphics work - but also extending to story creation (to give context to the environment).

5 - 7

Vyant, Inc

 

Aaron Kopel

 

ChatterSpike is an online service which allows users to better understand the trend and sentiment of online information related to their company, products, and competitors.  It does so by aggregating online content from various sources (search engine indexes, blog posts, customer reviews, online magazines, news feeds, RSS, etc.), analyzing that content, and ultimately presenting the information to the user in the form of trend charts and other relevant information.  This information can be used as a trend monitoring and alert mechanism for marketing, competitive intelligence, public relations, product management, etc.

The projects below are related to ChatterSpike and can be treated as separate projects and unrelated projects: 

(5) Intelligent Phrase Extraction

Finds phrases related to a keyword, allowing for some fuzziness so that similar, though perhaps not identical, phrases can be detected and grouped.  This project would ideally be implemented in Java and take advantage of existing indexing technology such as Lucene. This may be implemented via a custom Lucene analyzer that produces documents indexed by phrase.  The final outcome should be a program that can identify and document phrases, specifically in regards to a certain keyword.

(6) Article Summarization

This can be similar to the phrase searcher, something similar to Microsoft word's summary tool. We need to be able to compress a document down to the essential and relevant sentences.  The article summarizer should be able boil down the selected article using a combination of frequency analysis, semantic analysis and general rules for article creation (e.g. in most articles the key subject is mentioned in the first sentence).

(7) Targeted Site Spider

Searches a specific site and spiders to a certain link depth, grabbing only articles for specific keyword sets rather than indexing the entire site.  This could be an extension to the popular open source solution, Nutch.  However, it is far more targeted. A number of hooks would need to be built into Nutch to allow the spidered content to be extracted from the crawl.

8

Pfizer, Inc., Terre Haute, IN

Brian Klimaszewski

Web-based personnel information tool

 

The Pfizer, Terre Haute manufacturing site currently utilizes more than 4 independent systems to track personnel information.  These systems include a stand-alone Siemens ID badge system, a web-based Pfizer global directory (using the PeopleSoft engine), an individual calendar system (using Microsoft Exchange), a local directory (write protected Excel spreadsheet with a shared html view), and various other department-specific systems for tracking schedules.

 

Most of the information in these systems is publicly available in some fashion for people with access to the site intranet.  This includes interfaces such as web pages for PeopleSoft and the local directory, Microsoft Outlook for calendars, files on shared network drives for tracking schedules, etc.  The site’s IT department would like to unify these systems into a single, web-based interface.  Most languages are acceptable, but should be maintainable by the Terre Haute IT group.  The personnel information system should do the following at a minimum.

  • Have an easy-to-use search tool that would be placed on the sites existing intra-net main web page.
  • Provide a public, user-friendly interface for displaying information.
  • Read from the Siemens ID badge system, the Pfizer global directory, and the calendar system.
  • Replace the existing local directory.  This would require not only a public viewing interface but also password protected interfaces for information editing using Windows network authentication.
  • Provide a portable search interface (for use on a PDA or similar device) for mail delivery employees to quickly access the local directory only.  This system should allow for local directory caching as the site’s wireless network does not cover all areas.  The interface should provide an easy method of updating the cache on a regular basis.
  • Reading from or replacing other existing systems is not a minimum requirement but would be beneficial for the site.  This would require additional input from the individual system owners.  The system should, however, be flexible and modular enough to add this functionality at a later time.

 

Unifying the personnel information systems would allow site personnel to access large amounts of public employee data more quickly and it would aid personnel in finding the information in the first place.  Since the site is growing quickly, it will also reduce some of the growing pains with respect to new colleagues.

9

Pfizer, Inc., Terre Haute, IN

Brian Klimaszewski

Web-based security access request

 

The Pfizer, Terre Haute manufacturing site has a large number of automated equipment systems; each of which has its own set of security rights and users.  Currently, equipment users are requested using a paper form and stored in hard-copy only.  The paper form is initiated and routed by an operators Team Leader for physical approval signatures from system owners and the Automation manager.  The Terre Haute Automation group then manually processes these forms and adds users to individual systems.  The Automation group also does periodic audits of the user lists on individual systems, which requires a significant amount of manual paper checking.

 

The site would like to automate the equipment user account request and approval process using a web-based system with a database back-end.  Most languages are acceptable, but should be maintainable by the Terre Haute Automation group.  The request system should do the following at a minimum.

  • All request system logins should utilize Windows network authentication.
  • The request system would require a Team Leader login to request equipment access for their operators.
  • The system would notify the approvers and require them to login to review and approve/deny the request.
  • The system would then notify appropriate Automation colleagues of the approved request to have them manually add the users.  The Automation colleagues would then login to indicate that the user was added.

 

Automating the request/approval system would eliminate the potential for lost forms and expedite the creation of approved user lists for equipment user audits.  The feature of automatically adding users to the specific equipment is not feasible in all cases, but would be a bonus for some equipment.

 

The system should be configurable so equipment, requestors, and approvers can be added and removed as required.  Some desired user requirements have been compiled but have not been nailed down into a final document yet.

10

Northrop Grumman

Collin Krepps

System Administration Console

 

The Biological Detection System (BDS) is a Northrop Grumman product built to detect anthrax for the US Postal Service.  The Field Monitoring Center (FMC) is the data repository that supports the maintenance and operation of deployed BDS units.  The FMC manages user access to web applications and data, tracks field issues from identification to resolution, manages inventory and logistics, and collects status and test result information automatically.  The FMC processes and stores approximately 150,000 status messages and 40,000 test results each week. 

 

We propose creating a management console to display current system status based on system log messages and database information.  The FMC suite of applications uses Log4J to write status and error messages, each application into its own log.  We want to investigate the use of the Apache Chainsaw tool (http://logging.apache.org/log4j/docs/chainsaw.html) for aggregating and prioritizing the data for easier system administration.  A successful project could include

  • Configuring Chainsaw to display logs from multiple files in multiple folders
  • Displaying multiple views of the same data, filtered in different ways
  • Filtering for specific log messages and graphically plotting status values in those messages
  • Exporting selected log messages to CSV, XML, or other useful format
  • Other features suggested by the project team

 

11

 

Cary Laxer (possible stand-in for others)

2D action shooter with RPG elements 

(This project is associated with a forming team. See arnoldcd@rose-hulman.edu.)

 

This game is top-down, 3rd person, and set in space.  The gameplay focuses on space combat between the player's ship and other ships either AI controlled (in single player mode) or other players (in multiplayer).  The game takes place in an expansive universe with multiple solar systems.  The player can fly to planets and buy new ships and ship upgrades, and each ship can be customized heavily by the player to adapt to his or her individual playing style.  Once done, the player can fly to warp gates in each system to warp to the next system to perform trade missions or combat missions.  Combat between ships focuses on keyboard-driven ship movement and independent mouse-driven weapon firing.

12

Damping Technologies, Inc.

Derek Luebke

 

Software locking method:

 

Damping Technologies, Inc. has several small software packages that we use in house. Several of these we have also sold licenses to a handful of clients to use. Because most if not all of the software is proprietary, we would like to ensure that it does not get re-distributed without our control. Currently software is licensed by locking the programs to only run for small set of Hard Drive numbers which are embedded into the code. Thus every time a new license is issued, the code must be edited with a new Hard Drive number and recompiled.

 

DTI would like to have a superior method of locking our software to prevent re-distribution. Also, we would like to be able to offer network licenses that allow multiple computers to run applications simultaneously up to a fixed amount of network ‘seats’ available. Any software developed must work with Microsoft Windows. Students may pick their own environment to develop in although we currently use Visual Studio 2005. Stand-alone modules can be written in any suitable language though there is a preference towards C# and the .Net platform.

13

Engenius Solutions

 

Chase Crafton (craftoj@rose-hulman.edu)

(This project is now associated with a forming team.)

 

Thingamalist is an emerging web service. This is your opportunity to contribute to the next big thing to hit the Internet. Thingamalist beta is a feature-rich social sharing site that allows users to create, share, send and receive shopping lists or to do lists. It has been in development since September 2006 and has just reached beta status and is used by Baesler’s Market. The Sr. Project team will be continuing work on the online application.

           

We are looking for students who are ready to work with AJAX, PHP, javascript, CSS and payment technologies. Thingamalist will provide you with the experience of working on a live site and the ability to develop interesting features and solutions to technical problems.  Furthermore, you will assist in the development of release steps and functionality to push new features into the market. 

14

Amadeus Consulting

Gwen Gelsinon

Recruiting Application:

As a rapidly growing company that is frequently screening employment candidates, we could benefit greatly from a recruitment tracking application.  Therefore the project we are proposing would be an application built for our in house use with potential re-sale value.  Also since the application will be for our own use a select few people in our organization would take on the roll of the customer, so that does allow us some flexibility in terms of scope , and could afford students a greater opportunity to be creative with their approach to building the solution.  We would be seeking to more efficiently track both the process and information gathered as candidates move through tests and interviews.  Possible features discussed include the ability to upload a resume, skills tests for candidates (possibly interactive), integration with Monster / Dice, reporting on recruiting practices (i.e. effectiveness of different recruitment tactics used), integrated scheduling / calendar capabilities.  We think it would be beneficial for students to have the opportunity to build this application not only from the standpoint of experience in the development process, but also to gain some insight into what goes into the recruitment process.

The range of effort involved would likely be approximately 1200-1600 hours. The proposed development platform consists of the following:

·        Visual Studio 2005 / C#

·        ASP.NET 2.0

·        SQL Server 2005

·        Sharepoint (for calendar integration)

15

Chicago Mercantile Exchange

Joel Tosi

Market Data Widgets:

 

CME is the largest futures exchange in the United States and also owns and operates the largest futures Clearing House in the world. CME products fall into five major areas: interest rates, equities, foreign exchange, agricultural commodities and alternative investments.  Cme.com is the primary means of communicating to the global user base.  The website is currently being redesigned with a more data centric vision.  This effort will start becoming visible in 2008. 

 

One project that we are interested in investigating and having prototypes created for (with the idea of launching) is utilizing the concept of widgets with live 'delayed' market data.  Similar to yahoo widgets - http://widgets.yahoo.com/ - but with the added functionality of being able to embed the widget in html and then 'detach' the widget to a user's desktop.  This could require developing a custom engine for rendering or could leverage the yahoo or google widget engine.  A successful project would be one with a deliverable of at least one functioning widget that would allow some desktop interactivity by the user to retrieve data from cme.com.  Intended development language options would be Java and or Ruby, OS would be Linux. 

16

Southwest School Corporation (Sullivan Schools)

Jason Hunter

Teacher Aids Scheduler

At the Southwest School Corporation, we use a system of inclusion to create an environment of social awareness for special needs students.  With this environment, there arises a need for teacher aids to be present in the classroom to accommodate individual student needs.  With a large number of these students scattered throughout our corporation, the need for a multi-user scheduler arises.  With this system we hope to allow teachers and staff to work together to appropriately allocate the time of our special needs teachers aides.

For this project, the in-house tech staff will be your primary contact.  Other than for the initial meeting to attain a more detailed project definition, there shouldn’t be a need for much onsite work.  Here at SWSC we have an extensive network infrastructure with online management tools already hosted in-house, with this in mind the hardware and software requirements for full implementation of this project should already be in place.

17

- Open Source  Software -

Ted Gould

SVG Crush --

 

SVG is a XML vector graphics format standardized by the W3C for use in the Web.  It is currently supported by most major browsers and is increasingly being seen on websites.  As it continues to grow in popularity economic pressures will start to come into play.  Even though bandwidth has become cheaper, it is still not free.  This project is to create a utility to remove excess information in an SVG file to reduce its overall size.

 

Phase One -- Basic XML compression -- There are some basic things that can be done to an XML file to make it smaller.  Things like removing spaces and carriage returns.  Also renaming name spaces from things like "mathml" to "m".  The optimizations are simple but important.  At the end of this phase the file should be no different to an XML parser.

 

Phase Two -- SVG Compression -- SVG provides several  ways that file size can be reduced as part of the format.  These some of these include:

using a "pointer tag" to refer to objects that are identical; allowing style to inherit down the XML hierarchy; groups to take style for a set of objects; and many more.  These optimizations should be applied to the document in order to reduce the size of the file.  At the end of this phase the files should render no differently on an SVG renderer.

 

Phase Three -- Display specific compression -- As a vectored format SVG provides elements that can be rendered at any resolution, but rarely does a graphic on the web need to be zoomed in at 1600%.  This phase of the compression should focus on removing the precision of numbers and in some cases removing points that are unnecessary based on a target resolution provided by the user.  At the end of this phase the files should look no different to a human at the target resolution.

 

This project will be developed and published as an open source project.

It can be done in any language that has an XML library available for it.

18 - 19

RidgeSoft, LLC

Steve Grau

(One of these projects is possibly associated with a forming team.)

 

18: RoboJDE Product Enhancements

Participants in this project will engage in a classic software engineering effort, taking a software product, the RoboJDE Java-enabled robotics software development environment, from its current release through two future releases. The future releases will consist of a varied collection of small to medium sized features. Participants will work from a prioritized laundry list of feature requests. From this list, they will estimate the level of effort required for each feature and work out a project plan for two releases. The project plan will balance between priority and level of effort, and provide flexibility to respond to emerging and changing requirements over the life of the project.

 

Some potential features are:

1. Mac OS X, Linux and Windows Vista platform support

2. Additional foundation classes in the class library, for example, collection classes, string parsing

3. Eclipse IDE integration

4. Additional robotics technologies, for example, mapping, path planning

5. Support for additional sensors, for example, thermal, GPS. This includes addition of supporting classes in the class library plus example programs

6. Support for robot swarms communicating via Bluetooth or ZigBee

7. Improved integration and examples for Microsoft Robotics Studio and/or Pyro

 

19: Robot Simulator

Participants will develop a Java application which simulates the IntelliBrain-Bot educational robot. The simulator will be a pedagogic tool. It will provide graphic visualizations that facilitate comprehension of robotics and programming concepts. These visualizations will include: 1) a view of the robot in its world, 2) a view of the robot’s user interface (LCD screen, push buttons, thumbwheel, LEDs), 3) a view of real-time

state of the sensor, servo and motor ports, and 4) debug text output from the program. The simulator must execute the same programs that execute on the real robot without source code modification.

 

The simulator will include a number of models to: 1) model the physical world the robot operates in, 2) model the robot itself and 3) model sensors and motors. The physical world model must provide an easy way to define a physical world, save it and restore it. Similarly, the robot model must include a way to build a robot with the user s choice of sensors and effectors, save it and restore it. The base mechanics of the robot may be fixed, though it would be good to allow the basic dimensions, such as track width and wheel diameter to be varied. The models must be based on the fundamental physics of the modeled item. The simulator must be implemented in Java and use the Java Swing library for graphics.

 

RidgeSoft s Participation in the Projects

RidgeSoft s founder and primary software engineer, Steve Grau will work closely with the project team(s) through the entire project(s). Upon acceptance of a project, Steve will provide a detailed requirements document, which he will review via a conference call with the team. He will actively participate in guiding the project as the team proceeds through the software development process. The primary means of communication will be via email and a regularly scheduled conference call (est. 30 minutes/week). The team

will need access to a meeting place with a speaker phone.

 

Equipment

RidgeSoft will provide a small number of IntelliBrain-Bot educational robots and associated electronics to be used for the duration of the project. The students and Rose-Hulman Institute of Technology will provide computers and software applications necessary to complete the project.

 

Legal Issues

In return for contributing time and equipment to facilitate the participants education, RidgeSoft will own all rights to the software developed for the project and have exclusive, royalty free and unrestricted rights to use, license or sell it. In addition, participants in the project must be careful to not encumber RidgeSoft s products with software they have not developed themselves. No source code, libraries or executables obtained from outside sources are to be incorporated in the product without prior written (emailed) agreement from RidgeSoft.

 

20 -21

Cummins, Inc (Columbus, IN)

Chris York

General Background:
We make diesel engines. All of our engines are electronically controlled. We develop PC-based software to configure and test the engines. The PC software communicates to the engine using a vehicle network, usually SAE J1939, a CAN-based network. We use a Vehicle Communication Interface (VCI) to connect the PC to the vehicle network. The VCI may be 232, USB, or PCCard. There are many manufacturers of VCI hardware. To enable plug-and-play, they developed a standard API. (In fact there are at least four standard APIs, but that's another problem.) The standard API we are most concerned with is RP1210. In general RP1210 provide an interface as follows: open, close ,read, write, and filter.

20: API Project --
Develop an RP1210 API for 2-3 commercially available VCIs. These vendors do not support the RP1210 API today. This API would enable communication between our existing PC software and our electronic control modules. The advantage for us is a common interface for use with a variety of hardware platforms. Operating system support is a variable we could adjust to get the right scope. This could include: Windows XP, Windows CE, and Linux (in order of priority).

Success criteria:
1. RP1210 standard compliance
2. Performance (minimal performance hit compared to native interface)
3. Hardware abstraction layer designed to support additional VCIs

21: Compliance Test Suite --
Another thought that's related to this is an RP1210 Compliance Test Suite. This is something that could be provided to the standards organization and used by vendors to verify their implementation. I know the standards organization is interested in something like this. This may be too large, but it could easily be developed in multiple phases or partitioned for work by multiple teams. For example, the scope I propose is project A is limited to J1939, but RP1210 supports other vehicle networks including J1850, J1708, ISO9141, and ISO14229.

Also, this could be done as an open source project.

22

RHIT

Steven Letsinger

“Buddy,” the Interactive Display

Help Buddy!  Use your imaginations and your technical skills to invent a new and improved interactive display!  Buddy is the installation “event” we had in Olin lobby last year.  He waved to people when he saw or heard them, and paced around his little environment on multiple screens.  Buddy was a fun happening for Rose and for our department, an attraction for visitors and a cool part of the environment for students. 

Unfortunately, Buddy kept freezing up.  The original senior project team could not isolate the problem, so we eventually pulled him out of the lobby. 

Your team would be free to put totally new software on the hardware, with features of your choosing.  It may also be possible to have someone who’s an ECE major join you to make it work with all the fancy hardware features already present.  Feel free to go check out the Buddy hardware in the corner of F-225 lab.  And – I have a couple more cameras in my office.  I also have the code and documentation left by the original team.

Here are some details of the system as it now exists. The system has three displays, up to three webcams (with audio in), an attractive cabinet for the computer (built by Mike Wollowski), a mock-house, and (at present) a virtual world with an inhabitant.  The current features include a realtime 3D rendered figure which walks around the triangular one room "house" and waves in response to detected audio or motion in the video input.

There were a number of features the team considered, but did not have time to implement, and if you see the piece you probably have ideas about other features that would be interesting to add.  This project would be a very open-ended opportunity to be creative with a very technical medium. The extended feature specifications would be developed in collaboration with the project sponsors and the senior project faculty.  The results of the team would again be open for consideration by Rose for installation at a suitable location on campus.  (And for this reason especially, we have asked Steven Letsinger, our curator, to sign-on as one of the clients.)

For the students on the team, interest in and experience with 3D graphics and/or image processing would be helpful. If you wished to extend the current motif (which is an option), an incomplete list of features which could be considered includes: additional behaviors like lying down, watching TV, searching for lost objects, having guests over, etc., adding additional hardware sensors for temperature, doorbell, etc., using information from the internet feed to modify the environment based on weather or news, recognizing specific faces, gestures, or words, etc.  Other more administrative tasks would also be possibilities, such as implementing an easy way to upload new environments and behaviors, and working out a good backup and security plan.

23

Wlasuk, Delporte and Davis (Indianapolis)

Alan Wlasuk

Software Environment Difference Testing

 

We will be starting up a software testing arm of WDD and could use a focused set of technology-based people to help us.

 

The project I have in mind is half research and half development.

 

The research portion will include:

  • Understanding the differences between Microsoft upgrades (Windows XP to Vista) for example and determining the software application issues that will arise because of these upgrades.
  • Review of available tools that might allow us to pre-determine if any such issues might arise (target an application and run external tests).

 

The development portion:

  • What tools can be created for the monitoring of this testing? We are not looking for bug-tracking tools but rather tools that can look into an application’s environment to test for differences between that app running under different Window’s OS’s.

 

The number of MS upgrades is large (Vista, IE7, SQL, to name a few).

 

Note that this work has a potential of being heavily research oriented.

 

[More information available, further explaining the goals of this proposal.]

24

Fog Creek Software

Joel Spolsky

Automatic Backup Appliance

 

We propose to design and build a standalone, turnkey backup appliance built on industry-standard hardware and software (Intel-based computers with RAID arrays, Linux, Apache, Python, PostgreSQL, etc.) The appliance can be connected to a mixed network of Windows, Macintosh, and Linux computers. It will automatically discover computers on the network and devise a robust disk-to-disk backup schedule with very little configuration. Rather than requiring system administrators to carefully think about which files to back up, it will simply back up everything, taking advantage of the fact that most computers on the network will have a large percentage of identical files (for example, the Windows operating system) can be backed up only once. Rather than requiring sysadmins to devise full, incremental, and differential backup plans, it will continuously monitor all attached systems and execute an optimal backup strategy without any configuration. The appliance will be able to automatically create offsite backups over the Internet (for example, backing up encrypted data to Amazon's S3 storage service).

 

Fog Creek Software will provide funding for hardware and software, a detailed requirements/specification document which can be used as a starting point for development, and guidance from a dedicated Fog Creek employee. We would also plan to host a kick-off weekend in New York City at our expense.

 

The project will be developed on a work-for-hire basis with Fog Creek retaining ownership of the intellectual property, in hopes of turning it into a commercial product.

25

Rose-Hulman

Mike Wollowski – see Chris Leahy (leahycm@rose-hulman.edu)

Sodabot – A soda machine robot

(This project is associated with a forming team)

 

We propose to build a robot that will take sodas from the CS soda machine and deliver them to people in the offices and labs within the Computer Science department. The robot will use various sensors to navigate around the Computer Science department. The robot should be able to interface with the soda machine using a wireless connection. The soda machine web server should be modified so that if multiple people want to use the sodabot at once, it can either say that the sodabot is already in use or delay their delivery so until the previous sodas are delivered. The sodabot should also be able to sense and avoid obstacles in its way such as furniture or people. It should also be able to detect changes to its environment, such as someone picking it up and putting it down somewhere else.

26 – 28

ProTrans International (Indianapolis)

Jeff Orr

Three IT projects (company is in Transportation / Inventory business)

 

26: Customer Complaint System

27: Human Resources Tracking Application

28: Helpdesk Tracking Application

 

We currently have a Customer complaint process and we currently have a helpdesk application that was built in house.  We are looking to re-engineer both of them.  However, these three projects are similar in nature.

 

The similarities in these three projects are essentially, they are all asking for the following:

 

  • Allow the end user to enter, classify and describe a compliant, request or problem.
  • Track requests per end user and be able to report on them.  For example, Jane Doe from El Paso has entered 12 helpdesk requests this month regarding our transportation application.  Or, Jon Doe from corporate has entered 3 employee requisition requests in the last 30 days.
  • Allow internal users of the application to view incoming issues or requests
  • Allow internal users to track progress of each incoming issues or request
  • Allow internal users to “route” issues or requests to different individuals to resolve or fulfill those issues and requests
  • Allow for tracking of all personnel involved in each issue or request

 

It’s possible that any one of these projects could be addressed as an individual effort.  However, it’s also my belief that with the right design a single configurable suite of functionality could be built to handle all of them since they are all looking for basically the same functionality which is to log an issue, route that issue, track the resolution of that issue and report on the issues.

 

As well, we do have a project on the list for Document Management.  The general idea here is to have a repository for sharing, modifying and authorizing changes to documentation.  This pertains to all types of documents for many different business purposes…such as:

ISO Documentation

Work Instructions

Project Documentation

Etc…etc

 

Basically, based on permission, be able to create new documentation or modify existing documentation.  When necessary, route new documentation or modifications to a set of approvers to authorize the changes.  We are currently looking at share point to implement some of this.  But, it doesn’t necessarily support all the functionality we are looking for.

 

29

RHIT

Matt Boutell

Web-based SVN Interface

(Project description being developed)

30

RHIT

JP Mellor

Artificial Vision for the Real World

 

Type 1 – The great DARPA challenge…

The goal is to develop software that is capable of tracking objects using real-time data such as video feed from a webcam or other video input. This is a quite challenging task since computer vision or image recognition is still a fairly new field in computer science. This project will be a hybrid between senior thesis and senior project since there are many new elements that may require research (tracking algorithm, etc). There are many real life implications where this software can be used and or desired.

 

Some examples where the project can go to:

 

Type 1a - For security purposes

When the software monitors a room, it will be able to identify suspicious moving objects at night (such as a thief) and alerts the user about it. Or at the mall where it will be able to alert the operator about suspiciously fast moving people (a person running may be a thief).

 

Type 1b – For driving purposes

When installed at the dashboard facing the road, the software will be able to identify street signs and alerts the user about appropriate actions. Other features may include the ability to distinguish other cars and possibility of crash.

 

Type 1c – For entertainment purposes

Think AIBO, the software will be able to track its owner and follow it as it moves around its field of vision. Also, depending on the behavior of the user, it will be capable to react differently. For example, when the user sits down and starts thinking, it may make the software play classical music. Or when the user jumps up and down, it may make the software play dance music instead.

 

Type 1d – For identification purposes

The software will monitor objects in its field of view and identify what it thinks it sees. For

example, when installed at the outdoor, it may be able to distinguish bicycles, animals, Frisbees, trees, etc.

 

Type 2 – Folding@Home style…

Since processing is expensive computationally and takes a lot of time, a single computer may not be capable to run the algorithms in an accurate or timely manner needed to track objects in real-time. Thus it is possible to distribute the processing work to other computers. The idea here is to develop a distributed computing style system that allows more than once computer to process the real-time data. For example, a central server that distributes work to connected clients. Each connected client receives data from server and works on it, when it completes, it returns the result to central server and gets a new work unit. The server then compiles all the data it receives and produces the desired output in realtime.

 


chenoweth@rose-hulman.edu

Last updated: 05/15/2007 12:40:44