CS 4311 Winter 2007 Home Page
CS 4311 Winter 2007 - Software Engineering II - 4 Credits 

Instructor: David Yang (Science South 450, david.yang@csueastbay.edu)

Time: Mondays, Wednesdays 6PM - 7:50 PM

Location: South Science 125 

Prerequisites: CS 3340, CS 4310. In particular, this is not a course to use to learn Java -- take 3340 first. There is also a significant amount of programming required. You are expected to have a basic feel for UML and the software process, which CS 4310 will give you.

Text:
There is enough in the new edition that I think it is worth spending the extra money. This is a good book, worth keeping even after you finish the course, assuming you continue some involvement with object-oriented design, even if you aren't programming.

The course will also make use of online resources as well. For the design patterns, here is a nice page of UML diagrams from Vince Huston

Blackboard -- notes, submitting work and grades: Lecture notes will be posted on Blackboard after each class. You will be submitting your work on Blackboard and will be able to check your grades there. If you have never used Blackboard before, note that you login with your NetID. The link for activating your Net ID is on the Blackboard home page. To get started, go to the Support Page . You should find the Getting Started page for Students especially helpful. Note that I do sometimes send information, including comments on assignments, to your email address listed on Blackboard. If you should change email addresses, please update it on Blackboard (the FAQ tells you how).

Goals:

  • to reinforce what you learned in CS 4310, now that you have at least a bit of experience with group work. You should now have some practical appreciation for why software companies use layered designs and separate Model from View.
  • to understand object-oriented analysis and design better -- you want to be able to not just define classes, but to compare alternatives for what classes to define and what responsibilities to assign to each class
  • to understand and gain experience working with design patterns
  • to examine and analyze "agile" software development
Design patterns are now used throughout popular library packages. In particular, Java implements several patterns directly in its standard library code, and refers to many others in its documentation. Non-object-oriented design patterns have also been developed, and the concept of patterns has been applied in nonprogramming fields.

Assignments: There are several lab days to try to ensure that you understand what we are talking about. Besides that, there will be 4-6 homework assignments which will probably all include programming. IMPORTANT: Homework assignments are to be done individually. The lab assignments are intended to enable you to work on your own.

Calculation of your grade: 
The programming assignments will count for 50%.
The midterm will count for 20%
The comprehensive final exam will count for 30%.

[grading note: Your exams must average (using the relative weights above) out to a B or better in order to get at least a B in the course.]

Final grades will be given according to the following scale:

93-100 A, 90-92 A-, 87-89 B+, 83-86 B, 80-82 B-, 77-79 C+, 73-76 C, 70-72 C-, 67-69 D+, 60-66 D,  0-59 F 

Attendance:
I will initially take attendance to get your names right. Remember that standard policy dictates that students who do not attend can be removed in favor of students on the waiting list who do show up. Be aware that while lecture notes will be posted on Blackboard, they are not supposed to be "complete" -- class discussion is an important component.

Academic Honesty: This course will follow the University's standard policy on academic dishonesty. In particular, note that regardless of whether you copy work from another student or allow another student to copy your work on an exam, you are both equally guilty and equally penalized. Copying text/files off the internet without properly giving credit is also cheating. Any cheating on an exam results in an F for the course. Cheating twice also results in an automatic F. All instances of cheating will be reported to the Dean's office.

Remember that the University may inflict further penalties than listed here under the provisions of the published Academic Dishonesty Policy. 

Office Hours

Click here for the tentative schedule

This webpage's layout is originally from Bill Parkinson, who used to teach in the evening program at St. Joseph's University.