<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC 
    "-//Dawid Weiss//DTD DocBook V3.1-Based Extension for XML and graphics inclusion//EN" 
    "http://www.cs.put.poznan.pl/dweiss/dtd/dweiss-docbook-extensions.dtd" [
<!ENTITY % isopub SYSTEM "iso-pub.ent"> 
%isopub;
<!ENTITY % local SYSTEM "local-entities.ent">
%local; 
]>

<article id="project3">

	<articleinfo>
		<title>Project 3</title>
		<author>
			<firstname>Kevin</firstname>
			<surname>Nilson</surname>

			<affiliation>
				<orgname>http://www.smccd.net/accounts/nilsonk/</orgname>
			</affiliation>
		</author>

		<abstract>
			<simpara>CS 381 Project 3, Java Programming I, Fall 06</simpara>
		</abstract>

	</articleinfo>

	<sect1 id="assignment">
		<title>Assignment</title>
		<simpara>Due - September 18</simpara>
		<simpara>Write a simple Java program that performs like a cash register.</simpara>

		<itemizedlist>
			<listitem>
				<para>Your Java Classes should use the package edu.smccd.cis381.fall2006.project3</para>
			</listitem>
			<listitem>
				<para>Your program must be compatible with project3-build.xml</para>
			</listitem>
		</itemizedlist>

		<itemizedlist>
			<title>I expect 3 classes for this assignment</title>
			<listitem>
				<para>CashRegister</para>
			</listitem>
			<listitem>
				<para>Money</para>
			</listitem>
			<listitem>
				<para>CashRegisterTester</para>
			</listitem>
		</itemizedlist>

		<simpara>Please review "How to Turn in Assignments" for information about how to submit and other requirements.</simpara>
	</sect1>


	<sect1 id="uml">
		<title>Description of Classes</title>
		<figure>
			<title>UML</title>
			<mediaobject>
				<imageobject>
					<imagedata fileref="figures/project03/project3ClassDiagram.png" format="PNG" />
				</imageobject>
				<caption>
					<para>Class Diagram for CashRegister and Money</para>
				</caption>
			</mediaobject>
		</figure>

	</sect1>

	<sect1 id="tester">
		<title>CashRegisterTester</title>
		<orderedlist numeration="arabic">
			<title>CashRegisterTester should do the following</title>
			<listitem>
				<para>Create one or more CashRegisters.</para>
			</listitem>
			<listitem>
				<para>Make some purchases.</para>
			</listitem>
			<listitem>
				<para>Print the change after each purchase.</para>
			</listitem>
			<listitem>
				<para>Print the balance of the cash register before exiting.</para>
			</listitem>
		</orderedlist>
	</sect1>


	<sect1 id="cashregister">
		<title>CashRegister</title>
		<itemizedlist>
			<listitem>
				<para>return null Change if not sufficient funds given to make purchase</para>
			</listitem>
			<listitem>
				<para>May make change at any time.</para>
			</listitem>
			<listitem>
				<para>No refunds are given, only purchases may be made.</para>
			</listitem>
			<listitem>
				<para>The register only keeps track of the total balance, it does not have any idea what bills and coins it has inside.</para>
			</listitem>
		</itemizedlist>
	</sect1>

	<sect1 id="money">
		<title>Money</title>
		<itemizedlist>
			<listitem>
				<para>Don't forget 5 singles is equal to a five dollar bill.</para>
			</listitem>
			<listitem>
				<para>When giving change please use as much of the highest value currency as possible.  When giving change $27.33 give: 1 twenty, 1 five, 2 singles, 1 quarter, 1 nickle, and 3 pennies.</para>
			</listitem>
			<listitem>
				<para>When customers pay they may use any distribution of currency they wish.</para>
			</listitem>
		</itemizedlist>
	</sect1>


</article>
