Team Project Assignments
Team Pages Members Project
1 Devin Erickson
Nathan Ochoa  
Sergiu Veazanchin  
Michael Weinberg  
Jon Hellmann  
Bryan Warren  
Virtual Pet
2 Andre Meireles
Alex Banke  
Christopher Margol  
Chris Lin  
Josh Thames  
Thaddeus Latsa  
Space Shooter Game
3 Daniel Haggerty 
Meng Chou  
Vipol Sophonwatthanawichit  
Rene Gajardo  
Juan Carlo Cervera  
Campus Map
4 Stephen Esposito 
Alan Wright  
Michael Andacht  
Brian Batten  
Christopher Krause  
John Singleton  
Deals aggregator/alert generator
5 Raiden Kaneda 
Eric Hoofnagle  
Scott Youker  
K. Andrew Williams  
Mike Castagna  
Ryan Pineres  
Augmented Reality Capture The Flag Game
6 Ally Dewji 
Kris Davis  
Aaron Smith  
Julio Arias  
William Baron  
Mario Felizola  
Multiplayer Trivia Game (Proposed own)
7 Kyle Hunter 
Aaron Ronzo 
Kawai Lau  
Thomas Ollweiler  
Munawar Bijani  
Joanna Bak  
Typing Tutorial Visualizer
8 Jordan Platts 
Nikesh Srivastava  
Chris Anderson  
Bruce Webb  
Jake Willey  
Numbers (Proposed own)
9 Bryan Salicco 
Lexi Duncan  
Jonathan Cools-Laitigue  
Ian Martin  
Andrew VanDemark  
Michael Murphy  
Fitness App (Proposed own)
10 Matt Hyman
Kyle Burnett  
Sara Belichki  
Jeff Loppert  
Jeff Devlin  
Grant Amos  
Facebook friend ranking system
11 Lauren Martinez 
Rodney Anderson  
Kevin Augustino  
Omar Alami  
Steven Orlicki  
Carlos Rodriguez  
Multiplayer Chess Game
12 Tony Aguilar
Jason Millhouse  
Zak Roessler  
Chris Gast  
Julian Quintana  
Kyle Claudy  
Augmented Reality Shooter Game
13 Skyler Goodell
Brandon Scott  
TJ Horwath  
Adam Heeren  
Nick Buelich  
Sean Schindzielorz  
Proposed own
14 Stephen Caskey 
Marlon Smith  
Jason Shih  
Kevin Kruetek  
Jason Shipman  
Anthony Delprete  
Virtual Teacher/Mentor
15 Matt Morton  
Brandon Harris  
Adam Tango  
Thomas Beaver  
Zack Skopec  
Dan Gau  
Proposed own

Project Templates

The project templates can be find here. Each project team is expected to follow the same template for their projects. The templates will be briefly discussed in the first week of recitations.

Possible Software Engineering Class Projects

Project 1: Campus Map (Android/iPhone)

A map that assists the user to get around campus, should have a detailed campus map, with buildings, and thus allow the user to type in a room number and the map shows which building and which floor. Would be even better if building maps could be implemented, once the user reaches the position of the building, since the smart phones can provide the user with altitude information, and thus the floor location, it is possible to implement a map that guides the user through the building.

Project 2: Augmented Reality Capture The Flag

A multiplayer game played with smartphones, where the teams separate into two groups, The GPS in the smart phones track each player, and their respective teams, red and blue. The flag is generated in some random location for each team, to capture the flag, run over the location (the GPS position of the phone is in some proximity to the flag), to steal a flag from another team member, run close to that member, the flag is passed to you when you are in proximity to the opposing member.

Project 3: Facebook friend ranking system

Facebook is a very popular outlet for social networking and people focus a tremendous amount of attention on their facebook profiles. Thanks to a flexible architecture, it is possible for developers to add third party applications to Facebook to make it more interesting. Your job is to use the Facebook API to develop an application that analyzes and ranks the friends of a person based on the userís requirements. Although Facebook provides ways to group friends of a user, it doesnít have an automatic way of ranking friends according to the userís own needs. The application will provide a list of options (number of wall posts, number of private messages, number of pokes, number of pictures together, number of mutual friends..) to the user. The user will rank these options according to their importance levels in friendship. Then, the application will rank the friends for a predetermined time (eg. a month) and cumulatively depending on this list of the user.

Project 4: Augmented Reality (Android/iPhone) Shooter

