2. Requirements Analysis
2.3 Functional Requirement
Module: Membership Maintenance
Diagram 2.4.1 Membership Maintenance User Requirement
This system must allow users to add new member, update‟s member details, delete and search for existing member details.
System Requirement
1.0 Add new member (Member Registration)
The system must allow the user to enter new member details.
The system must allow the user to enter desirable username.
The system must validate the details enter by user such as IC Number, Phone Number, Email and so on.
If the user enters invalid member details, an error message will be prompt and user needs to re-enter the invalid details.
If the member details are valid, the system will prompt a confirmation message.
If user clicks on confirm button, the system will display a successful message, store the details into database and an email will be sent.
2.0 Edit member details (Member Profile)
The system shall display the searching result based on member login credentials.
If the member details cannot be matched in the database, the system will prompt an error message.
The system shall allow the user to make changes in the current data displayed on screen such as address, phone and etc.
The system will validate the information that edits by users.
If the user enters invalid information, the system will prompt an error message and user needs to reenter the information.
If the member details are valid, the system will prompt a confirmation message.
If user clicks on confirm button, the system will display a successful message and updates the details in the database.
3.0 Search member details
The system must allow the user to enter a specific input such as the username for searching purpose.
The system shall display the searching result if found in database.
If the member details cannot be matched in the database, the system will prompt an error message.
The system shall allow the user to reenter the searching details.
4.0 Delete member
The system must allow the user to enter a specific input such as the username for searching purpose.
The system shall display the searching result if found in database.
If the member details cannot be matched in the database, the system will prompt an error message.
The system shall allow the user to reenter the searching details.
The system shall allow the user to delete the selected member membership.
The system shall prompt a confirmation message when the user clicks on the delete button.
The system must be able to update the member status from the database, prompt a successful message and send an email to deleted member email.
Module: Menu Maintenance
Diagram 2.4.2 Menu Maintenance User Requirement
This system must allow users to add new items, update‟s item details and search for existing item details.
System Requirement 1.0 Add new item
The system must allow the user to enter new item details.
The system must be able to generate a new item ID.
The system must validate the details enter by the user.
If the user enters invalid item details, an error message will be prompt and user needs to re-enter the invalid details.
If the item details are valid, the system will prompt a confirmation message.
If user clicks on confirm button, the system will display a successful message and store the details into the database.
2.0 Search item details
The system must allow the user to enter a specific input such as an item ID for searching purpose.
The system shall display the searching result if found in database.
If the item details cannot be matched in the database, the system will prompt an error message.
The system shall allow the user to reenter the searching details.
3.0 Edit item details
The system must allow the user to enter a specific input such as an item ID for searching purpose.
The system shall display the searching result if found in database.
If the item details cannot be matched in the database, the system will prompt an error message.
The system shall allow the user to reenter the searching details.
The system shall allow the user to make changes in the current data displayed on screen such as address, phone and etc.
The system will validate the information that edits by users.
If the user enters invalid information, the system will prompt an error message and user needs to reenter the information.
If the item details are valid, the system will prompt a confirmation message.
If user clicks on confirm button, the system will display a successful message and updates the details in the database.
Module: Food Order
Diagram 2.4.3 Food Order User Requirement
The system allows user to add new order details, update order details, remove an order, check and search for existing order details.
System Requirement 1.0 Add new order
The system must allow the user to enter new order details.
The system must be able to generate a new order ID.
The system will prompt a confirmation message when the user clicks on
“Confirm” button.
If user clicks on confirm button, the system will display a successful message and store the details into the database.
The system shall create a new payment details for each new order stored.
The system will display the order details on kitchen screen.
2.0 Search / View order
The system must allow the user to enter a specific input such as order ID for searching purpose.
The system shall display the searching result if found in database.
If the item details cannot be matched in the database, the system will prompt an error message.
The system shall allow the user to reenter the searching details.
3.0 Edit order details
The system must allow the user to enter a specific input such as order ID for searching purpose.
The system shall display the searching result if found in database.
If the entered details cannot be matched in the database, the system will prompt an error message.
The system shall allow the user to reenter the searching details.
The system shall allow the user to add-in additional order details into the order displayed on screen.
The system will update the details in database when user makes changes on the item details.
The system shall also update the order details screen in the kitchen and also the payment for that order.
The system shall allow the user to make changes in the order display on screen.
The system prohibited user to make changes on the item list states that are shown “Preparing” or “Served”, only items with status “Queuing” can make changes.
4.0 Remove order
The system must allow the user to enter a specific input such as order ID for searching purpose.
The system shall display the searching result if found in database.
If the item details cannot be matched in the database, the system will prompt an error message.
The system shall allow the user to choose which item to delete.
The system prohibited user to make changes on the item list states that are shown “Preparing” or “Served”, only items with status “Queuing” can be make delete.
The system will prompt an error message if the user deletes the item status that shown “Preparing” or “Served”.
The system shall prompt a confirmation message when the user clicks on the delete button.
The system must be able to delete the order record from the database and prompt a successful message.
The system shall also update the order details screen in the kitchen and also the payment for that order.
5.0 Check order status
The system must allow the user to enter a specific input such as order ID for searching purpose.
The system shall display the searching result if found in database.
If the item details cannot be matched in the database, the system will prompt an error message.
The system shall allow the user to reenter the searching details.
Module: Reservation
Diagram 2.4.4 Reservation User Requirement
The system must be able to verify the customer membership, allow user to select seats and time slot availability, update the reservation, send out reservation notification and also remove reservation from the database.
System Requirement 1.0 Verify Membership
The system must allow the user to enter a specific input such as member username for searching purpose.
The system shall display the searching result if found in database.
If the member details cannot be matched in the database, the system will prompt an error message.
The system shall allow the user to reenter the searching details.
The system prohibits customer that is not member to make reservation.
2.0 Select seat & time slot
The system shall display all table status on the screen.
After verification of customer status is successful, the system will display the seat and time slot availability on the screen.
The system shall allow the user to choose the time slot for reservation.
The system shall allow the user to choose the seat for reservation.
3.0 Update Reservation
If the criteria choose by user is not available, the system will prompt an error message.
The system shall allow the user to reselect the reservation details.
If the time slot and seat choose by user is valid, a confirmation message will be prompt on the screen.
If user clicks on confirm button, the system will display a successful message and store the reservation in the database.
4.0 Reservation notification
The system will retrieve the reservation details from the database.
The system will send out a short message service notification to the customer that makes the reservation when the staff clicks on send button.
5.0 Remove Reservation
The system must allow the user to enter a specific input such as member username for searching purpose.
The system shall display the searching result if found in database.
If the member details cannot be matched in the database, the system will prompt an error message.
The system shall allow the user to reenter the searching details.
The system shall allow the user to choose the reservation record to delete.
The system shall prompt a confirmation message when the delete button is clicked.
If the reservation is successfully removed, the system shall update the reservation details in the database.
Module: Payment
Diagram 2.4.5 Payment User Requirement
This system must allow customers to make their fee payment via online (PayPal) or cash payment. This system must also generate a receipt upon the completion of payment.
System Requirement
1.0 Identify Payment Type
The system must allow the user to enter a specific input such as table number, order ID for searching purpose.
The system shall display the searching result if found in database.
If the payment details cannot be matched in the database, the system will prompt an error message.
The system shall allow the user to reenter the searching details.
The system will run 2.0 Calculate Payment function.
The system shall allow the user to choose which types of payment the customer wants to carry out.
If the user chooses cash payment, the system will run 3.0 Calculate Balance function.
If the user chooses payment via online, the customer shall be able to access to their PayPal account via this module.
The system will prompt a warning message if the wrong ID / password is entered for accessing customer Paypal account.
The customer shall be able to make their payment via this system after customer access to their Paypal account successfully.
If Paypal method is selected and the customer Paypal amount is not enough to clear the payment, the system shall cancel the transaction and prompt an unsuccessful message.
The system shall be able to update the customer payment status after the payment is made.
If the payment is successfully made, the system will run 4.0 Generate receipt function.
2.0 Calculate Payment
The system will retrieve the order details from the database.
The system will identify the customer membership status for discount purpose.
The system will calculate the total payment for that order.
The system will display the total payment to be paid on screen.
3.0 Calculate Balance
The system shall allow the user to enter the cash amount paid by the customer.
The system will compare the cash amount received with the actual amount of payment.
The system will prompt an error message if the cash amount paid is lesser than the actual amount of payment.
The system will calculate the balance if the cash amount paid is greater than the actual amount of payment
The system will display the total balance on the screen.
The system will update the customer payment details.
The system will run 4.0 Generate Receipt function.
4.0 Generate Receipt
The system shall be able to retrieve the successful paid payment details from the database.
The system shall allow the user to choose want to print the receipt or export the receipt to softcopy.
5.0 Generate Bill
The system must allow the user to enter a specific input such as table number, order ID for searching purpose.
The system will display the searching payment result on the screen.
The system shall allow the user to print the bill for showing to the customer.
If the payment details cannot be matched in the database, the system will prompt an error message.
Module: Report
Diagram 2.4.6 Report User Requirement
This system must allow users to select 5 choices of report type and print out the report.
System Requirement 1.0 Identify report type
The system shall allow user to choose the report type such as Daily Sales report, Unattended Reservation Report, Member Registration Report, Top 5 Customer Report and Top 5 Sales Report.
The system shall allow user to select the parameter to generate reports such as start date and end date.
The system will validate the parameter select by the user.
The system will prompt an error message if the parameter selected is not valid.
2.0 Retrieve database
The system will retrieve the information based on the details select by the user.
3.0 Generate report
The system will display a report on the screen.
The system shall allow the user to print the report.
The system shall allow the user to export the report to softcopy.
Module: Kitchen Maintenance
Diagram 2.4.7 Kitchen Maintenance User Requirement
This application must allow the user to manage the food preparing list and the food ordered will be arranged according to the algorithm used to improve the efficiency of food preparing.
System Requirement 1.0 Display Food
This application will retrieve the order details from the database.
This application will display the ordered food to prepare on the screen.
2.0 Filter List
This application shall allow user to select the type of filter list “Queue” or
“Dequeue”.
If “Dequeue” filter type is chosen, the kitchen preparing screen will display the food ordering list based on food status and the order taken time only.
If “Queue” filter type is chosen, the kitchen preparing screen will display the food ordering list based on the food status and merge the same type of food item that orders intervals are between 5 minutes.
3.0 Edit Food
This application shall display the food ordered list on screen.
This application shall allow user to change the food status such as from
“Queuing” to “Preparing”.