JMU CS349 - Developing Multimedia
Gallery Help Policies Solutions Study-Aids Syllabus Tools
Programming Assignment 6


1 Purpose

The primary purpose of this assignment is to help you review (and demonstrate that you have acquired) the knowledge and skills required to create a program that uses sampled dynamic visual content.

2 Background

As you know, EnhancedRealty is a (fictitious) that is developing and commercializing applications for the real estate industry. For this assignment, you must implement v2.0 of an application that can be used to display textual information about weather observations and forecasts.

3 Documents

EnhancedRealty uses a heavyweight process (as opposed to an agile process) so they have created a fairly detailed set of specifications. They are described in the following document:

4 Resources

They have provided you with the following resources:

The first, which must be un-zipped, contains the "frames" of the animation. The second contains the names of the frames.

5 Submission

There is a two part submission process for this assignment.
  1. You must submit (using Gradescope) a .zip file containing all of the code necessary to build your application. Gradescope will only be checking to ensure that your code complies with the course style guide. Hence, you may only submit to Gradescope five times. If you can't get your code to comply with the course style guide within five submissions, you will receive a grade of 0 on the assignment.
  2. You must also submit (using Canvas) an executable .jar file named TextApplication2.jar (that must NOT contain any of the classes in multimedia2.jar ).

6 Grading

You will receive one of four grades on this assignment -- 100, 75, 50, or 0. You will receive a grade of 100 if your code is essentially correct (i.e., a limited number of system tests do not cause any failures). You will receive a grade of 75 if you appear to have devoted significant effort to the assignment but your code has small defects. You will receive a grade of 50 if you devoted a reasonable amount of effort to the assignment but your code has major defects. You will receive a grade of 0 otherwise and/or if the code you submit to Gradescope code contains any style defects.

Gradescope will assign a maximum grade of 25 (based solely on style). Points will then be awarded manually based on the criteria discussed in the previous paragraph.

7 Help

You might find the following tips/hints helpful.

7.1 Overall Approach

Since the behavior of the other applications must not change, you must not change the HomeBaseApplication class. Instead, you should override the handleAbout() and init() methods.

7.2 The Superimposition Functionality

There are many ways to implement the required superimposition functionality. Probably the worst (i.e., the least flexible) is to create a piece of static sampled visual content. Much better would be to create a class that encapsulates static textual content (and use it in a TransformableContentSuperimposition) or to extend the AbstractSuperimposition class.

Copyright 2024