Ask a question to Desklib · AI bot

# (CPT 244) - Efficient Queue Management: Customer Processing Assignment

4 Pages1652 Words206 Views

Midlands Technical College

Queues: Customer Processing (CPT 244)

This text appears to be an assignment for a course on Queues and Customer Processing. The problem presented is to determine which of two methods of managing customers in a queue is most efficient: a single line for all customers or multiple lines, one for each teller. The assignment includes three files that model a Customer, a customer generator, and the bank itself. The customer generator accepts several arguments, including the minimum and maximum time it takes to process a customer's request, the average number of customers that will arrive per time slot, the total number of time slots, and an optional seed for the random number generator. The goal of the assignment is to determine how many tellers are needed so that no customer has to wait more than five minutes in line before being served. Students are required to create a Teller class and display information about the maximum and average idle time for tellers and the maximum and average wait time for customers.

BookmarkShareRelated Documents
CPT 244 – Queues: Customer ProcessingProblemWhen we are waiting in a fast food line, an airline service counter, a bank, etc. there is typically one of two different methods of managing customers:Have a single line for people waiting for service. Every customer waits in a single line. When a teller becomes free, the customer at the head of the line moves to the teller. If there are multiple tellers free, one is picked randomly.Have multiple lines – one for each teller. When customers come in the door they attempt to pick the line that has the shortest wait. This usually involves standing in the line with the fewest customers. If there are multiple choices, the appropriate line is selected randomly.So, which of these two methods of queuing customers is most efficient? In the single-line technique, tellers appear to be constantly busy and no customer is served before any customer that arrives later. In the multiple-line technique, however, customers can take the responsibility of evaluating the lines themselves.ProcedureAttached to this assignment in the drop box are three files. One models a Customer, one models a customer generator (e.g. the front door of a bank) and the final models the bank itself (which contains the Main method). The Main method is really just a shell to demonstrate calling the customer generator. The generator accepts the following arguments:minDuration – The minimum amount of time that it will take to process a customer's request.maxDuration – The maximum amount of time that it will take to process a customer's request.avgPerSlot – The average number of customers that will arrive per time slot. (e.g. .5 would mean one customer every two minutes; 3 would mean three customers per minute)totalTime – Total number of time slots for which customers are to be generated. For example, 120 means a two hour timeslot. The time will actually be slightly longer to service the last few customers.seed – If present, the this value is passed as the seed to the random number generator. If the seed is negative, no seed is passed.For the sake of this program, all time units represent one minute, though as long as the unit is consistent throughout the program, this could be any time (second, millisecond, day, etc.) The class has a single method, GetCustomers, which returns a Queue of customers now waiting to be served. You could think of it as the all the customers who arrived in the last minute. That method takes a single argument, timeslot, which is the number of seconds that have elapsed

## Found this document preview useful?

Related Documents
|2
|606
|131

### Support

#### +1-312 997 5479

Chat with our experts. we are online and ready to help.