Senior Project/Master's Thesis Guidelines
Professor Daniel Stearns
These guidelines are a supplement to the following documents for
my advisees. My guidelines are
adapted from similar guidelines written by Professors Oliver and
Buckalew.
- Computer Science Department Guidelines for Senior Project
Available outside the CSC office 14-254
- Guidelines for Completing Graduate Theses and Reports
Available in the Graduate Office 38-154
Choosing a Topic
The most important consideration is finding a topic that interests
both of us. My Web page has a list of topics that I am currently
willing to support; read that list and see if there is some
mutuality.
How Long?
Plan on spending an entire academic year on your project. Few people
complete their work in two quarters. You can earn credit for the
additional quarter by taking CSC400/500. In any case, you must
always be enrolled in some course if you are working on your project with
me as your advisor.
Scheduled Meetings
We will schedule a meeting once per week to discuss your project.
Think of this meeting as a regular class time.
Your Development Process
It is entirely YOUR responsibility to make sure your project gets done.
I will not push you to progress or finish; this is a deliberate attitude
and doesn't indicate a lack of caring on my part. I feel it is important
for you to succeed on your own without prodding from me. You will find
the weekly meetings useful to keep you on track.
I do require you to use a formal development process for your work. This
is your development process; you can use what you learned in CSC440 or ask
me to help create your own personal process. I suggest strongly that you
read:
Humphrey, Watts. A Discipline for Software Engineering . Addison-
Wesley, 1995
if you need guidance in creating your process.
We will negoitiate your process during the first quarter of work. Usually,
I do insist that you include the following:
- A description and graphical view of your development process.
- A requirements document that will be signed by your project's user.
- The use of a design methodology (e.g. Booch, OMT)
- Adherence to a negotiated coding standards. (Yours or
mine )
- A test plan
- Documentation requirements described below
Deliverables, Due Dates and Grades
At the beginning of each quarter, I expect you to turn in a project
plan outlining your deliverables for that quarter and the date each
will be completed. These dates are up to you; my only proviso is:
The first draft of your final writeup must be turned in by the end of
the 8th week if you want a grade for that quarter.
As for grades, I use the following scale:
- A
All deliverables are complete and satisfactory.
- SP
All major deliverables have been turned in and need some revision work
or the project write-up was turned in after the 8th week.
- F
One or more major deliverable has not been turned in.
Documentation Requirements
Many students get to the writeup phase of their project and have
a difficult time getting started. I know many students who have
finished all their technical work but have yet to start their
writeup. To help prevent this problem, I ask you to turn in part
of the writeup at various times during the project. You can include
these submissions as part of your deliverable plan discussed above.
These submissions must include, at a minimum, the following:
- Journal
Buy a hardbound journal and use it to document your ideas, project work
and hours on a regular basis. All entries must be made in ink and never
tear a page from your journal. Bring your journal to each weekly
meeting.
- Project proposal
Use the proposal to persuade your advisor you have a worthy topic.
Senior project proposals must be turned into the CSC office in
the format described in the CSC Department Guidelines.
- Abstract
State what you are doing in one page. Include the ACM classifiation
system descriptors at the bottom of your abstract. You can
find the classification system in the Computing Reviews journal in
the reference room of the library.
- Annotatted bibliography
Do the research work early and write a paragraph describing what
you learned in each source.
- Outline
An outline of your final writeup. The earlier you do it, the easier
the writeup will be.
- Problem description and discussion of previous work
Describe the problem in great detail; make it clear to the reader
what you're trying to solve. You must also give the reader the sense
that the problem is worth solving.
What other solutions have been proposed or implemented for this problem?
Why are they not good enough? You must preparte the reader to belive that
your solution (which the reader knows nothing about) is better than
these other attempts.
This is also the section where you describe any work your solution is
built on.
- Requirements documentation
To be delivered as appropriate to your development process. If an
end-user is involved (it might be your advisor),
the requirements document must be approved.
- Design documentation
To be delivered as appropriate to your development process.
- Adherence to the standard college research paper style guide
Slade, Campbell, Ballou. Form and Style. Houghton Mufflin, 1994
A Final Word
It is a bad idea to leave Cal Poly with your project unfinished. Almost
everyone who does never finishes; everyone who does wishes they had
stayed and completed their work. It is quite difficult to work full-time
and expect to have some time and motivation left over to finish your
project. I won't include here the tragic stories of what happens
to many students who leave with their degree unfinished. I probably will
give you the oral version during one of our meetings. In any case,
if you leave there is a high probability that you will never get your degree.
Last updated on 4/13/00