Course Notes
Computer Engineering

Succeeding with CSE687 - OOD Projects

  1. Prime Directive - Plan First!

    1. What does that mean?
      Make a small overall plan, e.g., define the program's tasks, major packages, responsibilities of each package. Include package and class diagrams. Visio works well for this, but hand drawn sketches are fine too.
  2. Prime Directive - Write lots of code!

    1. What does that mean?
      Pick a package that desn't depend on any others - there almost certainly will be at least one of those, and rough in classes, e.g., write a class declaration, deciding on the method names and data members. This gives you a language to implement more code.
    2. Implement methods one-at-a-time, and test each one with code in a test stub before moving on to the next function.
    3. If there is some functionality you don't know how to implement, then:
      1. Create another project to try out ideas.
      2. If that doesn't lead anywhere, take what you have to one of the TAs and get some help.
      3. If that doesn't help, bring what you have to me and get some help.
    4. When you're done with this package, pick another, create a new project fro the new package, includeing the code from the first if this one depends on that code.
    5. Start by just stealing the previous package's test stub and put it into main (the test stub for this new package).
    6. Now, rough in more classes.
    7. Continue until all the packages are done, testing at each step.
  3. Prime Directive - Compile Often!

    1. What does that mean?
      Build, run, and evaluate, every time you add a few lines of code.
  4. Prime Directive - Submit on Time!

    1. Do this even if you haven't met all requirements. But make sure that what you do submit is well designed and robust.
  5. Read the Assignments, Look at Sample Code and Come to the Help Sessions:

    1. Help sessions start at 9:00am on Fridays in CST 4-201. They usually end around 10:30am, but I'll go until Noon if the questions keep coming.
    2. TAs hold a "Surviving OOD" help session, also on Fridays, at 5:00pm in CST 4-201. These are intended for students who are struggling with the course material, so complex or sophisticated questions will be redirected to me. These sessions help you build the foundations you need for this course.