COMP 465W: Software Engineering

 

Fall 2015

 

Course Syllabus and Class Policies

 

 

 

 

1.      The three main components of this course are:

á         The study of software engineering (following the "textbook/class/homework/exam" model)

á         Phased, systematic and disciplined development of a large software project in programming teams

á         Extensive practice of reading and technical writing.

 

2.      The course learning outcomes are:

Upon successful completion of this course, the student will:

á         Demonstrate knowledge of fundamental principles of software engineering in the areas of requirements specification, design, implementation, verification and validation, and maintenance.

á         Be able to apply the principles of software engineering in developing a real-world software system in a team environment.

á         Demonstrate technical writing skills in the area of software engineering.

 

3.      Course topics follow the textbook chapters (see the tentative Course Topics Schedule at  http://home.sandiego.edu/~pruski/cs465wf15topicsschedule.html) We will cover most of the textbook, with the average pace of about two thirds of a chapter per class meeting. The major deadlines for the project are listed in the Detailed Project Schedule (see http://home.sandiego.edu/~pruski/cs465wf15projectschedule.html ). The complete project, including the rewrites of test report, user manual, and the final project write-up, is due Friday, 12/18/15, midnight.

 

4.      The course webpage:  http://home.sandiego.edu/~pruski/cs465wf15.html .The webpage contains assignments, course deadlines, links to other pages, and various announcements.

 

5.      COMP 465 is a W (writing) course. You will be writing a lot in this class, perhaps more than in any other college course. Homework assignments will require writing essays. All assignments will be graded and most will be subject to graded rewrites. The project will involve even more extensive writing, subject to a four-step revision cycle: draft - paper - first rewrite - second rewrite. In addition to project-related documents you will be writing weeklyprogress reports and the final project write-up. The exams will include written essays. Your homework assignments and project documents will be graded not only on the subject matter, but also on correctness (grammar, spelling, etc.), clarity, simplicity, economy and effectiveness of your writing.

 

 

6.      The textbook: Ian Sommerville: Software Engineering, Ninth Edition. This comprehensive book is probably the most popular undergraduate-level software engineering text in the world. I will be assigning reading for each class meeting, and the class time will be spent mostly for discussion of the assigned reading. In addition to your work on the project, home reading is the most important component of your subject-matter learning. Please be aware that there will be a lot of reading as you have to read about 600 pages in about 80 days!

 

7.      Office Hours (Dr. Lukasz Pruski, Serra Hall 149, x.4035):

 

Monday

10:10 - 11:10

Tuesday

2:20 - 3:50

Wednesday

4:30 - 5:30

Friday

2 - 3:30

 

and at other times, by appointment. (NOTE: These times are tentative at this point.)

 

8.      Contact: The best way to contact me is by using e-mail (pruski@sandiego.edu or lukaszpruski@gmail.com ). I read e-mail many times a day and night, except for a few weekends when I may be out of town. I have voice mail (x. 4035), but sometimes I forget to check it. If, for some reason, you are unable to contact me, you may call our departmental Executive Assistant, Tina, at x. 4706, as well.

 

9.      You will work in class in ad hoc teams on questions related to the material you were assigned to read. The students will present answers to the questions and we will discuss these answers in class. I used this mode of teaching in my previous COMP 165W/465W courses (1999 - 2014); the students overwhelmingly approved and liked it and, in my view, the approach resulted in much improved learning.

 

10.  There will be six individual homework assignments. These will be questions requiring essay answers (two to four standard double-spaced pages). Most assignment will be subject to the revision cycle that will require submitting the actual papers as well as their rewrites. Both components of the cycle will be graded. One of the essays will be a subject of peer grading. Homework assignment scores will count for 20% of the course grade. Late assignments will not be accepted unless you have a valid reason for not turning one on time and you arrange it with me in advance.

 

11.  Each of you will conduct research (individually or in teams of two) on a topic that we do not cover in depth in class and prepare a short (about 10-15 minutes) class presentation. This research project will count for 5% of the course grade.

 

12.  There will be a quiz (about 5-10 minutes) at the beginning of EACH CLASS MEETING (except for the first class and the midterm day), until Thanksgiving break. The quiz question(s) will always be on the reading material assigned for the current class. The three lowest quiz scores will be dropped. The remaining scores will count for 15% of the course grade. In general, quizzes cannot be made up, unless you have a valid reason to miss the class and you notify me in advance.

 

 

13.  There will be one midterm exam, on Wednesday, October 21. The score will count for 10% of the course grade. Midterm can be made up only if you have a truly important reason for missing the class and if you notify me in advance about your absence. Midterm exam will contain one "longer-essay" question and several short-essay questions. No smart phones, iPads, iPods or similar gadgets are allowed.

 

14.  The final exam (Friday, December 18, 11 - 1:30) will be cumulative and its score will count for 30% of the course grade. The exam will also contain one "longer-essay" question.

 

15.  The programming project will be a team project. I  may provide one or two project topics, but you are encouraged to suggest project topics of your own choosing. The project score will consist of many components, such as scores for various project documents (SRS document, design document, test plan, test report, user manual, etc.) and for their rewrites/revisions, scores for weekly progress reports, scores for project presentation, scores forfinal project documentation, and, of course, for the quality of the project itself. The detailed allocation of credit among various components of the project will be given in class. The total project score will count for 20% of the course grade. Note that it will not be possible to turn the project in late as the due date is the last day of the semester.

 

16.  Grading criteria are as follows:

 

Total percentage

Grade

92% and above

A

90% - 92%

A-

88% - 90%

B+

82% - 88%

B

80% - 82%

B-

75% - 80%

C+

65% - 75%

C

60% - 65%

C-

50% - 60%

D

Below 50%

F

 

(In the unlikely case that the number of A's and B's falls below 40%, I will curve the grades up appropriately.)

 

17.  The Mathematics and Computer Science Department strongly promotes Academic Integrity. I hope issues related to academic integrity will not arise in our course. In the past, there have been several cases of cheating in programming courses - mainly the cases of submitting someone else's work for homework or programming assignments. Depending on the severity of the case, the possible consequences include: assigning the score of 0 on the given assignment, lowering the course grade, or even assigning F in the course.