2010-2011 ROBOT SOFTWARE ENGINEERING PROJECTS |
PROJECT 'CHALLENGE' RATING (offered
to assist you with project management strategies) |
||
Routine |
Typically some deep thinking required,
but not necessarily a lot of coding. |
|
Hard |
Likely involves either a multiplicity of new concepts, designs and/or algorithms. |
|
Really Hard |
Start immediately, think
hard, employ a stepwise refinement strategy and post concerns
as required. |
|

El Dorado. As is typical of most Explorers your quest for the Lost City of Gold is guided by a treasure map that details the locations of caches of precious stones (rubies, emeralds, and sapphires). Your original colour is black. At each location, you first identify whether the item is an instance of a Gold object. If it is, set your label to Eureka! and retire comfortably, otherwise continue. The map instructs you to pick up all the jewels at the location, recording the number of each variety (r, g, b). As you pick up the jewels, one-by-one, your colour changes to reflect the r, g, b totals. After acquiring all the jewels from a cache, the total number of jewels of each variety, together with a simple arithmetic calculation, will enable you to identify the location of the next cache. The formula for the street and address of the next cache is as follows,
(street, avenue) = ((r×g×b) mod 7, (r+g+b) mod 7)
Task.
Create a project called ElDorado and add this driver to the src folder.

In this project you are granted slightly more freedom to demonstrate how much you've learned, particularly in the area of class design. So, get started early, work on it in stages, think deeply, and make justifiable design decisions.

Election. Since there is a federal election two days after you submit this assignment, it only made sense to base it around the event. Consider an ideal Ontario riding with 36 voters in which there is exactly one eligible voter in each household. For our purposes, the task of each of the four politicians is to canvass each residence in the riding, collecting their own votes (it matches their party's colour) from each of the decided (non-black) voters. Since the Bloc Quebeçois do not run candidates outside of Quebec, the light blue votes will be left behind as well. To make it easy on the candidates to know when to prepare for the next street, walls have been positioned at the ends of each street. At the end of the simulation, the politicians finish by retreating to their party's headquarters, facing south, and then dumping all the votes they've collected. Run the applet a few times to study a number of random configurations before completing the task defined below.
Task.
Farming With Six Threads. This example is presented to you in support of your Castles assignment. Run the applet and observe both the similarities and differences between Harvester and Planter objects. You'll find all the source code in our ICS2O email conference. Create the project yourself and determine how closely this fits with the expectations for your Short- and LongWallGuards.

Castles. Based
on Programming Projects 3.12 and 3.13. In this assignment
you are to demonstrate your understanding of the critical concepts introduced in Chapter 3,
Task.
while (true) {
// insert method call(s) here
}
![]()
SuperHeroes. Based
on Programming Project 3.10.
Read
the problem specification on page 163 as many times as it takes to fully
understand
the task before beginning.
Ignore part a) where it requests that the buildings are read in from a file.
Instead, create the buildings as requested in part b). The highest credit
will be reserved for those projects that reflect a stepwise
refinement approach leading to well-named, single-purpose
methods.
I've incorporated an icon technique that uses an image file
to provide for a more interesting simulation.
Finally, since an execution of the project will
not be provided you are to rely exclusively on the written specifications
of the task.
Task.
Attach fully javadoced CityBuilder and SpiderBot class files (only) to an email to handin with the Subject Line SuperHeroes by the deadline.

Hansel
and Gretel.
This assignment is based loosely on Project 2.9
found on page 109 and partly on the
nasty
Hansel and Gretel fable (feel
free
to refresh
your memory).
To begin, study
the
applet
version
of the two children dropping pebbles as they move deeper into the forest.
![]() |
Task.
Relay
Race. Note. Soon after
you started your study of electric circuits back in September, I cautioned
you
not to
depend
too
heavily on the photos of the final circuit. Rather, you were encouraged to examine each schematic
thoroughly to gain an appreciation of the behaviour of the circuit. Five
months later finds you in a parallel situation. You are cautioned again,
not to depend too heavily on the executable version of the application I
will
continue
to provide
in the
short run, but rather, focus intently on the specification of each task and
think deeply about the concepts you have been introduced to.
Specification. As part of Spirit Week activities this week, RSGC's House Games include a Relay Race in the gym on Wednesday. Two members of each house are selected at random to compete in an event that requires Partner 1 to dribble a soccer ball the length of the gym to partner 2. Partner 2 dribbles the ball back to it's original position, turns around at the starting line and dribbles it back to Partner 1. Partner 1 returns the ball to its original position and then sets up at the starting line in the initial position. Athletes are in their house colours, labelled, and assigned a random speed for each running of the event. Finally, each house performs the task separately with, presumably, Mr. Thornbury recording the time for each house. Check it out: . Here is the initial (and final) situation...
-->
Task.

Finally, attach all your fully-documented source files (RelayRace, Athlete, and SoccerBall) to an email to handin with the Subject Line: Relay Race by the deadline.
Road
Crew. Dusk is falling and with so much
construction in the Annex, road crew workers have been dispatched to manually
turn on all the construction
Flashers.
The Streetlight located
near the RSGC campus at the northwest corner of Howland and Barton has a
switch that can be thrown after
the road crew is finished. Click the button to launch
a sample
run of
the evening's work.
| Initial Situation | Final Situation |
![]() |
![]() |
Task.
Attach your RoadCrew source code to an email to handin with the requested Subject Line by the deadline.
Escape
Maze. In this project you will gain familiarity with a number of methods
of the Robot class. Each of
you has a unique 5×5 maze you are to navigate your way out of. The exit
of the maze is located at the east wall of intersection (4,4).
Task.
Create a project called EscapeMaze and
add a driver class by the same name.
Floor Plan.
The chance of a your family surviving a fire is greatly increased if the
TFD has access to the floor plan of your house. For your first assignment you
are asked to develop a floor plan of the main floor of their
own home.
Task.

Eclipse
Screen Capture. After
successfully installing Eclipse,
creating your First Robots project, and running it, you are to take a screen
capture similar to the
one on the right and attach it to an email to handin. In this way we
can both be confident you have a working Robots Integrated
Development Environment (IDE).