4002-219  Programming for I.T. 3

Final Project: Implement a RoboCode Robot

OBJECTIVES

  1. Your group will develop a RoboCode robot for use in a single elimination tournament for your section of Java 219.

 

DETAILS

Team

Each team will be composed of two (2) team members from the class. In the event that a class has an odd number of students, one team will be selected to have three (3) members. Teams will document which member works on which parts of the assignment.

 

All members of each team will receive the same grade on this assignment, so working together successfully is essential. If your teammate is not working with you, you are responsible for contacting the instructor and for setting up a meeting between the instructor and all team members. Complaints about team members will not be entertained after-the-fact.

 

Once team is formed the composition of that team will not change over the course of the project. Just as in real life, you may not always be working with the people you prefer to work with.

 

Each team will use the latest version of IBM’s RoboCode. RoboCode is a robotic combat simulator. You code robots using the API IBM has provided and use them to fight other robots in an arena.

Testing

You should be able to use your robot against the sample robots that are provided with RoboCode. In addition, you could arrange to test your robot against other teams from your section.

 

Tournament

The final test of your robot will come in a single elimination tournament between the different teams within your section. The instructor will determine pairings for the tournament randomly. There will be an award of extra points for the overall winner, the runner up, and the other two robots that make it into the final four.

 

Deliverables

  1. Your team must present your design to the instructor and must be able to defend the choices that your team made. A separate sheet covers the presentation requirements. Plan to turn over your design materials, such as CRC cards or notes, at this time.

 

  1. Your group must turn in a .jar file for your robot that can be loaded into the instructor’s machine for execution during the tournament. This file can be submitted via the FirstClass dropbox or can be brought in on a floppy or CD.

 

  1. Your team must provide to the instructor with the Java source code for the robot. This will be done by submitting the code to your section’s dropbox under FirstClass prior to the start of the last class (day 20).

 

  1. Your code must be fully commented and must follow the coding standards we have used in the class all quarter. (See item 2 above.)

 

Schedule

This project will cover the last 4 sessions of the course. The following schedule should be followed in order to complete the project on time:

 

Week

Day

Activities

9

1

Decide on teams, design the robot

9

2

Coding the robot

10

1

Complete coding, finish testing, verify robot can be imported correctly

10

2

Tournament during regular class time.

Java 219 Final Project

Presentation Guidelines

 

In place of the final exam for this course, you will have to make a short presentation about the final project you worked on during the last two weeks of the course. This will be very similar to what many companies do at the end of a project.

 

Most projects end with a post-mortem of the project. The various steps of the project are reviewed and a set of the lessons that were learned over the course of the project is produced. The hope is that the project members will learn those lessons and not repeat those mistakes in the future.

Topics Addressed:

Your presentation must address all of the following topics to get full credit:

  1. Discuss your design by showing a diagram of the various classes. Be prepared to discuss how the classes work together. Talk about any specific issues you encountered in getting the robot to work together.
  2. Discuss any issues encountered during coding and testing. How effective was your testing? Did errors surface after you had tested? How did you create test cases?
  3. Discuss what worked well and what did not work well when creating these programs. How was the work divided up? What problems did you see occurring on the project with design, coding, or testing? What would you do again and what would you avoid doing?
  4. Summarize what you learned on this project.

Limitations:

The following limitations are placed on your presentation:

  1. Your presentation cannot exceed 10 minutes in length.
  2. You may assume that a whiteboard and laptop with projector will be available for use. The laptop will have PowerPoint 2000 on it.
  3. You will be expected to turn in copies of your slides (if using PowerPoint) or a short written summary of your presentation. If you are using slides, there should be notes associated with each slide covering details of the main points on the slide.

 

Schedule:

Presentations will generally occur during the scheduled final exam time for 219. In the event of larger classes, a sign up sheet will be used to schedule some additional times for presentations.

 

Grading:

Your presentation will be graded on the following criteria:

 

Criteria

Points

All team members participate in the presentation

20

All required topics are addressed:

Design section

Coding/Testing section

What worked/What didn’t work section

Summary

 

15

15

15

15

Presentation was clear and organized

10

Written material adequately covers the topics presented

10