CSC 508
Software Engineering I
Revised Fall Term 2006



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.html


PREREQUISITE:   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.


This first course in the two course sequence will focus on the processes and products associated with Software Requirements Engineering.

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.



Grading StandardsOf course, the grading in a course like this has subjective and objective elements.  Overall, the course grade is based on the instructor's subjective evaluation of the student's work.  The grade will be based roughly on the research paper (50%), the level of class participation during class discussions (10%), and midterm examination grades (20/20%). 

Note: you must take part in each and every activity in order to pass the course, even if you must do suboptimal work on any single part.


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