DESCRIPTION OF THE REQUIREMENTS
FOR A SENIOR PROJECT PROPOSAL
The development of a senior project will take place
in two stages. First, students will develop a formal proposal for a project
and then, once that proposal has been approved, they will work to complete
their projects. There are any number of types of projects that will be
acceptable and students are encouraged to be creative. In addition to programs
for any conceivable purpose, projects can involve database design and/or
development, telecommunication networks problems, and/or the analysis of
and design of a complex computer system. For those with more theoretical
interests, projects involving pure research should be considered. You are
encouraged to work with others both in and out of the university in order
to develop a project that meets your particular interests and needs.
Some projects are too large and/or complex to be attempted by one person.
If you are interested in working on such a project, you might want to consider
recruiting others to work with you. However, since the completion of this
project is a requirement for graduation and since you all have your own
graduation time tables, you need to design a group project in such a way
that each member of the group is responsible for his/her own set of tasks
which can be completed independent of the rest of the project tasks.
During this semester you will be working on your own and perhaps with
others to develop such a proposal. This rest of this document describes
what will be required for a complete proposal. Since there are so many
different kinds of projects what is described may not fit what you have
in mind. If this happens, talk with the instructor.
A general description of what the project will entail, that is, what the
problem is and how you will go about solving it. For a practical project,
this will most likely involve a number of meetings with the person or group
of people who will eventually use the system you propose to develop in
order to come to an agreement on what is desired and can delivered. For
a more theoretical project, this will involve a document search and visiting
with any experts in the field.
A systems specifications or other detailed document, describing the scope
of your project. For most projects this will involve stating precisely
how the system will function, the environment in which it will function
and any constraints on its performance. This, of course, is a more formal
treatment of what is stated in part I.
A detailed design of the project including any of the following if appropriate:
a systems flow chart, structure charts, entity-relationship diagrams, object
analysis and inheritance diagrams, high level pseudocode. For more theoretical
efforts this might involve a detailed outline and extended bibliography.
A typed report that includes an Introduction, Background, Approach/Design/Method,
and Bibliography section. (Then all you have to do is add the Results
section and the Appendices!!!)
A final contract that includes a plan for testing your project where applicable.
All of this must be completed before the end of
the semester. Upon completion, it will be treated as a contract between
you and the computer science program. When you complete implementation
of what you have proposed, you will have completed your Senior Project
requirement. Remember this as you work on your proposal. A proposal that
is too simple will not be accepted but do not propose a task that is too
complex. It is, of course, possible that a project will turn out to be
too complex only after you and the CS program have agreed on it. Well justified
proposal modifications will be given every consideration.
Good luck and Have Fun!