Index of /~bochmann/SEG-2106-2506/Examples-previous-years/Assignment-4/example-solution-2002 (Tropper)/JavaProgram-English
Name Last modified Size Description
Parent Directory -
Bank.java 26-Mar-2008 18:00 4.2K
WS_FTP.LOG 09-Jan-2012 04:32 3.7K
ClientQueue.java 26-Mar-2008 18:00 2.7K
Cashier.java 26-Mar-2008 18:00 2.3K
Client.java 26-Mar-2008 18:00 867
GenerateurR.java 26-Mar-2008 18:00 501
*************************
***** PLEASE NOTE : *****
*************************
This project is translated from the French version. Some things might have been
missed. Of particular importance
-'file' (French) = queue (English)
-closing comments were not translated
-client is used where customer may be more appropriate
-lineup and queue are used almost interchangably
Authors :
=========
prof. S. Somé (problem description)
Anne Bertrand (original)
Robin Tropper (original and modification)
prof. G. Bochmann (directed refactoring)
Description :
=============
This program simulates the waiting time and service time at a bank lineup. Very
simplistically, a number C of cashiers are serving a number L of lineups.
The lineups have priorities. The presented system grants priorities naïvely
by their index in the list of lineups.
Different service times are arbitrarily given to each client and a different
time for paperwork is arbitrarily given to each cahshier.
The current simulator supposes only 2 queues (enterprises and individuals). But
the system is already capable of handling dynamicly adding and removing lineups.
To do so, a cashier must be able to see an UNKNOWN number of lineups each and
every time s/he is ready to serve another client
BUG :
=====
See the file Bank.java for details. If the bug occurs, simply stop the program
and restart it.
Modelling :
===========
-architecture.png : ultra-simple diagram of entities and their relations
-overview.png : intuitive survey of the objects and their responsibilities
-sequenceService.png : typical sequence (simplified) of actions taken in the
use-case "next" (invite the next client).
System requirements :
=====================
-running only : JRE 1.5 or better with correctly set environment variables
-modification : JDK 1.5 or better with your development environment correctly configured.
Running it :
===========
-no command-line arguments
-the 'main' is in Bank.java
Modifications :
===============
-number of cashiers : in Banque.java
-number/priority of lineups : in Bank.java
-paperwork time : Cashier.java