Assignment 2
Receiving and Printing Information from a Remote Spacecraft
Due Wednesday, May 14, 2008, at 11pm via Checkmate

In this Assignment you will modify the 3D Lunar Lander Game to print information sent by a remote spacecraft. You should create a dummy remote spacecraft that will update its values (altitude, velocity, and fuel) every second. The game should print the received values in the screen, below the values for the local spacecraft.

Part 1. Implementation

Follow the instructions and considerations included in the Discussion's Slides to complete the steps for your implementation.
  1. Update ArchStudio 4 Eclipse plug-in
  2. Create a tag called "LunarLanderAssignment1" for your current version of Lunar Lander in SVN
  3. (30 points) Change the architecture:
    1. Create and modify the components, component types, interfaces, signatures, connectors, connector types, and links needed to add the dummy remote spacecraft and print the received values in the screen. Map each architecture element to its implementation when required.
  4. (30 points) Change the implementation:
    1. Create and modify the Java classes and interfaces needed to add the dummy remote spacecraft and print the received values in the screen.
  5. Commit your project in SVN and make sure to add the files you created for this assignment

Part 2. Discussion

  1. (10 points) Include the image of your architecture in your report. List the components, components types, interfaces, signatures, connectors, and connector types you created or modified and explain why did you create them or what did you change on them.
  2. (10 points) List the Java classes and interfaces you created or modified and explain why did you create them or what did you change on them.
  3. (10 points) Discuss your experience modifying the existent architecture and code. Was it easy, difficult, frustrating, or none of them, or some of them? Explain why.
  4. (10 points) Include a screen shot of the SVN Repository View in your report showing the tag you created for "LunarLanderAssignment1" and the current version in your trunk. The versions showed in the tag and in trunk must be different for arch.xml and other modified files.

Deliverables

Your assignment must be submitted electronically to Checkmate. You will submit:
  • LunarLander.zip including your compressed LunarLander Eclipse project
  • Report.pdf including the answers to the discussion questions, image, and screen shot requested in Part 2