The modern smart phones have GPS and Cameras in them. Create a multiplayer game where those playing the game see another's GPS positions, and when their cameras are pointed parallel to the ground. They see in those positions a bullseye that they can shoot at by taping on it on their screen. This allows the players to shoot at each other using their phones. Each team should have their own respawn zone. When a player is killed, their avatar (bullseye) respawns in that location. The dead player should get to the respawned avatar, at which point that avatar attaches to the player, and again the player's avatar moves with the player's GPS position.

Project 5: Conference submission scheduler

Conferences are critical for researchers to publish their work and to share ideas with colleagues. Therefore itís very important to know the time, location and other details of the interested conferences. This program must create the best schedule for a researcher to participate in different conferences. Microsoft Academic Search ( provides ďCall for PaperĒ (CFP) calendar. This is a visualization tool, presenting the timeline and map views for conferences in more than 20 research domains. The scheduler program can use this information to plan the submission and travel times of a researcher so that he/she can attend the maximum possible number of conferences. The h-index value of the conferences (which is also provided in Microsoft Academic Search) can also be used to make decisions on which conference to attend.

Project 6: Space Shooter Game

A simple 2d space simulator with a pilotable/controllable ship. The environment should also have asteroids with gravitational pull, and other NPC ships. Your ship must be able to shoot at other ships. It should also be possible to upgrade the ship with new weapons, engines, hulls, and thrusters, which all should have their own distinct look.

Project 7: A Virtual Teacher/Mentor

A software that could, in a gaming format, teach the student words, arithmetic, and other things, scoring the answers of the student, keeping track of the person's progress, tell the student stories, entertain. Basically this virtual teacher should touch on all subjects, mathematics, language, logic, biology, evolution, etc.

Project 8: Typing Tutorial Visualizer

An electronic typing teacher, with a visualization of the typed words in some game format. Perhaps a turtle crawling over the characters as they are typed if typing is slow, or some other animal as speed increases. Or a race between two characters, where the speed of the player's character is dependent on the typing speed. A sprite could be used for the graphics.

Project 9: Multiplayer Chess Game

A chess game, with board and piece visualization, with the ability for the players to play against the computer, and each other over the internet. This should be not just a simple chess game, but visualization of the chess pieces fighting should also be implemented, one one chess piece takes another. It should be possible to switch this feature on and off.

Project 10: Forex Data Syphon and Algorithmic Trader

A program that can gather freely available financial data from a financial service provider, the system should be able to display this data to the user (should display the candlestick chart, and standard graph), and provide the user to plug a modular algorithmic trader. The system should come with at least 2 already present algorithmic trading bots, one based on standard statistics, and another based on a machine learning approach, either SVM or NNs.

Project 11: Online Tutoring Services

A website where two possible accounts are available, "Tutor" and "Student". The Tutors make accounts, list what subjects they can tutor, and the students make accounts and find tutors on the list of registered tutors. The website will need an implemented blackboard for the tutor to use and tutor the student over the net. The blackboard should allow a tutor to easily draw in real time for the student, and a voice/testing chatting system.

Project 12: Virtual Pet (Android/iPhone)

A virtual pet, which you have to feed and play with, implemented on iPhone or Android.

Project 13: Auction Website

A website where people can put up things for an auction, upload pictures, descriptions, use buy-now and timers. This should be an ebay clone, with some new an innovative features which ebay does not yet have.

Project 14: Adaptive Firewall (Intrusion countermeasure electronics)

Implement a simple firewall which uses Bayesian networks to adapt to new incoming threats. It should have graphical user interface.

Project 15: Stock information sharing website

Create a website that allows user to discuss their viewpoints on various stocks trading on stock exchanges. The users should be able to share their portfolio for others to view. The website should be able to track the portfolio performance of users and rank them.

Project 16: Shopping Planner

Develop a website where you can give a list of all the items that you intend to buy. It can suggest all nearest places where you can get the things on your list with the most affordable prices. Based on the pricing information, the system can provide an optimal route to cover the least distance while visiting all locations.

Project 17: Deals aggregator/alert generator

Develop a website that can give information for all the deals available for a particular item. If you specify the resources where you would like the search to be performed, it will pull information from those websites only. Otherwise, information from all available resources will be provided. It should also give the user the option of requesting an alert if an item matching his/her required specifications becomes available.

Project 18: Scrum Manager

This is a website for scrum approach to software development.