Waiter and head waiter must be able to add new loyal customers
Title
Adding new loyal customers to the system.
Precondition
Cash-register has been unlocked and is showing its main view.
Primary Actor
Head-waiter (actually cash-register user - head-waiter opens/locks it)
Main Success Scenario
User selects “Add new loyalty customer” on the screen of the cash-register.
New view opens with editable text fields (initially empty) for first name, last name, gender, birthdate, address, email, loyalty card number. Also option to choose, if customer likes news/ads by post or email.
User fills the fields with info (either by conversing with customer or from filled form).
User presses “Add customer to database”. System checks if all fields are filled and in correct format. If they are, then additional confirmation is asked from the user. If he confirms, customer and his info is added to the database.
“New customer added. Please give him his loyalty card!” notification is shown to user.
User presses “OK” and is returned to main cash-register view.
Extensions - possible alternatives of the main success scenario
There is a need to cancel the adding process.
-> There should also be a “Cancel” button on the screen. Pressing it should ask for additional confirmation about cancelling and when received, should take the user back to main view without saving entered info.
Some of the fields are empty.
-> First name, last name, gender, loyalty card number and either address or email must be filled.
There is already a customer by that name in the database
-> System should ask from user if he wants to update info or add new customer.
Entered loyalty card number is already in the database
-> System should show error message and ask user to enter new number.