Project Proposals for SENG 310


Check frequently for updates as more students submit proposals. I haven't done
any editing/changes other than putting them on a list based on the order they were
received.
  1. Extended RSS Client:
    Advanced version of RSS client, download the articles, display what is new,
    multiple sources, but that is just base architecture, addon with preparsing of
    the messages without going to actual website to read the news. write your
    parsing rules to get text only. and read the news in the client without going
    to the website. with the automatic update would take care of the downloading
    delay.
  2. Buddy Information Syncronizer
    Various Interfaces web, PC, handheld, it is so tidious when someone changes
    their phone number or email, mailing address and you are trying to get a hold
    of them, instead have a centalized software that when they change their
    information it will ripple down to the address book of the client.
  3. Bookmarks Saviour
    Numberous times on looses their bookmarks because of system crash or something
    like that, or they come to other computer and they dont have their bookmarks
    they would like to have. therefore it would be nice to design a system that
    would report the bookmarks to the centralized server and one can reuse them on
    any system they go to using Firefox extention or ActiveX.
  4. YUM, APT, UP2DATE for WIN32.
    I have been lacking to get notified when a new stuff has been released and
    always forget to go and check if there is a new version of any particular
    application. therefore there would be nice to have a yum like application
    where one can get updates or notifications that new version of software they
    have installed on their computer has been released. also that would give one
    easy way to install something they have been searching for but have not
    stubled on while googling. basically yum port for windows.
  5. Groupware, ProjectWare
    There are few software/web application that are good to handle the project a
    group is working on. but there are really tidious to use. therefore I would
    suggest to have a project which would take care of such a instances. create a
    project, assign members, assign tasks, let your customer to see what have been
    done via web updates. also can be implemented as a frontend to cvs. basically
    good groupware.
  6. A historical time line UI
    A representation of time on a 3D scale. This time line can be zoomed in and
    out of such that less important dates are only present when zoomed in and vise
    versa. Moreover, certain dates may or may not be important to certain users
    due to cultural differences, thus information present must be catalogued via
    culture (hence the use of the third dimension). The main effort here is to
    represent time in a none linear form.
  7. File Transfer Software
    As far as I know, there's no default software for file transfering that is
    EASY TO USE for average (non-CSc) users. A project could be to design a
    piece of software to fix this problem. One that might come as default for say
    Windows. The interface should be easy to use for people who don't know
    anything about transfer protocols, or where/how they could otherwise download
    a program like this!
  8. What can I make for dinner with what I currently have.
  9. A program or web based application that has a database of recipes ranging from
    the simple to the complex. The user ticks boxes representing what they have
    on hand and what there preferences are (ie vegetarian, spicy, quick etc) The
    program/application then return a list of recipes that can be made with what
    is on hand (or with a simple substitution...butter for margarine as an
    example). Thriftyfoods.com has a program that allows you to view a recipe and
    check the ingrediants list to add to your grocery list, but nothing that works
    the other way, which is obviously not to their advantage.
  10. webreg
  11. When I register for classes I have a multiude of windows open. One to
    sign up for classes, one to see whats available, one to check class
    descriptions and one for my timetable. It's completely rediculous.
  12. PhotoAlbums
  13. My idea for the project is an application which uploads photo's and displays and
    organizes them into real life looking photo albums.
  14. Bus Schedule Alarming System
    As a lot of people hate to wait for bus everyday, why do not we build a bus
    schedule alarming system. This system can be run on the web brower and give an
    almost accurate arriving time. When the bus you take is coming to where you
    are, it can tell you how much time you still left to get to your closer bus
    stop. The system uses basic kinematic equation to calculate time. If the bus
    runs too fast or too slow, the system need to know how to fix the time so that
    it can tell users a good time estimation. Also, this system can be also used
    for bus drivers cos the buses are not on time every day!
  15. Picture anywhere
    In the near future, digital "pictureframes" are cheap enough that a full
    color 8x10" screen with wireless ethernet is affordable. It would be
    nice to be able to send photos to the pictureframe in your loved one's
    apartment, say for long-distance college romances or for grandparents
    back home. Design a system that would allow Grandma to get a photo or
    two from her digital camera and send them to her grandson at school's
    pictureframe. The software should allow the searching and locating of
    remote pictureframes (from a manufacturer's DNS similar to [
    http://www.viewnetcam.com/ ]), basic photo editing, display photos
    stored on the remote pictureframe, and allow timed slideshows.
  16. TagMinder and MusicPlot
    A program which allows you to efficiently repair the tags in your MP3 collection
  17. and a program which allows you to visually explore your music collection
  18. CourseCompare
  19. A tool which allows you to compare your class schedule with other people. Should
    allow you to easily plan group meetings, car pooling, and find shared classes.
    (Could use output from WebView as standard input.)
  20. Chat program
  21. to rival the msn / icq... maybe even support file transfer
  22. MP3 Player Interaction software for: Creative MuVoN200
  23. don't know about legality(permissions for writing it), or anything about
    communication protocols, but the included software is of a horrible design,
    and needs to be implanted better with HCI principles kept in mind.
    <>Calendar System
    The purpose of this system is to allow a user to record and track meetings, bappointments and important dates from systems not exclusive to hand-held devices or pcs. Adding or viewing an entry can be done from any system that has the capability of connecting to the internet by making use of device specific user interfaces. A user can enter such information using:
    - a pc by either making use of a stand alone program (which uploads the information to a server) or by making use of a web-based interface.
    - a mobile phone by sending a text message that conforms to the guidelines of the system (ie subject line contains day/date, body contains meeting particulars)
    - a hand held device (ie Blackberry) by sending an email that conforms to the guidelines of the system (as above)
  24. University course / lecture information system for UVic
  25. The purpose of this system is to keep track of course scheduling information and to disseminate information related to course time, temporary schedule changes or lecture cancellations to students via text or voice messages as soon as the information is available. With the majority of students having mobile devices capable of accepting incoming messages (be it voice or text), such system would be of great use as currently students don't know about classroom changes or course cancellations until after they have arrived for their scheduled class and either hear or read an announcement related to the cancellation. This system is to be designed so that students sign up for the service by opting to register their mobile device or to receive emails to their university accounts.
  26. Job-time tracker:
    -multiple users.
    -user logs in
    -user can create employers
    -user can create projects
    -user can view a report (by day or month)

    -user can start time on a job
    -user can stop time on any job that has been started
    -user can make notes on any employer/project/job

    The tracker would allow a user to keep track of how long he, or she, works on
    a job per day. The daily report would show how long you worked on each job on
    a given day. The monthly report would show how long you spend on each job in
    a given month (a summary of all the daily views for that month).

    Each user would have one or more employers. Each employer would have one or
    more projects.
  27. 3D Basic Desktop
       A Windows based program that allows the user to do basic things (browse the internet, chat with friends over IRC, MSN, ICQ, and listen to music) while in a 3D, fullscreen environment. Basically a cool way to interact with the most basic internet protocols; a way to make your desktop feel really futuristic while you're just messing around on the internet.
  28. Game database
  29. my idea involves video games, I play a lot of them, how about a database for all the people
    that play the same game so if  they get stucked, they can help each other.
  30. Emergency info
  31. a small program for a palm of any other digital gizmo 
    that can receive info, even your cellphone, if you are in an foreign country or a different
    city, that you would get the information of hospitals, police, hotels, the nearest embasy or consulate,
    in case you get lost, robbed, etc.
  32. Online Personal Reminder Diary
    This will be an online diary where one can input their daily tasks/reminders
    and the program will produce a reminder message on the specified date and
    time. In order to access your reminders anywhere, you need to login to your
    personal account.
  33. New scrolling bar
  34. a news scrolling bar which is always on top of all the other windows. you will always have
    the most recent news scrolling right infront of you. You could even make so by clicking
    on any news you could open up a page with more detail on that news
  35. Image management software
  36. (looking at the already submitted sample project ideas it looks like someone else was thinking of something similar) - I have a digital camera and tend to take *lots* of pictures
    and managing collections of these pictures is tedious at best.
    Furthermore, my camera is fairly high res (4 MP), so the amount of space
    taken up by pictures adds up very quickly.  It would be nice to be able
    to have a program that allows you to not only catalogue the images but
    allow you to put them onto removeable storage (such as CDR/RW, etc) and
    keep track of what picture is on what disk so that a user can quickly
    and easily retrieve the full version of a particular image.
  37. Fire fox extension
  38. Some sort of extension for the Firefox web browser - something to improve the UI of Firefox, perhaps adding things such as mouse gestures, the ability to save "sessions" (similar to the way Opera works), etc.  I find the Opera browser a bit more user-friendly than Firefox, and it would be interesting to both bring the best features of Opera to Firefox and to also expand upon them.
  39. CommandLine to GUI
  40. Take an open source command line program (probably from the *nix world) and create a more user-friendly interface to it. As an example, cdrecord is a commandline program for burning CD's under Linux, but many of the options are somewhat cryptical and intimidating to the new user. Perhaps one could create a GUI front-end to guide the user through the process of creating a CD, then actually use cdrecord behind the scenes to do the actual burning of the CD.
  41. A book collection database program
  42. I know a number of people (myself included) who have a large collection of books, and have difficulty keeping track of which books they do or do not have.  It would be nice to have software which keeps track of books in one's collection, but more importantly to be able to access the information in an easy and accessible manner.  Would I think would really be cool is to develop something like this that can work both on a typical PC as well as a palm like device (so one can take the information with them). However given that I do not possess a palm like device, developing this side of things would be a bit difficult.
  43. Easy Piano Tuner Design
  44. a user interface for a piano tuner. The interface is intended for anyone who does not know how to use a piano tuner. The program will record a piano note played then visually tell the user how to accurately tune that note.
  45. General Game Content Creation Tools
  46. Storyboarding - an application that allows for non-linear storyboards, with branching and merging plots. Can aid in the creation of stories for games with multiple paths. Supports static images for each scene, as well as the potential for branching dialogue within the scene.
    Scripting - A basic scripting IDE. Should be customizable to integrate easily with any project. Allow for keyword highlighting, object (items/NPC's) tracking, 'wizard' style object creation
    Animation - A simple (2-D sprite based) tool to combine already drawn image files into proper animation, then form these into files to be loaded by the game. Allow for previewing the animation in motion.
  47. Download Manager
  48. Most computer users download more "stuff" than they know what to do with. Instead of a classic "donwload manager" that deals with the downloading (continuing stopped files, restarting a dl later etc) this program would deal with the downloaded items. For example it would keep track of what was downloaded and when, organize (type, filesize, last time used, download data etc), make them searchable and have a simple interface for clearing items you don't want or backing up to a cd or dvd (with a useful naming system). A search for items could include what has been backed up and what has been removed so that you know "xprefix.exe" was backedup to dvd-stuff001 on jan 5th, or that "nethack" was downloaded Sept 22nd deleted Sept 23rd. For deleted file you change your mind (or backups you can't find) the software could try the source you originally downloaded it from automatically, or search online for the file for you.

  49. Streaming radio control
  50. Create a program to control the stream radio from htt://last.fm last.fm is a free personalized streaming radio that customizes the music for your based on your ratings of previous songs. You can "love" a song or "ban" a song. You can also skip the currently playing song. The music is played with itunes, winamp, or some similar program and currently the functions are done via their website, but they recently released an api allowing you to control the skip, love and ban functions and get the info on the currently playing song. So create a (multiplatform) program that displays the song info and gives access to the functions

  51. OnLineShopping
  52. In current life, most people like to shopping on-line, because it's fast and easy. Each use has a ID, and every item has a ID, people can visit the webpage to looking for the items they want.
  53. Bus mapper
  54. Trying to get from point A to point B may be easy with a car and a map, but by bus, it is much harder if not impossible. Sometimes it may take multiple buses to get to the desired location. My project idea is to create a web application, that given a source and destination, determines what series of buses (if any) can make it closest to the destination.
  55. Website Management Interface
  56. Design the administration interface for an online retail company whose website you manage.  It would cover two major things: 1) Change content on the website - upload text and images. The idea being, you want to them to be able to do as much as possible so that you don't have to.
    2) Manage orders: Send orders to salespeople out in the community - cell phone pda and laptop. Track inventory between wharehouses, or to salesperson from a wharehouse.
  57. Reading a text file in a book-like environment
  58. There are so many text editors to read text files, but I'd like to have a program as if I feel I'm reading a book. Assume you have a novel in a .txt format, and read it from a normal text editor. Your eyes would feel tired soon because you have to find the next line, and your hand would also get tired because of scrolling down all the way to the end. I'd like to have book-shaped program which will automatically divide the file into left pages and right pages and flip the pages if I press a key from keyboard (maybe space key). Additionaly, I want to have functions that can change the background, font color, and font size easily.
  59. Personal Financial System
  60. Manage person's or family's income and outcome. We also can add some extra functions such as calendar, phonebook and outcome. We can also add some extra functions such as calendar, phonebook, and alarm to make this system perfect for household.
  61. On-line calendar system
  62. it can memorize the important events that the user enters and remind the user when the time is near.
    People log in with their UVic Netlink ID.

  63. UVic Messenger
  64. Asides from a Messenger program, it uses the students registration information to display their classes for the next day and display if the user
    has any new UVic Webmail. With the Messenger portion of the program their will be a few different buddy lists to choose from. Their will be a general one where people can add friends, and using the students registration information it will list a buddy list for each class the student is taking. The buddy list for each class will show when anyone else from that class is online (students must choose an option for them to appear online for a class buddy list) and will also show when the Professor is online to answer any questions. The Messenger portion of the program their will be a few different buddy lists to choose from. Their will be a general one where people can add friends, and using the students registration information it will list a buddy list for each class the student is taking. With the Messenger portion of the program their will be a few different buddy lists to choose from. Their will be a general one where people can add friends, and using the students registration information it will list a buddy list for each class the student is taking. The buddy list for each class will show when anyone else from that class is online (students must choose an option for them to appear online for a class buddy list) and will also show when the Professor is online to answer any questions.

    Their will be two types of users (maybe more) a Studennt and a Professor. A Professor can log-in this way, and answer questions in real-time (i.e the professor is logged in during office hours...) and maybe have an option to store questions that were asked online, that other students can view. Another feature could be that the Professor could post due dates to the program for Assignments, and then the program would display when the next Assignment was due for a student. Since all Professors may not want a class buddy list they would have to opt-in to it at the start of the semester (sort of like the UVic Webboards)

  65. MP3 Shopper
  66. Pick out some songs and send your software agent out into the web to find them, negotiate prices and bring them home. Program in minimum and maximum prices, what quality you expect from the recordings, etc and save yourself the hassle of searching for the song yourself.

  67. Screen Magnification and Speech Output Software.
  68. Allows a person with a visual impairment to interact with their computer. Should be able to interpret all files types and magnify the output and also present the output as speech. Should allow the user to manage and edit the speech dictionary, including changing pronunciation of words.
  69. Library Database Interaction Software for a Handheld
  70. Allows your handheld device to wirelessly communicate with a libraries database. You can search for books, articles, etc. anywhere in the library without using one of their terminals. Could possibly give you directions to the item your searching for.
  71. Critical Software tool
  72. A simple software (tool) installed on the computer. It will detect all the critical software a person has on his/her computer and it will inform them whenever a new update has been made for the individual software. Then it will prompt the user and it is up to the user to accept and install the latest updates available.
  73. A Flat-Namespace File Manager
  74. Instead of being hierachically organized into folders and subfolders, files are tagged with multiple labels. A file can then be found by accessing a label that is related to that file. Gmal http://gmail.com uses a similar system for emails, Flickr http://flickr.com for photos, and del.icio.us http://del.icio.us for bookmarks. It would be interesting to see how this would work with a file manager. It could be implemented almost in any language, with fairly trivial code. The challenge would be designing an interface that would allow files to be accessed and organized quickly. After all, we are all very used to folders.
  75. Meal Planner
  76. The application is to create daily meals for the people who have to pay much more attention to what they eat. Given some information on personal condition (on diet or diabetes), it arranges meals that meet those people's needs.
  77. Word Processor for advance users
  78. Assigning short-cut keys to every function of a word processor can speed up one's word processing time by reducing mouse usage. all short cut keys are labelled on function buttons (GUI) so that one doesn't have to remember all the keys
  79. Auto Shutdown soft
  80. User can set a specific time to turn off, reboot, log off a computer. Except these basic functions, we can add more useful functions onto it. For example user can close/open a software or disable the internet acess. Also, we can add TODO list reminder, Calendar, Alarm those small but convenient functions. The GUI is very important for this little software, it should be reasonable condensing and well-knit so that people do not get frustrated by it.
  81. A better MS Bob
  82. The goal of this project is to create a MS Bob like application. This will involve investigation in where and why MS Bob failed and how to make it better.
  83. File Explorer
  84. The GUI for directory and file browsing is good because you don't have to memmorize commands but it can be limited. For example it is hard to get something like dir *.exe, or del *,bak or dir *whatIwantToFind*.*. Also there aren't any programable quick keys for common tasks. So my idea is to design and implement an improve version of the file explorer.
  85. Computer Helpdesk
  86. I propose the design of a new web interface for the computer helpdesk. The staff there told me that they would like to add new features but are currently unable to, so I know the end result would be useful.

  87. Automobile Maintenance Reminder
  88. This is a system that records certain information of a vehicle such as the battery, lubrication, engine oil, belt, tire pressure, etc. Its build-in calendar can be used to remind the car owner when to perform certain maintenance tasks. It has the following functions: 1) Support multiple user and vehicle 2) Maintenance tasks reminder 3) Calculate and record gasoline usage 4) Calculate and record monthly (daily, yearly) cost for gas, maintenance, parking and insurance. 5) Generate statistical reports periodically.
  89. Simple SMTP Client
  90. Create a simple client which supports SMTP and allows users to send messages with attachments. The program could support some of the various MIME types and automatically construct headers for messages.
  91. 21st century gyming running machine
  92. Health become the first priority in people's life. People go to gym to do exciese a lot. to decide a better human interaction gyming running machine. my idea is to design a running machine can give the runner a practicing plan base on the runner's weight and height and healthy status. when the runner step on the running machine, the machine will display all information the runner need. later on the machine will give the runner a best practicing plan.
  93. Virus Detector
  94. User can use the software to search the virus in the computer system. And the software is able to detect what sort of virus are found. The advanced virus detection software can clean the virus from the computer system so that it can protect the system.
  95. Ebook Maker
  96. An ebook maker that converts all sorts of readable file including txt, doc, html etc to pdf or directly to an exe electronic book for direct viewing. Rather than sequencial conversion, it allows the user to build a book with free formats. For example, users can browse to different website and drag whatever pages like to tree-build that Ebook Maker provides. The visual tree-build functionality will offer users to build chapters as they wish.