Instructor: Clark Savage Turner, J.D., Ph.D.
Office:
14-211
Phone:
756 6133
My email address: csturner@falcon.csc.calpoly.edu
Web URL: http://www.csc.calpoly.edu/~csturner/courses/508f06.htmlPREREQUISITE: CSC 308 (a basic software requirements engineering course) and ideally some level of maturity reached through industrial experience.
Course Catalog Description:
CSC 508 Software Engineering I. (4)
In depth study of requirements engineering, software project management, formal specifications and object-oriented analysis. 4 Seminars. Prerequisite: CSC 308 and graduate standing, or consent of instructor.
Basic Course Requirements:
1. CLASS ATTENDANCE is CRITICAL to your grade. Participation and attendance are absolutely mandatory and contribute to your overall grade. I cannot stress this enough. Grades will reflect it... the class depends on it.
2. Formal
Presentations -
Students may be assigned presentations on
class topics. In the seminar style, students will "teach" the class
about the given topics from the research literature with critical
thinking. Presentations should be
in
lecture style with slides and a question / discussion period. The main
focus of the discussions should be "what is important to know about
this paper
or topic and why?" Similarly, strengths and weaknesses of any approach
given
should be discussed. The student presenter should lead the discussion
with
the class. Do volunteer to review and present papers that interest you,
this
can help you research your paper topic.
Students may also be given assignments relevant to the topics at
hand. For instance, students may be asked to find a "real"
requirements document and present it to the class with analysis.
Students may be assigned the task of finding a "customer" and eliciting
a problem description and a set of requirements for class discussion
and analysis. Such a project could carry over to CSC 509 and
result in a document that may be used to develop a product - it could
result in a deliverable product (or prototype).
3. Research Paper
- A publishable quality research paper will
be
produced for this class. It is expected that the topic will be a
current
topic of interest to software engineers and about 40 pages in length. A
substantial bibliography is required. Note that several students in
CSC 508 and 509 have had work accepted for publication by the International Association
of Science and Technology for Development in their Software
Engineering and
Applications conference. A copy of preliminary versions of two sample
papers
are here -
"Rethinking Software Process: The Key to Negligence Liability" and "The
Modification Process: A Practical Means to Understand and Enhance the
Software Requirements Engineering Process" are available for your
review. These are condensed, worked over versions of longer research
papers.
Most of you, all of you, are capable of this sort of work and I
encourage
you to try (it's free...well, you do have to write the paper before you
submit it!
I believe I need say nothing about cheating or
plagiarism in your work in this course, it is a serious matter and you
are mature adults. Of course, I support collaboration and use of
others' ideas in your own work. Good research always includes
"borrowing" or "incorporating" or "building upon" other work and
ideas. It is considered a "good" and necessary thing to do as long as proper
credit is given. Consult the Cal Poly policy on academic
honesty for further information.
4. [DELETED 27
SEPTEMBER 2006] Periodic
presentations based on your research [progress]
will
be given to (a) elicit feedback, and, (b) share the benefit of your
progress with the class. These presentations should be short (about 10
minutes) and give an overview
of the main problem to be solved, the state of the art in that area of
research,
and any realizations, comparisons, criticisms made in
pursuit of
progress towards a solution to the problem.
5. Weekly
review - students may be chosen at
random
to form a research evaluation committee for the class. These students
are
responsible to carefully follow the class presentations (take notes on
lecture, Q&A) to synthesize and
critically review the week's work for the
class. The students will convene for one week and will present their
results on the
Monday following the week of review. The presentation should be short,
concise and highlight the important points of the previous week, noting
strengths, weaknesses, insights and oversights for the class. What was
worth learning and why? What should we ignore? Should anything be
followed
up further? Do NOT
summarize other than to highlight important points for analysis.
6. [NEW 27 SEPTEMBER 2006] Midterm and Final
Examinations - there will be two midterm examinations
given to the students. The examinations will be written in-class
and based on readings, class discussions and student presentations.
This syllabus is subject to change. It is a graduate course and the maturity of students is respected by not imposing restrictive structure. We'll explore what makes sense as we progress. Changes are announced in class and eventually noted here. Always get notes from class if you cannot attend a given day because important information is given there that cannot be reproduced here. Always remember this is an participation driven class, let me know in advance when you have any important conflicts so that we can resolve them so as not to hurt your grade.
Updated: Sept 2006