HW04: Movie Container due Mon 12 Feb 10:00

\begin{purpose}
In this assignment you will:
\begin{itemize}
\item Complete ...
...tinue working with {\tt git} from the command-line
\end{itemize}
\end{purpose}

Allowed and Disallowed Resources

In completing this assignment you MAY use/access the following resources:

You may NOT use/access:

Failure to abide by these guidelines will result in a zero for the assignment and the incident will be reported to the university provost as a violation of the university academic integrity policy. A second incident of academic dishonesty (whether from this course or another computer science course) will result in an F in the course.

Instructions

In your workspace make sure you have the most recent code from the base repository and from your homework repository on bitbucket.

Continue your work in the hw04 directory. Make the necessary modifications the MovieContainer class so that all the code conforms to a pure object model implementation of the UML diagram in the lab day assignment.

IMPORTANT: When this assignment is finished the program will not be functioning as it did in the previous homework assignment. At the end of this assignment you will not be involving the user for accepting input. Rather you will have a container with methods you will test by calling those methods in the driver.

Use this pattern as you work:

  1. Choose a method in the MovieContainer class you want to implement next.
  2. Implement the method.
  3. Test the method in the driver by calling it in a variety of ways. Keep in mind that while you are working on implementing the MovieContainer you are not concerned with the details of the larger program. For example, there is no menu or user interaction at this point. This is a good thing because it allows us to focus on the underlying functionality of the container without having to think about how it will be used in the future. NOTE: Most students tend to spend less time in this step than they should.
  4. Make sure the documentation and indentation of your method conforms to the provided Java Programming Conventions.
  5. Commit your work. If you have some methods that only took a few minutes to complete you may wait and commit two or three of them at a time. REMEMBER: Committing often gives you more snapshots of the code that you can revert back to if something goes awry.
  6. Go to step 1.

As always, when the program is complete make sure all work is committed and pushed to your bitbucket repository.

Grading

The assignment will be graded according to the following criteria:
Correctness 16 pts
Documentation 2 pts
Conventions 2 pts
Version Control 2 pts
Total 22 pts

Your program should be completely working and should follow all of the programming conventions named in class and explained in http://josephus.hsutx.edu/classes/all/javaconventions/ (including the use of comments that conform to the JavaDoc guidelines).

The instructor will grade your work based on what you have pushed to the hosted homework repository you have shared. For all assignments the program is due before the beginning of class on the due date. Repositories that show a commit time after that time will be graded as late.