Course InformationTimetableGradingProposal GuidelinesHome

CSC 498: Senior Project, Spring 2008

Project Summaries

Chad Byers, "PIPES: Peer-centric Interactive Programming Enhanced by Seeing"

The aim of this project is to develop a visual programming language (PIPES) and supporting development environment to enhance student understanding of the fundamental concepts and processes involved in programming languages. PIPES (Peer-centric Interactive Programming Enhanced by Seeing) is designed to model program "flow" through visual abstraction where elements of the language are represented graphically by a network of pipes and regulating mechanisms similar to those controlling water flow. Due to the diversity in programming languages, this visual programming language will focus on including a subset of the features inherent in languages such as Java and C++, languages which are standard in introductory computer science curriculum. Features of these languages that will be supported include primitive data types, operators, iterative processes, control structures, and functions/procedures.

A student using this visual language will be able to define his/her own programs by connecting the predefined programming structures and “filling in” missing information such as parameters, conditions, assignment values, and other necessary information and once he/she is finished the program will run line-by-line through the program for students to understand the changing state and flow of the program. A capability will also exist to translate the student’s PIPES program into a supporting language such as Java or C++.

Adam Davis, "SHARP: Scheduling Helper And Relevant Peripherals"

SHARP is a calendar and checklist program with a detailed 3-D user interface. The calendar will contain a daily scheduler, in which users can designate different tasks for each day. These tasks can be of different types, such as homework, classes, meetings, etc., and these types of tasks can be created by the user. Each day will also contain a level of fullness, which will be represented by a color scale with different color values for an empty day through a completely full day. SHARP will also have a checklist function, where the user can create multiple to-do lists, and add as many items as they want to each list. The heart of this project will be the user interface, available in 3-D and 2-D alternatives. In the 3-D view, each of the navigations between dates and checklists will be accompanied with animation and movement.

Ben Froemling, "User Assisted Graphical Analysis"

The purpose of this project is to allow a user to define graphs and then perform functions upon those graphs. The defining of a graph is done through a graphical user interface which allows the user to visually construct the graph using nodes and edges. Some of the functions supported will be the ability to construct minimum spanning trees from any given node, group color the graph, and also test for Eulerean properties within the graph. The culmination of the project will be to implement some of the tests for properties known to exist within Hamiltonian graphs.

Christine Lewellen, "Complex Parsing"

For my senior project, I will be developing a parser that uses a simplified English grammar to drive a text-based game. Typically, a user controls a text-based game by inputting text commands in order to traverse a game board and solve numerous word or logic puzzles. Since the manipulation of the program is no longer within the spatial realm of "point and click," the complexity of the puzzles is dependent on the complexity of the controls. That is to say, the more sentences that the program can understand, the more interesting the game will be. To accomplish the appearance of language comprehension, the system will require a parser that uses a sophisticated grammar. Although I will not attempt to implement natural language processing, I will use a context free grammar that can accept command sentences up to eight words in length. These may consist of verbs, direct objects, prepositions, conjunctions, adjectives or indirect objects.

Emily Lyons, "PHASE OUT: A User vs. Computer Rummy-based Card Game"

My idea is to create a card game, which is similar to a game called Phase 10. Phase 10 involves collecting sets and runs in a 108-card deck (composed of numbered cards from 1-12 and special Wild and Skip cards) to complete 10 phases. My version of the game, called Phase Out, can be played by only two players (the computer and the user) and will eliminate the use of Skip cards. The primary goal for my project is to design a computer player with the ability to not only play the game by the rules, but also strategize by observing the actions of the user player. By knowing this, the computer can then base its own actions on their ability to help or hinder the user player’s current strategy.

Corinne McWilliams, "Japanese Character Learning Program"

For my project I would like to write an educational program that recognizes Japanese characters. It will allow users to improve their skills in drawing the first 10 numeric Kanji and the 46 characters of the Hiragana writing system. The program will prompt the user to draw one of these characters. It will then compare the user’s input to a sample image of that character and either acknowledge it as correct handwriting or give the user suggestions for improvement such as "your cross-stroke should be straighter" or "you should make the curve more rounded".

Kellie Packwood, "CRATE TRAINING: A Game for Learning Chinese Radicals"

My project will be a graphical game to introduce around fifteen Chinese character radicals. Radicals are used in Chinese and Japanese Kanji writing systems. They are smaller versions of commonly used characters that when combined with other characters form new words. Thus, recognizing key radicals is crucial to basic literacy.

The premise of Crate Training is you are a cat stuck in a shipping crate bound for China. The radicals will be presented in a list, with the Pinyin, or Latin transliteration, also supplied. While in the shipping crate, you will encounter ten scenarios that represent a radical each. Five radicals will be linked to bonuses or items to make a level easier but will not be required to complete a level. For example, the water radical will be used in the Thirsty scenario where the cat is running out of water and must find the water bottle crate before the time is up. Each level’s difficulty will be determined by the amount of time (in seconds), with the lower level scenarios allowing for more time in selection. If a player fails to select the right box, it is considered a failed attempt and the level scenario will repeat again. Each failed attempt will cost the cat three lives, and when nine lives are spent, the game is over.

Kelsey Warsinske, "Interactive Statistics Learning Tool"

For my senior project I plan to build an interactive learning tool in Visual Basic that is comprised of tutorials on various aspects of Statistics. Furthermore I will also use a database to store much of the information required for the tutorials. The goal of this project is to teach Statistics to students with little or no knowledge of the subject. The target users will therefore be high school and college students with minimal to no statistics experience. The topics covered in the program will range from simpler concepts such as the difference between the mean, median, and mode to statistical sampling and computing z-scores and t-scores. Students will learn by clicking on various buttons within the user interface, which will allow them to navigate through the program by reading definitions, doing tutorials with sample data sets, learning about statistical sampling, and playing simple statistical games. To make this project as appealing to the target audience as possible, I will conduct a usability study with high school students in a statistics class to see what they would find most beneficial from a project of this type.

Course InformationTimetableGradingProposal GuidelinesHome

Valid HTML 4.01!Valid CSS!DePauw University, Computer Science Department, Spring 2008
Maintained by Brian Howard (bhoward@depauw.edu). Last updated