CSC 508
Software Engineering I



Instructor:          Clark Savage Turner, J.D., Ph.D.

Office:                14-211

My email address:     csturner@falcon.csc.calpoly.edu

Web URL:          http://www.csc.calpoly.edu/~csturner/courses/csc508f02.html

This page will evolve with the course.  Please check it periodically for updates.  Old course materials will remain for basic reference but you need to check for updates on a regular basis. Really.


PREREQUISITE:   CSC 308 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 205 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 will make presentations on the weekly class topics. In the seminar style, the students will "teach" the class the given topics from the research literature. 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.

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, but they must (must!) be properly credited and your contribution or analysis noted.

4. Periodic presentations based on your research [progress] will be given to a) elicit feedback, and, b) give us the benefit of your progress. They should be short (about 10 minutes) and give an overview of a) your main interest (issue), b) the state of the art in that area, and, c) charts, graphs, realizations, comparisons, criticisms made in pursuit of progress towards your research paper. The first should be given at the 7th week and another during the 8th or 9th weeks.

5. Weekly review team - Each week three students are 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 review the week's work for the class. The committee will convene for one week and will present its 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?
______

Participation is required in all of the acitivities listed above.  In other words, you cannot skip a journal - lexicon entry and take a point penalty.  You must take part in each and every activity in order to pass the course, even if you must do suboptimal work. 




 


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: Feb. 2004