Software Engineering Projects Fall 2009

A major component of the course is the development of a group software project. This semester I will serve as the principal client although the undergraduate research database will likely have another faculty contact and a separate committee to guide its development. There are three projects:

Undergraduate Research Database

The Undergraduate Research Project Management System was developed by the Office of Undergraduate Research and Scholarship in conjunction with the Task Force on Undergraduate Research and Scholarship. The system is a public, online database of faculty research projects that involve undergraduates as part of the research team. It is intended both to inform students, colleagues, and the community about UAA's undergraduate research projects, and to build support for more initiatives in this area.

The current website was mostly written by a previous student as a CS A470 project, with some hacks by your instructor to get it running. While functional, this doesn't mean it is usable! A few features that are desired:

Other features/improvements will be made by a subcommittee of the Undergraduate Research Task Force. A representative from the task force will serve as the primary customer contact. The most challenging aspects of this project are: (1) Learning how the previous programmers set up the system, and (2) working with a real customer.

See: http://ugresearch.uaa.alaska.edu to visit the site.

The system is written in PHP with a mysql backend and runs on our Unix system, bigmazzy.

Fanorona Game Manager

The CS A405 class is building an AI-playing Fanorona program. I would like a game manager to automate the process of having two teams play each other. It would input moves from the competing programs, validate moves, and display the game board. Communication would be done over TCP. The project (or at least a working version) would have to be completed a few weeks earlier than the others so it can be used in the AI class this semester. Students enrolled in CS A405 would benefit since the development of the game manager has some overlap with the AI project in that class.

Grant Proposal Submission/Review System

This is another web-based project for the Office of Undergraduate Research and Scholarship (OURS). Unlike the research database, it does not yet exist. OURS solicits and awards several research grants that students apply for with the assistance of a faculty mentor. A list is available here: http://www.uaa.alaska.edu/ours/opportunities/research/index.cfm.

OURS would like a web-based system where a student can log in, and upload the proposal (and enter other required info). An administrator would be able to see all the proposals submitted so far and assign faculty reviewers for the proposals. Review of the awards is done by a panel of several faculty members. The panel members should be able to individually log in to view the proposals assigned to them. Collectively, the panel should be able to assign a review with feedback that can be seen by the student that submitted the proposal (e.g. awarded, rejected, reasons for rejection, etc.)

Example systems: NSF Fastlane, Abstract Review System

I would serve as the primary customer. Since the system doesn't exist yet you would have the freedom to write it using the platform and programming language of your choice (e.g. C# .NET, PHP, Ruby on Rails, JSP, etc.). You will probably want to use a back-end database, although storing everything in files on the file system is also a possibility.