CSCI1260 Introduction to Computer Science 2 Project 2

Fall 2010

MP3 Tracker, Part 2

This project adds to the work you did in Project 1. It will require some changes to that project in addition to some new development.

In this stage, your program needs to maintain the list of music files. After the startup screen, prompt for the user’s first and last name, then display a menu of the following options and prompt the user to choose one:

1. Enter a new MP3 file

2. Display information about one MP3 file, by song title

3. Display information about MP3 files by an artist

4. Display information about all MP3 files, sorted by song title

5. Display the MP3 files with the longest and shortest playback times

6. Quit

For choice 1, input of data about each MP3 file will be done in basically the same manner as in Project 1. For choice 2, prompt the user for the title of a song. Find that particular song and display its information, formatted as in Project 1. For choice 3, prompt the user for the name of the artist. Find and display information about all songs by that artist, one at a time. For choice 4, display information about all the songs stored, sorted according to the song title attribute. For choice 5, find the songs with the largest and smallest values of playback time.

Restrictions and Recommendations

  • The design must contain an array of objects that contain MP3 information. Use a separate class that contains the array as member data. Consider using the ArrayList class (not required).
  • Please use the JOptionPane class for all input and output. You should also use the Menu class, to be provided to you (see handout on its use).

Other Project Requirements

Please read the Software Engineering Code of Ethics and Professional Practice found at it relates to principle 3, the product (short form in Preamble and more details in the body of the document). In consideration of project 2, are there any ethical issues you should consider as they relate to what you have read? Please state your answer as concisely as possible. Format, spelling, grammar, and so forth count.

Due Dates

  • Design document (Word format) due by Tuesday, September 28, 2010
  • Completed program (zipped Java source code) and your answer to ‘other project requirements’ (Word format) due by Tuesday, October 5, 2010.
  • In the same zipped file, include the following page (only) as a separate Word document with your name and your section numberfilled in at the top

Evaluation Rubric For ______in Section ______

Criteria / Points / Points Awarded / Comments
Design (25%)
Inputs, Processing, and Outputs identified / 5
Class Responsibilities identified / 5
Class diagram is appropriate / 5
Pseudocode and test cases are appropriate / 5
Array is used correctly / 5
The code is maintainable (25%)
Code indented to standards / 5
Code commented to standards / 5
Internal comments used and used appropriately / 5
Identifier names are meaningful / 5
Constants used appropriately / 5
The program is correct (40%)
The program compiles without warnings / 5
Welcome message and menu displayed correctly / 5
User information is inputted and validated / 5
MP3 information is inputted and validated / 5
Report is correctly formatted / 5
The program produces expected results / 15
Other Project Requirements (10%)
Ethical issue answer / 10
TOTAL / 100