08D: CS3733 - Course Details

This class meets MTRF from 3:00 - 3:50 PM in Fuller Labs 320 (FL320).

Professor

George T. Heineman, FL-137,heineman@cs.wpi.edu
Office Hours: TBA

If you have short (or long) questions, don't hesitate to send electronic mail or post to the discussion forums hosted on my.wpi.edu.

Teaching Assistants

All TA office hours will be held in the ADP Lab (Basement of Fuller). TA Office hours will be announced shortly; each will have 4-hours of office hours per week.

Name Picture Email Roles
Jeremy Denham

heinemaniaTA is ()

jdenham _AT_ wpi.edu
 
 
Adwait Belsare adwait _AT_ wpi.edu
 
 
Gayatri Gadepalli ggayatri _AT_ wpi.edu

Senior Assistants

All SA office hours will be held in the CS Teaching Assistant Room

Robert Breznak
 
  rbreznak _AT_ wpi.edu

Purpose

This course provides an introduction to Software Engineering, an essential discipline for any undergraduate.  In this class you will learn skills that will help you design and build software projects for advanced CS classes.  The experience from this class will help your MQP group manage your time more effectively and produce a better final product.  In addition, companies have learned to hire software engineers instead of programmers, so this class is essential for your entry into the job market.

Recommended Background

CS2102 and a working understanding of Java. Experience in CS2303 would be a plus.

Text Books

Required: Object-Oriented Software Engineering : Conquering Complex and Changing Systems; Bruegge, Bernd Dutoit, Prentice Hall. One of the best books for its price.

Recommended Integrated Development Environments (for Java)

Eclipse 3.3 is expected. Download from http://www.Eclipse.org. For code coverage, be sure to install the EclEmma tool (http://www.eclemma.org).

If you intend to work on any GUI development, you should consider also installing Eclipse 3.2.2 since it has a powerful GUI edit builder. The Eclipse 3.2.2 is only available from an archive link and to properly install the visual editor, follow these steps. The reason I would like you to install Eclipse version 3.2 is that there is a plugin for code coverage, known as Coverlipse, which only works for Eclipse 3.2. Note: I have since begun using EclEmma and it is great. So the only reason to get 3.2.2 is to use the GUI builder if and when you want to. However, I have been advised there is a way to get the VisualEditor to work within

Grading Policy

Final grades computed based on 100 points:

The grading policy for each project will be provided at the time of the assignment.  In general, each assignment will have a basic objective for the majority of the assignment points and an extended objective for demonstrating additional work and understanding.

Final grades will reflect the extent to which you have demonstrated understanding of the material, and completed the assigned projects.  The base level grade will be a B which indicates that the basic objectives of assignments and exams have been met.  A grade of A will indicate significant achievement beyond the basic objectives and a grade of C will indicate not all basic objectives were met, but work was satisfactory for credit.  No incomplete grades will be assigned unless there exist exceptional, extenuating circumstances accompanied by documentation, such as a doctor's note.  The final exam will be held in class and will be closed book, closed notes. The majority of the exam will cover basic ideas and objectives of the class with a few questions testing additional understanding and insight.

There are no extensions for assignments, but each assignment has ample partial credit. If you turn in an assignment after the deadline, you will receive zero points for the assignment. That is the nature of a 'deadline'.

An observation on grades and effort

Top Ten Ways to NR the course

  1. Start an assignment the night before it is due
  2. Assume that deadlines can be changed to suit your needs
  3. Don't come to class
  4. Come to class but instead of taking notes and paying attention, fall asleep
  5. Don't read anything on the my.wpi.edu web pages
  6. Don't meet with your group. Or if you do meet, just assume someone else will do the work
  7. Fall behind and don't come to office hours with either the professor or the TA
  8. After receiving your graded assignments, don't bother to read through to correct the mistakes
  9. Don't look at the syllabus
  10. Don't read the chapters assigned by the professor

Two Special Policies

Separate from the individual grading policy, I have two very important policies that you must be aware of.

  1. The final exam will be graded out of 100 points. If you do not receive at least 50 points on the final exam, you will receive an NR for the course. I will make my previous exams available so you will see the sort of questions that I am likely to ask during the final exam. There can be no excuse for failing the exam.
  2. Each group will receive a grade, but during the code-review meetings held during the end of the term, I reserve the right to assign a particular group member a lower grade than the group grade. During these code reviews, all group member are expected to know how their component operates even though they themselves did not design or implement the whole component by themselves.

Cheating

Don't Cheat!! Unless explicitly noted, all work is to be done on an individual basis. Any violation of WPI's guidelines for academic integrity will not be tolerated and will result in no credit (NR) for the course and a referral to the Student Affairs Office for disciplinary action. I do not take cheating lightly. Neither should you. I can think of nothing more embarrassing than to be fired by a company who discovers that you are unable to perform at the level as suggested by your grades. You will only be hurting yourself. Make no mistake, your entire career depends on your integrity and your career starts here while you are still a student.

Consider the following concrete example. The homework assigned during the course will take several weeks. I encourage students to discuss with each other the issues, problems, and challenges of these projects. However, all collaboration should cease once students start implementing their solutions. 

You may wonder when a particular activity breaks the honesty principles set forward in this course. The following situations carry strong penalties:

So, what are the valid ways for students to interact?

heineman@cs.wpi.edu
04/10/08 01:46:12 PM