Java Vending Machines

Course: Intro. to Object Oriented Programming, CEN 4331
Professor : Dr. Maria Petrie
Purpose :

In this course, I was responsible for the design (in UML) and implementation (in Java) of a series of vending machine prototypes with a special emphasis on code reusability. In addition to the basic requirements, I ported these projects to the Java 2 Micro Edition for embedded platforms and rewrote the interfaces to run on the Palm OS platform. The Applets increased in complexity with the goal of encouraging us to use proper design techniques on the first applets, so we didn't have to entirely rewrite the following ones.

What's Here :

The three main applets in running condition. Each applet also features its UML development diagrams, which include the Use Case Diagrams, Class Diagrams, normal and abnormal Scenarios, and Sequence Diagrams. Specifications and brief instructions for using the machines are also included.

The Disposable Vending Machine was the first of the applets. It initializes with 5 of each of the three products. Simply insert money, and make a selection. When the selections are up, The Disposable Vending machine can be "thrown away."

The Refillable Vending Machine is an extension to the Disposable Vending machine. This machine starts out in "Service Mode" and the service person who initializes it is responsible for adding products and change. Later, the service person can come and change products and money deposits as necessary.

The Lotto Vending Machine is the final vending machine of the group. The Lotto Machine only sells one product, a lottery ticket that can be bought with up to five chances per ticket.

Finally, I have included a page on my extra-curricular efforts to port these applets to the Palm OS platform. You will find a description of what changes I had to make, what software I used, and where I found the things I needed. This page does not have a running applet like the others, but you there is a screen-shot of the Palm Emulator running a modified applet.

Home

created by web@dharty.com.
Copyright © 2000 David Harty