Starting from:
$19.99

$13.99

Statechart Diagrams Solution

In this exercise you are asked to produce a Statechart Diagram that implements the requirements for a restaurant reservation system. For that purpose, the broad specifications of the system are as follows:

• The reservation system should operate through a PC or other portable device interface.

• There are at least four steps in the reservation system: "Create account", "Search for free table", "Confirm table reservation" and "Cancel reservation".

• A user must create an account the first time they are using the system, and their points are initialized to zero (0).

• There are 20 different restaurants, each having 100 tables available for reservations.

• The user can search the various restaurants and times to try and locate an available table.

 • Once the user finds a table of interest, then the system will hold a pending table reservation for 8 minutes while the user considers confirming the reservation; and, after the 8 minutes, the reservation is released to other potential requesters.

• Once the user confirms the table reservation, the user is entitled to cancel the table without losing points if it is canceled more than 24 hours before the reservation time. Otherwise, the user's account is penalized 10 points for reservations that were confirmed less than 24 hours before the reservation time. • A non-cancelled, missed reservation causes the user's account to be penalized 50 points.

 • Several people must be able to interact with the system at the same time.

 • Two different users cannot reserve the same table simultaneously.

• A user cannot reserve two different tables (at the same restaurant or different restaurants) simultaneously.

 • A user will earn 100 points once they have fulfilled a reservation.

• If a user reserves a table less than 24 hours before the desired time, their account will be accredited 150 points if they fulfill the reservation.

You should use Harel Diagrams to capture concurrency. Also, you are allowed to add some additional actions if you feel they are needed to better complete the diagram, but minimize your additions: don't overwhelm your diagram with unnecessary states that are unrelated to these requirements.

More products