You are on page 1of 199

Dine Cuiz Restaurant System

By

Law Chen Sheng

SCHOOL OF ARTS AND SCIENCE


TUNKU ABDUL RAHMAN COLLEGE
KUALA LUMPUR
ACADEMIC YEAR
2010/2011

Dine Cuiz Restaurant System

Dine Cuiz Restaurant System (Backend Modules)


By
Law Chen Sheng

Supervisor: Ms. Tham Sin Seen

A project report submitted to the School of Arts and Science


in partial fulfillment of the requirement for the
Bachelor of Science, Campbell University, U.S.A
and
Advanced Diploma in Science.

Division of Computer Science


School of Arts and Science
Tunku Abdul Rahman College
Kuala Lumpur
2010/2011

Copyright - 2010 by Tunku Abdul Rahman College.


All rights served. No part of this project documentation may be reproduced,
stored in retrieval system, or transmitted in any form or by any means without
prior permission of Tunku Abdul Rahman College

Project

ii

Dine Cuiz Restaurant System

Declaration
The project submitted herewith is a result of my own efforts in totality and in every aspect of
the project works. All information that has been obtained from other sources had been fully
acknowledged.

I understand that any plagiarism, cheating or collusion or any sorts

constitutes a breach of College rules and regulations and would be subjected to disciplinary
actions.

_____________________________
Students Name: Law Chen Sheng
Programme: Advanced Diploma in Science (Business Information System)

Project

iii

Dine Cuiz Restaurant System

Acknowledgement
The project success couldnt be achieved without help and encouragement from
various people that directly or indirectly involve in my project.
First and foremost, I am very grateful to my project supervisor, Ms. Tham Sin Seen,
who has continually been giving me the guidance, constant support, encouragement, and
recommendations necessary to ensure that I am always on the right track for this Final Year
Project.
Besides that, I would like to thank my Project team member, Loo Hai Chiang that
helps me out whenever I faced technical difficulties during the whole project progress.
Addition, I would like to thank all my course mates for sharing their precious knowledge and
experience, which helped tremendous during the overall project software development.
Furthermore, thanks to everyone else who has kindly shown their warm support during my
project development. This has been one of the important motivation factors that kept me
going on and striving harder.
Lastly, I would also like to thank my moderator, Ms. Kong Hooi Ming for her
suggestion and further ideas during the project testing. She has enabled me to further improve
the system and make it more feasible and usable in the real world.

Project

iv

Dine Cuiz Restaurant System

Abstract
The purpose of Dine Cuiz Restaurant System is in partial of the requirement for
Bachelor of Science. For the main purpose of Dine Cuiz Restaurant System is to provide a
better experience of overall Restaurant management for Dine Cuiz Restaurant from the front
end Point of sales (POS), to backend management of the restaurant. Most of the restaurant
management system are mainly offline based and contain no other special features but only
POS. Dine Cuiz Restaurant System, not only provide POS, but Online Website, Online
supplier tendering, inventory control, staff maintenance and supplier management which is
all in one package for a restaurant.
Dine Cuiz Restaurant System is a full web based system, 8 main modules have been
implemented in the system. For the front end modules, which are Reservation Module, Order
Module, Payment Module and Table Management Module are handled by my another project
team member Loo Hai Chiang. Where for the Backend modules, contain Inventory Module,
Supplier Tendering Module, Backend Office Maintenance, and Security Module. The Front
end modules, which provide the most function of a POS and some customer web site function
such as reservation. While backend involve more in maintenance, inventory and supplier side
function.
The main development tool used in this project is Visual Studio 2010 and Microsoft
SQL Server 2008 for database. Visual Studio 2010 provides a much robust ASP.net
application development compare to other development tool. The methodology approach
used to accomplish project is using Waterfall Model which is very common in most project
software development. The development phase will be falling into these categories, which are
Analysis, Design, Implementation, Testing and Maintenance from the System Development
Life Cycle, and it is concurrent with the Waterfall model.
The system which is in full web based design developed to provide better experience
for the restaurant management and niches feature such as Tendering module where most of
the other restaurant system had never provided. The final product of the system outcome is
quite satisfying, workable and functional able. As the feature and business logic can be
further improve. Overall, the completion of this final year project has tremendously improved
my programming skill and learnt the important of user perspective, which are essential to
make a system useful and feasible in real world.

Project

Dine Cuiz Restaurant System

Table of Contents
Dine Cuiz Restaurant System (Backend Modules) ....................................................................ii
Declaration ............................................................................................................................... iii
Acknowledgement .................................................................................................................... iv
Abstract ...................................................................................................................................... v
Chapter 1 Project Aims and objectives ...................................................................................... 9
1.1 Introduction .................................................................................................................... 10
1.2 Project Aims and Objectives .......................................................................................... 10
1.3 Summary ........................................................................................................................ 12
Chapter 2 Company Background and Project Scope ............................................................... 13
2.1 Introduction .................................................................................................................... 14
2.2 Company Background ................................................................................................... 14
2.3 Project Scope ................................................................................................................. 15
2.4 Summary ........................................................................................................................ 20
Chapter 3 Project Schedule and Methodology Used ............................................................... 21
3.1 Introduction .................................................................................................................... 22
3.2 Project Schedule............................................................................................................. 22
3.3 Methodology Used ......................................................................................................... 23
3.4 Development Environment ............................................................................................ 25
3.5 Operation Environment .................................................................................................. 26
3.6 Summary ........................................................................................................................ 26
Chapter 4 Linking with seminar .............................................................................................. 27
4.1 Introduction .................................................................................................................... 28
4.2 Linkage and Relationship with Seminar ........................................................................ 28
Chapter 5 Requirement Analysis ............................................................................................. 29
5.1 Introduction .................................................................................................................... 30
5.2 General Description ....................................................................................................... 30

Project

vi

Dine Cuiz Restaurant System

5.3 External Interface Requirements.................................................................................... 33


5.4 User Requirements ......................................................................................................... 35
5.5 System Analysis - Use Case Diagrams .......................................................................... 40
5.6 Use Case Description ..................................................................................................... 45
5.7 Activity Diagram ........................................................................................................... 65
5.8 Summary ........................................................................................................................ 89
Chapter 6 Design...................................................................................................................... 90
6.1 Introduction .................................................................................................................... 91
6.2 Final Class Diagram....................................................................................................... 92
6.3 Sequence Diagram ......................................................................................................... 93
6.4 Data Dictionary ............................................................................................................ 108
6.5 Screen Design .............................................................................................................. 116
6.6 Summary ...................................................................................................................... 138
Chapter 7 Programming ......................................................................................................... 139
7.1 Introduction .................................................................................................................. 140
7.2Programming Language ............................................................................................... 140
7.3 System Database .......................................................................................................... 140
7.4 Programming Issues ..................................................................................................... 141
7.5 Programming Techniques ............................................................................................ 143
7.6 Summary ...................................................................................................................... 147
Chapter 8 Software Testing ................................................................................................... 148
8.1 Introduction .................................................................................................................. 149
8.2System Test Technique ................................................................................................ 149
8.3Test Plan ....................................................................................................................... 151
8.4Summary ...................................................................................................................... 164
Chapter 9 Conclusion ............................................................................................................. 165
9.1 Justification of choice of tools, technique and methodology ....................................... 166

Project

vii

Dine Cuiz Restaurant System

9.2Evaluation against the Project Objectives .................................................................... 166


9.3Project Management Issues .......................................................................................... 167
9.4Evaluation of Project .................................................................................................... 168
9.5Future Project Improvement ........................................................................................ 169
9.6Personal reflection........................................................................................................ 170
References .............................................................................................................................. 172
Appendices ............................................................................................................................. 174
Appendix A: Microsoft Visual SourceSafe 2005 .............................................................. 175
Appendix B: User Guide .................................................................................................... 177
B.1 System Documentation ........................................................................................... 177
B.2 Operation Documentation ....................................................................................... 185

Project

viii

Dine Cuiz Restaurant System

Chapter 1
Project Aims and objectives

Project

Dine Cuiz Restaurant System

1.1 Introduction
In this introductory chapter, project aims and objectives will be explained in detail.
This chapter will further discuss and explain the purposes of the system and the
objective of my project team to develop it.

1.2 Project Aims and Objectives


Dine Cuiz restaurant system has been develop just to serve one main purpose, is
to serve the Restaurant manager, customer and supplier better. Dine Cuiz Restaurant
System able to help a restaurant to survive in a competitive market by improving their
management style and proficiency of the restaurant. For dine-in restaurant management
it able to boosts up the staffs morale and performance in their everyday task. Beside,
with a customer accessible website combine with sophisticated E-commerce, it enables
customers dining experience with Dine Cuiz and also raises the image of the
organization. Beside, Dine Cuiz Restaurant provides better inventory management and
supplier management plus the purchasing and managing the inventory products.
Following are the objectives that need to be achieved.

Overall better management and Information

The Dine Cuiz Restaurant System change the way of managing a restaurant for a
manager and staff. The system eases some daily management works effort of restaurant
such as reservation. System aided will enhance the way of managing inventory by just
few clicks away. Useful reports will be produced by the Dine Cuiz Restaurant system.
These reports help the restaurant manager to make critical decision in any moment.

Cost Reduction

Dine Cuiz Restaurant System able to automate most of the management in the
restaurant. An automation system mean able to greatly reduce the amount of paperwork
that required in the traditional management style in the restaurant. Plus it also able to
reduce number of staff, such as reduces number of front desk staff. Any other
management which include inventory, staff management, supplier management which
are also incurred cost and time can be greatly reduce as well.

Project

10

Dine Cuiz Restaurant System

Competitive Advantages
The development of Dine Cuiz Restaurant System is to increase the restaurant
chances of survival and being competitive in the market. Provide online
reservation, niche features such as tendering that other restaurant that not able to
offer, combing with supplier management for lower procurement price.
Furthermore, better decision making by using the system, and also serve the
customers better.
Other project objectives would be the development process and project:
Analyzing the business requirement and choose appropriate development
methodology and design approach.
Obtain various resources from different area to collect actual fact that able
to aid the system development progress.
Design a highly user friendly system user interface for the end user.
To produce an effective that document progress, tasks and deliverables in
the project.
Perform evaluation for the completed project software by comparing
against the system requirement specification.
Follow the project schedule and complete the system before deadline.
Attempt to use the latest information technologies available in the market
to develop a sophisticated system.

Project

11

Dine Cuiz Restaurant System

1.3 Summary
In this chapter, it show our main project aims and objectives regarding the final
project software and during the whole project development. Many efforts have been
poured in in order to success.

Project

12

Dine Cuiz Restaurant System

Chapter 2
Company Background and
Project Scope

Project

13

Dine Cuiz Restaurant System

2.1 Introduction
This chapter will be describing and discussing the detail about the company
background. The company history, company background, business nature, organization
size will be discussed. Furthermore, the project scope will be discussed as well to show
the actual final system size that being implemented.

2.2 Company Background


DINEcuiz Everyday Restaurant is a local established restaurant since 2005,
located in Setapak, Genting Kelang. Providing fresh food and mouthwatering Chinese
classics, from appetizers to main course will be served. The restaurants customers are
targeted on College student and resident around that area. DINEcuiz Restaurant has an
approximately 20 staffs work in the restaurant, from normal cashier, waiter to manager
level to manage the daily restaurant management. DINEcuiz main vision is to provide
top fine Chinese cuisine at very affordable price as most of our diner could be student.
DINEcuiz business processes are almost the same as the other restaurant.
Customer can just walk-in and dine in straight away during non-peak hour. Beside,
customers have the option to make reservation for future dine-in as well, but they can
only to do so in the restaurant only which mean walk-in reservation or by phone call.
DINEcuiz restaurant provide different session of dining, such as lunch or dinner.
Customers also have the option to choose to dine in different section of the restaurant as
well, such as Ballroom.
For inventory purchasing, the negotiation and purchasing processes are done in
traditional way. The inventory management is done in paperwork as well, which mean
every record changing must do it in traditional way. Beside, DINEcuiz also offer
customer royalty program as well where customer can get their benefit every time they
dine-in in DINEcuiz restaurant.
As the era of Information System getting common nowadays, competitors of the
DINEcuiz Everyday Restaurant has started to implement a computerized system that
can help them to gain more competitive advantages in the market. To overcome this
problem, DINEcuiz Everyday Restaurant has seeks for Information System assistance

Project

14

Dine Cuiz Restaurant System

from an IT firm company to help the restaurant to implement their first computerized
management system. With this strategic decision, DINEcuiz Everyday Restaurant will
gain more market share in that area.
The main function of the new computerized system is able to improve the
overall current management style of the restaurant, hence is to increase the efficiency of
the restaurant operation. Functions such as order system, reservation, inventory control,
staff management, supplier management and so on will be included in the system. This
system will help DINEcuiz Everyday restaurant to survive in current situation and the
business will grow better in future.

2.3 Project Scope


The DINEcuiz Restaurant System contains 8 main modules including sub
modules from each main module. The first 4 front end modules are Reservation module,
Order Module, Payment Module, Table Management Module, and 4 back end modules
are Inventory Module, Supplier Tendering Module, Back End Office Module, and
Security Module.
Back End Office Module basically involves 3 main user maintenance, which
include staff maintenance, customer maintenance, and supplier maintenance. For the
staff maintenance only authorized user such as Admin able to add new staff, edit and
delete a staff. For customer maintenance, customer can perform self-registration at the
DINEcuiz website, update their profile or delete their own profile. The Admin also have
the privilege to add, update and delete customer profile as well. Inside the customer
maintenance sub module, contain another sub module which is Customer RewardPoint
maintenance, this feature allow the customer to collect RewardPoint every time he or
she dine in in our restaurant. Customer also gets to check their latest reward point from
the website. Administrator can check customer RewardPoint and redeem some item
from redeemable item list. The redeemable item can be maintain and update as well. For
supplier maintenance, basically included add, update and delete supplier that can be
done by supplier themselves or Admin.
Supplier Tendering Module covers 3 main sub modules, which are Supplier
maintenance, tendering module, and generate report. Supplier Maintenance provides

Project

15

Dine Cuiz Restaurant System

suppliers self-registration and self-update. For the Tendering Sub Module, it allow
supplier to create new Reverse Auction (Request for Quotation, RFQ) for the suppliers
to bid for particular item. The RFQ invitation can be public tender which is accessible
to every supplier registered at Dine Cuiz Restaurant System or it can be private tender
where only invited supplier able to bid for that product only. Next suppliers that
participate for the bidding event will send quotation to the particular product or item by
sending offering price. Tender monitoring sub-sub modules allow Admin to monitor the
current progress of all tenders. Lastly, Closing tender which provide the Admin whether
to award or disqualified the tender. While for Generate Tendering Report, Admin can
search up past completed tender auction and generate a useful report for that particular
bidding event.
Inventory Module contains 4 sub modules. When supplier send in new products
or items to the restaurant, Add New Inventory sub-module allow the admin to add in
and record down a new inventory item. Track vendor sub-module allows the Admin to
track down the supplier who sold their particular item or product to our restaurant.
Maintain inventory sub-module which allow the user to change some preference of the
item, and the quantity of the inventory can be updated. Lastly would be the Generate
Inventory Report which generates a report that indicates the low quantity level on hand
inventory.
Security Module handles all the security control in the Dine Cuiz Restaurant
System. Security Module contains 4 sub-module, POS (Point of sale) Login, Supplier
Login, Administration Login, and Public Website Login. POS Login and
Administration Login are closely related as it controls the access level between normal
restaurant staff and admin level staff to login into the system. Supplier Login controls
the access level to the Tendering module and provides the password recovery feature.
Public Website Login control the login credential to the Dine Cuiz website before
perform any action at the website. In the first login, it requires activation code to
activate the account and also allow the customer to recover their account password.

Project

16

Dine Cuiz Restaurant System

These four modules, which are Backend Module as mention above will be in
charge by Law Chen Sheng. The four modules are Back End Office Module,
Supplier Tendering Module, Inventory Module and Security Module.

Figure 2.1 Dine Cuiz Restaurant Systems Hierarchical Chart

Project

17

Dine Cuiz Restaurant System

The following 4 back end module hierarchy chart, are handled by Law Chen Sheng.

2.3.1 Inventory Module

Figure 2.2 Inventory Module Hierarchical Chart

2.3.2 Supplier Tendering Module

Figure 2.3 Supplier Tendering Module Hierarchical Chart

Project

18

Dine Cuiz Restaurant System

2.3.3 Backend Office Maintenance Module

Figure 2.4 Backend Office Maintenance Module Hierarchical Chart

2.3.4 Security Module

Figure 2.5 Security Module Hierarchical Chart

Project

19

Dine Cuiz Restaurant System

2.4 Summary
This chapter has described the company background in detail and the project
scope has been briefly explained as well. Dine Cuiz Restaurant System contains 8
modules, handle by 2 project member, each member handle 4 modules. Project scope
has shown clearly the functions by using hierarchical chart.
The front end modules will be handled by Loo Hai Chiang, and the Back End Modules
will be handled by Law Chen Sheng.

Project

20

Dine Cuiz Restaurant System

Chapter 3
Project Schedule and
Methodology Used

Project

21

Dine Cuiz Restaurant System

3.1 Introduction
This chapter will show and discuss about the project schedule. The project
schedule will show the timeline of this project. The methodology used for this project
will be discussed as well. Besides, development environment and operation
environment will be documented later.

3.2 Project Schedule

Figure 3.1 Grant Chart of Dine Cuiz Restaurant System Project

Project

22

Dine Cuiz Restaurant System

3.3 Methodology Used


The methodology approaches used in this project is a Waterfall Model and
Unified Modeling Language (UML) is used for specify, visualize, modify, construct and
document the software structure.
Waterfall Model is most appropriate in our project development because each
process stage is step by step follow by each other. When only make sure each phase is
100% complete and absolutely correct before moving on to the following phase. Some
of the good example is program requirement must be defined concretely before work
start in design based on incorrect requirements, or else the design work effort wasted.
The programs user interface design should be complete before start implementing.
Another drawback of Waterfall Model that needs to be concern is the cost of producing
and approval of each process. So that every phase needs to be ensure it meet the
customer requirement, otherwise more cost will be incurred.

Figure 3.2 Waterfall Models progress flows


In the requirement stage, I had collected the client requirements and the problem they
had faced by using interview method. Other than interview, we also study their
currently way of running their current business by using observation method. The
problems and requirements will be discussed and explained it later.
In design stage, my development team has start design the system user interface based
on the requirements given by the client. After the design has done, the system interface

23

Dine Cuiz Restaurant System

has shown to the client. Demonstration has shown and performs to the client to show
how the system flow actually runs. If there are any problems, the design will be
redefine and re-polish until it up to the user expectation. This stage takes quite a long
time, to make sure the design is solid and have minimum changes in future.
In implementation stage, programming code has started implemented into the system
design. After implementation have complete, the next one verification phase will be
proceeded. Repetitive debugging and self-testing has been done before final testing
done to the client. Our team main goal in this stage is to minimize the chances of
unexpected bugs that might occur during testing.
After testing and debugging has completed, future support will be provided such as
maintenance and future module or function upgrade.
The next approach is UML method that used to produce use case diagrams, class
diagram, activity diagrams and other related diagrams. The UML able to aid maintain
the logic flow of the program and easy to visualize systems architectural blueprints.
One of the advantages of UML is making the project more effective and efficient plus
with time and cost saving. After preparing several of UML diagrams, these able to
provide broader and better logic of the system. Furthermore, the UML models can
promote the success of future enhancement and development.

Project

24

Dine Cuiz Restaurant System

3.4 Development Environment


The diagram below described the software and hardware tools that used to develop Dine
Cuiz Restaurant Systems and overall project and final documentation. Other such as
programming tools, database tools will be defined as well.
Operating System

Microsoft Windows 7 64bit

Platform

Microsoft .NET 4.0

Hardware

Database

Intel Core 2 Duo 2.26GHz


4GB DDR3 SDRAM
500GB SATA HARD DRIVE
Printer
Microsoft SQL Server 2008
Microsoft Visual Studio 2010
Microsoft SourceSafe 2005
Microsoft Office Project 2010
Microsoft Office Visio 2010
Microsoft Office Word 2010
Adobe Photoshop CS4
Microsoft SQL Server

Programming

ASP.NET C#

.NET

Software Tools

Languages
Technologies

Table 3.1 Development Environment Information

Project

25

Dine Cuiz Restaurant System

3.5 Operation Environment

Figure 3.3 Dine Cuiz Restaurant System Architectural Design


Diagram above showing the Dine Cuiz Restaurant architectural design of how the
system operate in harmony, linkage between different hardware equipment.

3.6 Summary
In this chapter, the project schedule is prepared using Microsoft Office Project
2010 and the operation diagram is created by using Microsoft Office Visio 2010. This
two software tools are very powerful and robust to create very useful, effective and easy
understandable diagram. These tools really help me save a lot of time compare to some
other software and diagramming tools.

Project

26

Dine Cuiz Restaurant System

Chapter 4
Linking with seminar

Project

27

Dine Cuiz Restaurant System

4.1 Introduction
This chapter will explain the linkage and relationship between the researched
Seminar and the software project of Dine Cuiz Restaurant System.

4.2 Linkage and Relationship with Seminar


The seminar I researched is E-Procurement Strategy - A brief study of EReverse Auction. This seminar is talking about electronic procurement method that is
commonly used today and study and research are more focus in E-Reverse Auction area.
The Dine Cuiz Restaurant System contain 8 modules, one of the module handle
by Law Chen Sheng is Supplier Tendering Module, which is a system create a reverse
auction event for the supplier to bid for particular item. This module is closely related to
the seminar topic that researched by Law Chen Sheng. Without the seminar researched,
the actual module functionality and business logic might be impossible to achieve.

Project

28

Dine Cuiz Restaurant System

Chapter 5
Requirement Analysis

Project

29

Dine Cuiz Restaurant System

5.1 Introduction
This chapter will describe the system requirements that given by the end user so that the
system able to perform up to the user specification. Inside general description contain
product function, system information, and user problem and user objectives. Besides,
the external interface requirements, functional requirements and non-functional
requirements will be discuss as well.
This chapter will be follow by the system analysis which discusses sets of interacting
entities. System Analysis will include use case diagrams, use case description and
activity diagram. The diagrams mentioned will explain the 4 modules, Inventory
Module, Supplier Tendering Module, Security Module and Backend office maintenance
module which are the back end subsystem.

5.2 General Description


5.2.1 Product Functions
The Dine Cuiz Restaurant System is a system that allows the restaurant manager
to manage the whole restaurant operation from front end to back end. The customers of
the restaurant are also part of the user of this system. Dine Cuiz Restaurant system
provides basic Restaurant Point of sales function such as Ordering, Billing, Table
management and reservation. Other than these core functions which common for a
restaurant management, Dine Cuiz Restaurant System also featuring some other extra
functions for a restaurant management. For instance, purchasings activity which uses
tendering technique. Follow by inventory management, user maintenance that maintains
3 types of users, customers, staff and supplier. Furthermore, Dine Cuiz Restaurant
System has a good security that controls the accessibility to the Dine Cuiz Restaurant
System.

Project

30

Dine Cuiz Restaurant System

5.2.2 User Problem Statement


Tedious of managing the staff and customer paperwork
The staffs of the DINEcuiz restaurant was managed in traditional way, all staff records
are recorded down in paper. As the number of staff increase, maintenance of staff will
require more time and data record might prone to error. Besides, DINEcuiz keep certain
records of the customers. These customers can enjoy some special privileges in
DINEcuiz. As the number of the customers records increase, it becomes problematic to
manage these customers records.
Lack of product information and product information not clear
The customers have some difficulty to obtain information from the DINEcuiz restaurant.
They can only able to obtain information by calling the restaurant or visit the restaurant
outlet.
Inventory Management inconsistent record
The inventories need to be updated every day to keep track the number of inventory to
reorder certain inventory when necessary. Sometime, the staff have accidently record it
wrongly and it cause the inconsistent record between actual unit left of certain inventory
and the records. This make the manager make wrong decision to buy new item, for
instance excessive inventory purchased or not enough stocks for the kitchen.
Slow in produce bill receipt
Most of the bill receipts are printed. But the DINEcuiz Restaurant still produce handwritten receipt. Many things can go wrong here, wrong price, incorrect total sum of
price, wrong items billed and so on. And producing hand-written bill receipt is time
consuming.
Customer making reservation
In a DINEcuiz that without a system, customers need to spend their valuable time to
come to the restaurant to get seats especially during peak hour or holiday season.
Besides, it require customer to walk-in to make reservation or by phone calling.

Project

31

Dine Cuiz Restaurant System

5.2.3 User Objectives


Maintainability
The user will want a system to be easy to operate and easy to maintain. User wanted a
highly maintainability system in order to help them to maintain restaurant related
records, such as staff, customers and suppliers.
Save time save cost
The system must be able to help the end user to save time and save cost in every
possible operation of the restaurant.
Less error
The end user would like to maintain a restaurant in less error that might occur. Such as
billing or taking orders from customers.
Ease of use
Implement a new system require learning curve. Hence, a good system must be easy to
use and learn for the end user. So system is best to stay simple yet able to perform well
up to user requirement.
Enhance customer experience and satisfaction
Customer is part of the user in Dine Cuiz Restaurant System. The implemented system
must be able to enhance the customer overall satisfaction, for instance hassle free of
making reservation online.

Project

32

Dine Cuiz Restaurant System

5.3 External Interface Requirements


5.3.1 User Interface
Screen Layout
The Dine Cuiz Restaurant System is divided into two different portals. There are two
layouts available for the system. First is for staff and supplier users, have a different
layout style. The tendering module, Backend office maintenance, restaurant core
function (POS) will be perform at this layout.
Well for the customers that would like to dine in DINEcuiz Restaurant, the public
website has another different layout of design which solely for customers only.
User layout style standard
The layout style such as background image or color must be consistent. Font style, font
color must be easily readable. For instance, only use dark font in bright background.
User validation
The system able to perform good validation and the error message that prompt by the
system must be understandable by the end user. Pop-up message box alert would be
highly preferable. System also able to validate data input, such as Date, number only
data is compulsory.
Control Standard
Control button style in the system must be consistent, ensure avoid confusion during the
operation of the system.
Security
When an unauthorized user or non-login user try to access the system, the system will
redirect to a page, and display meaningful message to them to tell them they require to
login in order to proceed. A successful login user will see their name on a control panel.

Project

33

Dine Cuiz Restaurant System

5.3.2 Hardware Interfaces


Hardware Standard
The implemented system is hardware independent. Server database can be install in the
same PC platform as long the PC meet the system requirement of Microsoft SQL Server
2008.The system will need a printer to print out some reports and bill receipt.
A router is required if the system need to be connected to an external network and
customer able to access to the website.
Touch screen penal is optional as the system can be performing using touch screen or
normal PC peripheral devices.

5.3.3 Software Interfaces


Operation Tools
The Dine Cuiz Restaurant system can be run on Microsoft Windows Operating System
platform. Besides, .NET Framework 4.0 at least must be installed into the implemented
computers.
Database Tools
If the server is install in the same computer, Microsoft SQL Server 2008 database
management tool must be install as well.
Security Tools
Software based firewall software will be used to protect the webserver from security
threat or unauthorized attack.

Project

34

Dine Cuiz Restaurant System

5.3.4 Communication Interfaces


Web Browser
The Dine Cuiz Restaurant System is a web based system. System can be used by any
supported browser, such as Microsoft Internet Explorer, Mozilla Firefox, Google
Chrome and others. Web Browsers JavaScript must be enabled in order for the system
to perform some function.
Internet Connection
Some of the modules require Internet Connection to perform the function correctly e.g.
sending E-mail
Router or Modem
Router is required if the printer required LAN to connect to the system. Router and
model are also must in order to connect to external network.

5.4 User Requirements


5.4.1 Function Requirements

Supplier Tendering Module


o When an unregistered supplier using Dine Cuiz Restaurant System, for
the first time, they able to register themselves as a supplier user. They
also can update their profile later.
o Admin can create new tender event by creating Request for Quotation
(RFQ). The reverse auction can be public or private auction.
o Admin can review the active tender and admin can choose to cancel the
auction even the auction is not over yet.
o Supplier will be notified for Private Reverse Auction invitation.
o Supplier able to view all Public Reverse Auction/Tender.
o Supplier can send bid price to authorized auction.
o Supplier can only send a price that lower than current lowest price.
o Supplier can view his or her bidding history.

Project

35

Dine Cuiz Restaurant System

o Admin can award or disqualified an end auction.


o Admin can review the completed auction and print out the Tender Log
History report.
o Winning supplier will be notified by an Email or login to Dine Cuiz
Restaurant System.

Back End Office Module


o System can register new staff, update and delete existing staff profile.
o Customer can register themselves at the Dine Cuiz Website and update
or delete their own profile.
o Customer can review their latest RewardPoint.
o Admin can generate report about Customer RewardPoint.
o Admin able to maintain the RewardPoints redeemable item.
o Staff able to redeem item for customer
o Admin able to add new supplier, update or delete existing supplier
records.
o Supplier able to register themselves at Dine Cuiz, and edit their own
profile

Inventory Module
o The Admin can add new inventory that records inventory name,
reference, total unit, unit measurement, reorder level, purchased date and
purchased from which supplier.
o Admin can track the vendor to determine the inventory purchased from
which supplier.
o Inventory records can be modified and update.
o Inventory module support quick item check-out and automatically reduce
the number of inventory.
o When the same inventory has been purchased, the amount of inventory
will be automatically sum up.
o Able to generate Inventory Report that indicates the Low Quantity On
Hand inventory.

Project

36

Dine Cuiz Restaurant System

Security Module
o Control the access level between admin and normal staff.
o Control the suppliers access authorization to the tendering module.
o Control Administration Login.
o Control the Dine Cuiz Public Website access authorization.
o Provide password recovery feature for Supplier and Customer users.

Reservation Module
o Allow registered customer to make online reservation on Dine Cuiz
Website. Reservation confirmation ID will be given to the customer after
successful making a reservation.
o Reservation confirmation ID is provided, combine with date and
reservation session to search the reservation.
o Reservation can be added on site or in the Restaurant by using Walk-in
reservation feature.
o Generate Weekly Reservation Report.

Order Module
o Add new order by the customer.
o Able to show the order that is not paid yet.
o Generate Best-selling food report.

Payment Module
o Create bill payment.
o Print receipt for customer.

Table Management Module


o Maintain table record and update table records in the restaurant.
o Search Table No. in the restaurant.
o Generate Table Report.

Project

37

Dine Cuiz Restaurant System

5.4.2 Non-Function Requirements


Product Requirements

Usability Requirements
o Useful and effective user manual must be provided.
o Minimum learning curve required for using the system.
o Standard and consistent systems Graphical User Interface for minimum
confusion during operate the system
o Meaningful HELP or ERROR message
o Strong business logic

Reliability Requirements
o System must be error free or bug free and minimum system failure
o System must be perform the service up to the system specification and
user requirement
o Systems web server must be 24/7 available except for maintenance
session.

Efficiency Requirements
o System able to perform transaction at very low response time.

Portability Requirements
o System able to be implemented on most Windows Operating System
o Support wide range of browser to operate the web based system.

Organization Requirements

Process Standard
o Final Report must define the development process clearly.
o Development of project is done stage by state
o Perform extensive researches and fact gathering before project
initialization.

Project

38

Dine Cuiz Restaurant System

Implementation Requirement
o ASP.NET C# language will be the main programming language to
develop the system.
o Microsoft SQL Server 2008 will be served as a Database for the system.
o User Training and user guide is provided.
o Various Microsoft Office Products is used to complete the Project Final
Report.

External Requirements

Privacy and Safety Requirements


o The customers privacy is concern. Customers records that store in the
database are well protected and not accessible to unauthorized personnel.
o Database records are highly protected. Sensitive data only accessible to
authorized personnel only.

Legislative Requirements
o The development tools that used to develop the system must be legit.
o System will not violate the Law of Malaysia.

Project

39

Dine Cuiz Restaurant System

5.5 System Analysis - Use Case Diagrams


5.5.1 Overview Use Case Diagrams of Dine Cuiz Restaurant
System

Figure 5.1 Overview Use Case Diagram of Dine Cuiz Restaurant System

Project

40

Dine Cuiz Restaurant System

5.5.2 Use Case Diagram of Supplier Tendering Module

Figure 5.2 Use Case Diagram of Supplier Tendering Module

Project

41

Dine Cuiz Restaurant System

5.5.3 Use Case Diagram of Backend Office Module

Figure 5.3 Use Case Diagram of Backend Office Module

Project

42

Dine Cuiz Restaurant System

5.5.4 Use Case Diagram of Inventory Module

Figure 5.4 Use Case Diagram of Inventory Module

Project

43

Dine Cuiz Restaurant System

5.5.5 Use case of Security Module


Security Module

Request
forgotten
password
<<extend>>
Change
password

Login as
supplier
Supplier

<<extend>>
<<extend>>
Login as
Administrator

Change
password

Admin

Login as normal
staff

Request
forgotten
password
<<extend>>

Staff

Login as
customer
<<extend>>
Change
password
<<extend>>
<<extend>>

Change secret
answer

Change secret
question

Figure 5.5 Use Case Diagram of Security Module

Project

44

Customer

Dine Cuiz Restaurant System

5.6 Use Case Description


5.6.1 Use Case Description of Supplier Tendering Module
Use case name:

Supplier Tendering Module

Brief Description:

This use case enable Admin to Create new reverse auction, monitoring
reverse auction, cancel reverse auction, view closing tender, disqualify
tender, view tender history, generate Tender Log Report
Supplier able to enter Bid, view own bidding history and view
awarded auction

Actor

Admin, Supplier

Main Flow:
Actor Action

System Response
1. Display Admin Home Page

2. Admin select Supplier Tendering

3. Display sub menu: request for tender, view


all public tender, view all private tender, view
all tender history, number of closing tender
4. Logout
5. Display Public Tender Home Page

6. Supplier select Register as supplier


7. Supplier Login into Supplier Tendering
Module
8. Display sub menu: View all Open Tenders,
Number of private tender, Update Your Profile
If the sub module selected is Request for tender, the S-1 Request for tender sub flow is
performed.
If the sub module is View All Public Tender, the S-2 View All Public Tender sub flow is
performed.
If the sub module is View All Private Tender, the S-3 View All Private Tender sub flow is
performed.
If the sub module is View All Tender History, the S-4 View All Tender History sub flow is
performed.
If the sub module is Number of closing tender, the S-5 Number of closing tender sub flow is
performed.
If the sub module is Register as supplier, the S-6 Register as supplier sub flow is performed.

Project

45

Dine Cuiz Restaurant System

If the sub module is View All Open Tender, the S-7 View All Open Tender sub flow is
performed.
If the sub module is Number of private tender, the S-8 Number of Private Tender sub flow is
performed.
If the sub module is Update Your Profile, the S-9 Update your profile sub flow is performed.
S-1 Request for tender
System will display a form for the admin to input the tender criteria. Admin will fill in the
required information and select Private or Public Tender. By pressing Upload button, System
will immediately verify the data entered and prompt out message indicated is uploaded
successfully.

S-2 View All Public tender


System will retrieve the entire public tender records that are still active and populate the
records in a Data Grid View. Admin can select a row of record, and press View button, it will
redirect to another page and display that tender in detail. Admin has an option that can cancel
the auction right away.

S-3 View All Private Tender


System will retrieve the entire private tender records that are still active and populate the
records in a Data Grid View. Admin can select a row of record, and press View button, it will
redirect to another page and display that tender in detail. Admin has an option that can cancel
the auction right away.

S-4 View All Tender History


System will retrieve the entire Completed tender and populate the records in a Data Grid View.
Admin can choose to change the records to Disqualified auction and vice versa. The
Completed Tender records can be filter by date range, by input Start date and end date. When a
tender record is selected, the system will display the tender record in detail and Admin has an
option to generate that Tender Bidding Log History Report.

S-5 Number of closing tender


System will display the tender both private and public that awaiting the Admin to close the
tender by awarding or disqualified the tender. When a supplier has been awarded, the system
will notify the supplier by sending an e-mail.

Project

46

Dine Cuiz Restaurant System

S-6 Register as supplier


System will display a form for the supplier to input new supplier information. Supplier will fill
in the required field. By pressing the Register button, system will perform validation and make
sure the data is valid and prompt out message indicated is the registration is successfully.

S-7 View All Open Tender


System will retrieve the entire active Open tenders and populate the records into a Table Grid
view. Supplier will select a tender record, and press Bid button. System will redirect to a page
and display the tender in more detail. Supplier enters a bid price and press submits, a pop-up
message will indicate if the bidding is successful.

S-8 Number of Private Tender


System will retrieve Private tenders that Admin has invited the login supplier and populate the
records into a Table Grid view. Supplier will select a tender record, and press Bid button.
System will redirect to a page and display the tender in more detail. Supplier enters a bid price
and presses submit, a pop-up message will indicate if the bidding is successful.

S-9 Update your profile


System will redirect to a Supplier profile update page, the profile of the supplier will display in
fields. After completing editing, and press update button, the system will validate the data
entered and message will be prompt if is successfully updated. The password can be change at
this section as well.
Alternative Flow:
A-1 step S-1 If the RFQ Reference is exist
-

Display RFQ Reference exist; please choose an alternative RFQ reference


name".

A-2 step S-1 If the Title name exist


-

Display Title exist, please choose alternative.

A-3 step S-2 If no record found


-

Data Grid Table will not display

A-4 step S-3 If no record found


-

Data Grid Table will not display

View button disabled

A-5 step S-4 If no record found

Project

47

Dine Cuiz Restaurant System

Data Grid Table will not display

View button disabled

A-6 step S-4 If start date later than end date


-

Validation message will be shown

A-7 step S-5 If no record found


-

Data Grid Table will not display

Award button disabled

A-8 step S-6 If validation return error


-

Validation message will be shown

A-9 step S-7 If no record found


-

Data Grid Table will not display

Bid button disabled

A-10 step S-8 If no record found


-

Data Grid Table will not display

Award button disabled

A-11 step S-9 If validation return error


-

Validation message will be shown

5.6.2 Use Case Description of Inventory Module


Use case name:

Inventory Module

Brief Description:

This use case enable Admin to create new inventory, update inventory,
item taken out, and generate low inventory report, track supplier

Actor

Admin

Main Flow:
Actor Action

System Response
1. Display Admin Home Page

2. Admin select Inventory Main Page


3. Display sub menu: View All Inventory, Add
New Inventory, Item Taken Out button,
Generate

Low

Inventory

Item

Report,

Number Link Low Level Inventory


If the sub module selected is View All Inventory, the S-1 View All Inventory sub flow is
performed.

Project

48

Dine Cuiz Restaurant System

If the sub module is Add New Inventory, the S-2 Add New Inventory sub flow is performed.
If the sub module Item is Taken Out button, the S-3 Item Taken Out button sub flow is
performed.
If the sub module is Generate Low Inventory Item Report, the S-4 Generate Low Inventory
Item Report is performed.
If the sub module is Number Link Low Level Inventory, the S-5 Number Link Low Level
Inventory
S-1 View All Inventory
System will retrieve entire records of inventory from the database and populate into a data grid
table on page load. Admin can click Filter Low Inventory Level button to retrieve the
inventory that is lower than reorder level. The inventory record can be filter by Inventory
Number or Inventory Name. When Admin select a record and press Edit button, it will redirect
to a page and display that inventory record in detail.
When Admin press update inventory, edited field will be updated and prompt a successful
message.
When Admin Press Buy New Inventory, a panel will display, Admin need to enter buy in
Quantity, Date of purchased and bought from which supplier, and press Add Inventory button
and message will be prompt to indicate quantity has been added.
When Delete button is press, the inventory record will be deleted.
When Locate Supplier button is click, the page will redirect to a Supplier profile information
page.

S-2 Add New Inventory


System will provide a form for Admin to enter new inventory. Admin will fill in the required
fill. When Insert Inventory is press, system will perform validation of the input data and
message will be prompt to indicate insert successful.

S-3 Item Taken Out


System will require the Admin to choose the inventory from the drop down list, and enter the
amount of unit taken or check out from the inventory. When Item Taken Out button is press, a
successful message will be prompt.

S-4 Generate Low Inventory Item Report


When the Admin click the Generate Low Inventory Item Report button, a report will be
generated that show the list of inventory that lower than the reorder level.

Project

49

Dine Cuiz Restaurant System

S-5 Number Link Low Level Inventory


When the link is clicked, the page will redirect to a page, during page load the system will
retrieve entire records that total unit is lower than the reorder level, the records are populate
into the data grid view table. A record is selected, and press Edit button and page will redirect
and display that inventory record in detail.

Alternative Flow:
A-1 step S-1 If the inventory number exist when Update inventory
-

Display Inventory Number Exist!"

A-2 step S-1 If no inventory record found


-

Data Grid Table will not display

A-3 step S-2 If the inventory number exist when Add New inventory
-

Display Inventory Number Exist!"

A-4 step S-3 If the item check-outs unit is more than the current level.
-

Display Inventory Level Too Low for the Item need to be taken!

5.6.3 Use Case Description of Backend office module (Staff


Maintenance)
Use case name:

Backend office module - Staff Maintenance

Brief Description:

This use case enable Admin to register new staff, edit staff and delete
staff, search staff

Actor

Admin

Main Flow:
Actor Action

System Response
1. Display Admin Home Page

2. Admin select Staff Maintenance

3. Display Staff Maintenance and Staff Records


in data grid view,
4. Display sub module Search Staff, Edit Staff,
Add New Staff

If the sub module selected is Add New Staff, the S-1 Add New Staff sub flow is performed.
If the sub module is Edit Staff, the S-2 Edit Staff sub flow is performed.
If the sub module Item is Search Staff, the S-3 Search Staff button sub flow is performed.

Project

50

Dine Cuiz Restaurant System

S-1 Add New staff


System will display a form for Admin to enter new staff.
Admin fill in required field
Admin Press Register
System performs data validation and prompt message to indicate update successful.

S-2 Edit Staff


Redirect to a page and display the staff record in detail with editable fields.
Admin update staff records fields
Admin press Update button and system perform data validation and prompt a message that
indicate update successfully.
Admin able to delete staff if not update record by pressing Delete button.

S-3 Search staff


Admin required to enter Staff Name or Staff User ID as search criteria
Admin press search and system will retrieve the staff record that match with the search criteria.
Alternative Flow:
A-1 step S-1 If the staffs email exist
-

Display Email exist, Please Choose an alternative."

A-2 step S-1 If staff user ID exist


-

Display User ID Exist! Please choose an alternative"

A-3 step S-2 If the data validation return error


-

Message will be prompt and require the Admin to change

A-4 step S-3 If no record found


-

Project

The data grid view table will not show.

51

Dine Cuiz Restaurant System

5.6.4 Use Case Description of Backend office module (Supplier


Maintenance)
Use case name:

Backend office module Supplier Maintenance

Brief Description:

This use case enable Admin to edit and delete existing supplier

Actor

Admin

Main Flow:
Actor Action

System Response
1. Display Admin Home Page

2. Admin

select

Tendering

Home

Page

3. Display sub module: request for tender, view


all public tender, view all private tender, view
all tender history, number of closing tender,
View All Supplier
5. System retrieve all supplier records

4. Admin select View All Supplier

6. System display sub modules search supplier,


edit supplier

If the sub module selected Search supplier, the S-1 Search supplier sub flow is performed.
If the sub module is edit supplier, the S-2 edit supplier sub flow is performed.

S-1 Search Supplier


System will require Admin to enter Registered Name or Supplier User ID as search criteria.
Admin press search and system will retrieve the supplier record that match with the search
criteria and populate into the Data Grid View.

S-2 Edit Supplier


Redirect to a page and display the supplier record in detail with editable fields.
Admin update supplier records fields
Admin press Update button and system perform data validation and prompt a message that
indicate update successfully.
Admin able to delete supplier record if not intend to edit record by pressing Delete button.

Alternative Flow:

Project

52

Dine Cuiz Restaurant System

A-1 step S-2 If the supplier branch email exist


-

Display Email exist, Please Choose an alternative."

A-2 step S-2 If supplier user ID exist


-

Display User ID Exist! Please choose an alternative"

A-3 step S-2 If the data validation return error


-

Message will be prompt and require the Admin to change

A-4 step S-1 If no record found


-

5.6.5

Use

The data grid view table will not show.

Case

Description

of

Backend

office

module

(Customer Maintenance - Registration)


Use case name:

Project

Backend office module (Customer Maintenance - Registration)

53

Dine Cuiz Restaurant System

Brief Description:

This use case enable customer to register themselves at Dine Cuiz


Website
Customer

Actor
Main Flow:
Actor Action

System Response
1. Display Public Home Page

2. Customer select Member Login

3. Display

sub

module,

Login,

retrieve

password, register
4. Customer Select Registration

5. System Redirect to Customer Registration


Form page

6. Customer field in required field


7. Press Register button
8. Perform Data Validation
9. Register successful and prompt successful
message, send activation code to registered email.
Alternative Flow:
A-1 step 8 If the customers email exist
-

Display Email exist, Please Choose an alternative."

A-2 step 8 If customer user ID exist


-

Project

Display User ID Exist! Please choose an alternative"

54

Dine Cuiz Restaurant System

5.6.6

Use

Case

Description

of

Backend

office

module

(Customer Maintenance Edit Customer Profile)


Backend office module (Customer maintenance Edit customer

Use case name:

profile)
Brief Description:

This use case enable customer to update their profile after login

Actor

Customer

Main Flow:
Actor Action

System Response
1. Display Public Home Page

2. Customer select Member Login

3. Display

sub

module,

Login,

retrieve

password, register
4. Customer Enter User ID and Password
5. System Validate User ID and Password
6. System display sub module Edit Profile,
Reservation, RewardPoint

7. Customer choose Edit Profile

9. Customer enter and change profile

8. System redirect and show edit profile page

10. Customer click Update


11. System verify data enter
12. Update into database, prompt message for
update successful
Alternative Flow:
A-1 step 8 If the customers email exist
-

Display Email exist, Please Choose an alternative."

A-2 step 8 If customer user ID exist


-

5.6.7

Use

Display User ID Exist! Please choose an alternative"

Case

Description

of

Backend

office

(Customer Maintenance Delete Customer Profile)

Project

55

module

Dine Cuiz Restaurant System

Use case name:

Backend office module (Customer maintenance Edit customer


profile)

Brief Description:

This use case enable customer to delete their profile after login

Actor

Customer

Main Flow:
Actor Action

System Response
1. Display Public Home Page

2. Customer select Member Login

3. Display

sub

module,

Login,

retrieve

password, register
4. Customer Enter User ID and Password
5. System Validate User ID and Password
6. System display sub module Edit Profile,
Reservation, RewardPoint

7. Customer choose Edit Profile

8. System redirect and show edit profile page


9. Customer press Delete
10. System delete the customer profile from
database

5.6.8

Use

Case

Description

of

Backend

office

module

(Customer Maintenance Check RewardPoint)


Use case name:

Backend office module (Customer maintenance Check


RewardPoints)

Brief Description:

Project

This use case enable customer check RewardPoints after login

56

Dine Cuiz Restaurant System

Actor

Customer

Main Flow:
Actor Action

System Response
1. Display Public Home Page

2. Customer select Member Login

3. Display

sub

module,

Login,

retrieve

password, register
4. Customer Enter User ID and Password
5. System Validate User ID and Password
6. System display sub module Edit Profile,
Reservation, RewardPoint

7. Customer choose RewardPoints

8. System redirect and their latest RewardPoints

5.6.9 Use Case Description of Backend office module (Redeem


maintenance)
Use case name:

Backend office module Redeem maintenance

Brief Description:

This use case enable Admin maintain the redeemable item

Actor

Admin

Main Flow:
Actor Action

Project

System Response

57

Dine Cuiz Restaurant System

1. Display Admin Home Page


2. Admin select Redeem Maintenance
3. Retrieve and display list of redeemable item
in grid view, sub module Add new item, edit
item.
If the sub module selected Add new item, the S-1 Add New Item sub flow is performed.
If the sub module is edit item, the S-2 Edit Item sub flow is performed.

S-1 Add New Item


System will require Admin to enter new Item Name and the point required for the item able to
redeem from the customer
Admin press Add button and system perform data validation and prompt a message that
indicates the item insert successfully.

S-2 Edit Item


Admin will need to edit the field (Item Name and Point Required) shown on below grid view
Admin press Update button and system perform data validation and prompt a message that
indicate update successfully.
Alternative Flow:
A-1 step S-1 If the Item name exist
-

Display Redeem Item Name exists!

A-2 step S-2 If the Item name exist


-

Display Redeem Item Name exists!

5.6.10 Use Case Description of Backend office module (Redeem


Item and Check RewardPoints)
Use case name:

Backend office module Redeem Item

Brief Description:

This use case enable Admin or Staff Redeem Item for customer

Actor

Admin, Staff

Main Flow:
Actor Action

System Response
1. Display Admin Home Page

2. Admin

select

Customer

RewardPoint

Project

58

Dine Cuiz Restaurant System

3. Display module, Search customer, redeem


item, generate RewardPoint Report
If the sub module selected Search Customer, the S-1 Search Customer sub flow is performed.
If the sub module is redeem item, the S-2 Redeem Item sub flow is performed.
If the sub module is Generate RewardPoints Report, the S-3 Generate RewardPoint Report is
performed
S-1 Search Customer
System will require Admin to enter customers User ID
System search the customer from the database based on customer User ID
System will Display Customer Name, Points available, Redeemed, Points Expired

S-2 Redeem Item


Admin select redeemable item from drop down list
Admin press redeem button, If customers RewardPoints is sufficient, item will be redeemed
successfully and prompt a successful message.

S-3 Generate RewardPoint Report


Admin have the option to generate the report based on the RewardPoint of Redeemed point,
with more than (>) the number entered
Admin press Generate, RewardPoints Generate will based on the criteria
Alternative Flow:
A-1 step S-1 If the user ID not found
-

Display User ID not exists!

A-2 step S-2 If the total RewardPoint not enough for redeem
-

Project

Display Customer total reward points insufficient!

59

Dine Cuiz Restaurant System

5.6.11 Use Case Description of Security module (Customer


Login)
Use case name:

Security Module Customer First Login

Brief Description:

This use case show the logic flow of the first login

Actor

Customer

Main Flow:
Actor Action

System Response
1. Display Public Home Page

3. Display Login Panel

2. Customer select Member Login


4. Enter User ID and Password

5. Validate Used ID and Password


6. Display Customer Account activate
7. Customer Enter activation code
8. System Validate Activation Code
9. Account Validate Successfully
10. Display Login Page
11. Customer

Enter

User

ID

and

Password
12. System Validate User ID and Password
13. Login into system
14. System display sub module Edit Profile,
Reservation, RewardPoint
Alternative Flow:
A-1 step 8 : If activation code incorrect
-

Display The verification code is not correct. Please check.

A-2 step 5:If user ID not found


-

Display Wrong username!

A-3 step 5: If password not correct


-

Display Wrong Password!

5.6.12 Use Case Description of Security module (Customer


Password Retrieval)

Project

60

Dine Cuiz Restaurant System

Use case name:

Security Module Customer Password Retrieval

Brief Description:

This use case show how customer password retrieval proceed

Actor

Customer

Main Flow:
Actor Action

System Response
1. Display Public Home Page

2. Customer select Member Login

3. Display

sub

module,

Login,

retrieve

password, register
4. Customer select Password Retrieval
5. System redirect to password recovery page

6. Customer enter user ID

7. System Validate User ID


8. System Prompt for Secret Question and
Secret Question

9. Customer select Secret question and


10. System Validate Secret Answer and Secret

enter secret answer

Password
11. Password send to registered e-mail
Alternative Flow:
A-1 step 7 : If user ID not found
-

Display User ID does not exist!

A-2 step 10:If secret question not correct


-

Display Question not correct

A-3 step 10: If password not correct


-

Display Answer not correct!

5.6.13 Use Case Description of Security module (Customer


change password)
Use case name:

Security module (Customer Change password)

Brief Description:

This use case enable customer change password after login

Actor

Customer

Project

61

Dine Cuiz Restaurant System

Main Flow:
Actor Action

System Response
1. Display Public Home Page

2. Customer select Member Login

3. Display

sub

module,

Login,

retrieve

password, register
4. Customer Enter User ID and Password
5. System Validate User ID and Password
6. System display sub module Edit Profile,
Reservation, RewardPoint

7. Customer choose Edit Profile

8. System Redirect to Edit Profile page and


display module: Change Password

9. Customer select Change Password

11. Customer enter old password, new


password and confirm new password

10. System prompt for Old Password, New


Password, Confirm New Password

12. System validate old password, new password


and confirm new password
13. Password change and update to the database
Alternative Flows:
A-1 step 11: If old password not correct
-

Display Incorrect old password

A-2 step 11: If new password and confirm new password not match
-

Display Password not match!

5.6.14 Use Case Description of Security module (Supplier Login


and Password Retrieval)
Use case name:

Security Module Supplier Login and Password Retrieval

Brief Description:

This use case show how the flow of supplier login and password
retrieval

Actor

Supplier

Main Flow:
Actor Action

System Response
1. Display Tender Public Home Page

Project

62

Dine Cuiz Restaurant System

2. Display

login,

sub

module

Password

Recovery
If the sub module selected Supplier Login, the S-1 Supplier Login sub flow is performed.
If the sub module selected Password Recovery, the S-1 Password Recovery sub flow is
performed.
S-1 Supplier Login
Supplier enter User ID and Password
System validate User ID and Password
Supplier Login into the system and redirect to Tendering Home Page

S-2 Password Recovery


Supplier enter user ID
System search for supplier User ID
System send the recovered password to the Registered Branch e-mail
Alternative Flow:
A-1 step S-1 : If user ID not found
-

Display Invalid User ID!

A-2 step S-1:If password not correct


-

Display Wrong Password

A-3 step S-2: If user ID not found


-

Display User ID does not exist!

5.6.15 Use Case Description of Security module (Change Secret


Question and Secret Answer)
Use case name:

Security module (Change Secret Question and Secret Answer)

Brief Description:

This use case enable customer change secret question and answer

Actor

Customer

Main Flow:
Actor Action

System Response
1. Display Public Home Page

2. Customer select Member Login

3. Display

sub

module,

Login,

retrieve

password, register
4. Customer Enter User ID and Password

5. System Validate User ID and Password

Project

63

Dine Cuiz Restaurant System

6. System display sub module Edit Profile,


Reservation, RewardPoint

7. Customer choose Edit Profile

9. Customer select New Secret Question 8. System Redirect to Edit Profile page
and Secret Answer

10. System validate


11. New Secret Question and New Secret Answer
updated into database

Project

64

Dine Cuiz Restaurant System

5.6.16 Use Case Description of Security module (Staff Login)


Use case name:

Security Module Staff Login

Brief Description:

This use case show how the flow of staff login

Actor

Staff, Admin

Main Flow:
Actor Action

System Response
1. Display Dine Cuiz Restaurant System Main
Page
2. Display staff login module

3. Supplier Enter User ID and Password

4. System Validate User ID and Password


5. System authorized access level of the user
If the access level of staff is Admin, the S-1 Admin Access Level Login sub flow is performed.
If the sub access level of staff is Cashier or Waiter, the S-2 Normal Staff Access Level Login
sub flow is performed.
S-1 Admin Access Level Login
Login into Dine Cuiz Restaurant System
System Redirect to Administrator Home Page

S-2 Password Recovery


Login into Dine Cuiz Restaurant System
System Redirect to POS Main Page

Alternative Flow:
A-1 step 4: If user ID not found
-

Display Invalid User ID!

A-2 step 4 :If password not correct


-

Display Wrong Password

5.7 Activity Diagram

Project

65

Dine Cuiz Restaurant System

5.7.1 Activity Diagram of Supplier Tendering Module (Request


for tender)
Admin

System

Display
Request for Tender
form screen

Request for Tender

Enter
Request for Tender
criteria

PrivateTender

PublicTender

Verify Tender Criteria

[invalid]
[valid]
New Tender Created
And Uploaded

Figure 5.6 Activity Diagram of Supplier Tendering Module (Request for tender)

5.7.2 Activity Diagram of Supplier Tendering Module (Enter Bid)

Project

66

Dine Cuiz Restaurant System

Figure 5.7 Activity Diagram of Supplier Tendering Module (Enter Bid)

Project

67

Dine Cuiz Restaurant System

5.7.3 Activity Diagram of Supplier Tendering Module (Award or


Disqualify supplier)

Figure 5.8 Activity Diagram of Supplier Tendering Module (Award or disqualify


supplier)

Project

68

Dine Cuiz Restaurant System

5.7.4 Activity Diagram of Supplier Tendering Module (View and


cancel Reverse Auction)
Admin

System

View Active Tender

Prompt for Private tender


Or Public tender

Select Tender Type

PrivateTender

PublicTender

Retrieve active
Tender records based
on tender type

Select available Tender


Display selected
active tender
In detail
Delete Tender

No

Yes

Tender cancel and


deleted from database

Figure 5.9 Activity Diagram of Supplier Tendering Module (View and cancel Reverse
Auction)

Project

69

Dine Cuiz Restaurant System

5.7.5 Activity Diagram of Supplier Tendering Module (Generate


Tender Log Report)

Figure 5.10 Activity Diagram of Supplier Tendering Module (Generate Tender Log
Report)

Project

70

Dine Cuiz Restaurant System

5.7.6 Activity Diagram of Supplier Tendering Module (Register


as new supplier)
Customer

Register as new
supplier

System

Display
Register new Supplier
form

Enter new supplier


information

Verify new supplier


information

[invalid]
[valid]

New customer added


To the database

Figure 5.11 Activity Diagram of Supplier Tendering Module (Register as new customer)

Project

71

Dine Cuiz Restaurant System

5.7.7 Activity Diagram of Supplier Tendering Module (Supplier


Update Profile)

Figure 5.11 Activity Diagram of Supplier Tendering Module (Register as new customer)

Project

72

Dine Cuiz Restaurant System

5.7.8 Activity Diagram of Backend Office Module (Search,


Update and delete Staff)
Admin

System

Retrieve all staff


records

View Staff

Filter by

Filterby
StaffUserID
Filterby
StaffName

Enter
Staff Name

Enter Staff
User ID

Retrieve staff record


Based on searching

Nofilter

Select a staff record

Display selected
Staff record
In detail

Further action
No
DeleteStaff

Selected staff record


Delete from database

Updatestaff

Modify and update


Staff record
Verify data enter

[invalid]
[valid]

Staff record updated

Figure 5.12 Activity Diagram of Backend Office Module (Search, Update and delete
Staff)

Project

73

Dine Cuiz Restaurant System

5.7.9 Activity Diagram of Backend Office Module (Add Staff)

Figure 5.13 Activity Diagram of Backend Office Module (Add Staff)

Project

74

Dine Cuiz Restaurant System

5.7.10 Activity Diagram of Backend Office Module (Register


customer)

Figure 5.14 Activity Diagram of Backend Office Module (Register as customer)

Project

75

Dine Cuiz Restaurant System

5.7.11 Activity Diagram of Backend Office Module (Edit or


delete customer)

Figure 5.15 Activity Diagram of Backend Office Module (Self update, delete customer)

Project

76

Dine Cuiz Restaurant System

5.7.12 Activity Diagram of Backend Office Module (Admin - Edit


or delete customer)

Figure 5.16 Activity Diagram of Backend Office Module (Admin edit, delete customer)

Project

77

Dine Cuiz Restaurant System

5.7.13 Activity Diagram of Backend Office Module (Maintain


Redeemable Item)

Figure 5.17 Activity Diagram of Backend Office Module (Admin edit, delete customer)

Project

78

Dine Cuiz Restaurant System

5.7.14 Activity Diagram of Backend Office Module (Redeem item


and Check Customer RewardPoints)
Admin/Staff

System

Display
Redeem Item main page

Redeem Item

Enter Customer User ID

Search User ID

[invalid]

Further action

No

[valid]

Display customer name


Customers RewardPoints
Customers RedeemedPoints

RedeemItem

Select Redeem Item


Module

Display list
Of redeemable item

Display
Redeemable Items
Require point

Select a
redeemable Item

Press Redeem
Validate Customer available
RewardPoints
Generate
Customers Reward Points
Report

[invalid]

Display Insufficient
RewardPoints

Enter Criteria

[enoughpoint]

Item Redeemed
Customer
RewardPoints Deducted

Prompt for Report Criteria


RewardPoints and RedeemedPoints

Generate Customer RewardPoints


Report

Figure 5.18 Activity Diagram of Inventory Module (Add new Inventory)

Project

79

Dine Cuiz Restaurant System

5.7.15 Activity Diagram of Inventory Module (Add New


Inventory)

Figure 5.19 Activity Diagram of Inventory Module (Add new Inventory)

Project

80

Dine Cuiz Restaurant System

5.7.16 Activity Diagram of Inventory Module (Update, delete


Inventory)

Figure 5.20 Activity Diagram of Inventory Module (Update, delete Inventory)

Project

81

Dine Cuiz Restaurant System

5.7.17 Activity Diagram of Inventory Module (Quick Inventory


check-out)

Figure 5.21 Activity Diagram of Inventory Module (Quick Inventory Check Out)

Project

82

Dine Cuiz Restaurant System

5.7.18 Activity Diagram of Inventory Module (Generate Low


Level Inventory Report)

Figure 5.22 Activity Diagram of Inventory Module (Generate Low Level Inventory
Report)

Project

83

Dine Cuiz Restaurant System

5.7.19 Activity Diagram of Security Module (Customer Change


Password)
Customer

System

Change Password

Display customer profile

Select change password

Enter old password


New password
Confirm new password

Prompt for old password


New password
Confirm new password

Verify Old Password

[invalid]

[valid]

Compare New Password


And Old Password

[invalid]

[valid]

Password updated
To the database

Figure 5.23 Activity Diagram of Security Module (Customer change password)

The password changer activity is almost the same for the supplier and staff. Therefore,
some activity password changer for the supplier and staff is skipped.

Project

84

Dine Cuiz Restaurant System

5.7.20 Activity Diagram of Security Module (Customer Request


forgotten Password)

Figure 5.24 Activity Diagram of Security Module (Customer Request forgotten


Password)

Project

85

Dine Cuiz Restaurant System

5.7.21 Activity Diagram of Security Module (Change Secret


Question and Secret Answer)

Figure 5.25 Activity Diagram of Security Module (Customer Request forgotten


Password)

Project

86

Dine Cuiz Restaurant System

5.7.22 Activity Diagram of Security Module (Staff Login


Access Level)

Figure 5.26 Activity Diagram of Security Module (Staff Login Access Level)

Project

87

Dine Cuiz Restaurant System

5.7.23 Activity Diagram of Security Module (Supplier Login)

Figure 5.27 Activity Diagram of Security Module (Supplier Login)

Project

88

Dine Cuiz Restaurant System

5.8 Summary
This chapter has stated all the user requirements requested by the end user and the
requirements need to be following to ensure the final system able to meets the user
expectation. Where the user requirements require more effort or unable to deliver before
the deadline, the project scope will be narrow down.
One of the few problems during system development is regarding the non-functional
requirements, which is the Efficiency requirements, where the development
environment and the operation environment is vary, so the system efficiency and the
performance cannot be guaranteed.
Besides, many problems faced during producing the use case diagram and use case
description. By refer from online resources and recall what I learnt in the college, use
case diagram and use case descriptions problem solved but required longer time.
Most of the important major process of the system handle by Law Chen Sheng, has
explain in the activity diagram, while some minor and repetitive similar activities are
not explain.

Project

89

Dine Cuiz Restaurant System

Chapter 6
Design

Project

90

Dine Cuiz Restaurant System

6.1 Introduction
In this chapter, a final class diagram, sequence diagrams, some screen design and report
design of the overall system have been included. The Final Class Diagram has briefly
described the database of the system. While the sequence diagram has focus most of the
important system module and show the complexity of how a module or sub module
perform.

Project

91

Dine Cuiz Restaurant System

6.2 Final Class Diagram

Figure 6.1 Final Class Diagram of Dine Cuiz Restaurant System

Project

92

Dine Cuiz Restaurant System

6.3 Sequence Diagram


6.3.1

Sequence

Diagram

of

Supplier

Tendering

Module

(Request for Tender)

Figure 6.2 Sequence Diagram of Supplier Tendering Module (Request for tender)

Project

93

Dine Cuiz Restaurant System

6.3.2

Sequence

Diagram

of

Supplier

Tendering

Module

(Request for Tender Private Tender)

Figure 6.3 Sequence Diagram of Supplier Tendering Module (Request for Private
tender)

6.3.3

Sequence

Diagram

of

Supplier

Tendering

Module

(Supplier Enter Bid)

Figure 6.4 Sequence Diagram of Supplier Tendering Module (Supplier Enter Bid)

Project

94

Dine Cuiz Restaurant System

6.3.4 Sequence Diagram of Supplier Tendering Module (Admin


Award/Disqualify supplier)

Figure 6.5 Sequence Diagram of Supplier Tendering Module (Admin award/disqualify


supplier)

Project

95

Dine Cuiz Restaurant System

6.3.5

Sequence

Diagram

of

Supplier

Tendering

Module

(Generate Tender Log Report)

Figure 6.6 Sequence Diagram of Supplier Tendering Module (Generate TenderLog


Report)

6.3.6

Sequence

Diagram

of

Supplier

Tendering

Module

(Register as supplier)

Figure 6.7 Sequence Diagram of Supplier Tendering Module (Register as supplier)

Project

96

Dine Cuiz Restaurant System

6.3.7 Sequence Diagram of Supplier Tendering Module (Suppler


Update Profile)

Figure 6.8 Sequence Diagram of Supplier Tendering Module (Supplier Update Profile)

6.3.8 Sequence diagram of Backend Office Module (Add Staff)

Figure 6.9 Sequence Diagram of Backend Office Module (Search, update and delete
staff)

Project

97

Dine Cuiz Restaurant System

6.3.9 Sequence diagram of Backend Office Module (Search,


Update and delete Staff)

Figure 6.10 Sequence Diagram of Backend Office Module (Search, update and delete
staff)

Project

98

Dine Cuiz Restaurant System

6.3.10 Sequence diagram of Backend Office Module (Register


as customer)

Figure 6.11 Sequence Diagram of Backend Office Module (Register as customer)

6.3.11 Sequence diagram of Backend Office Module (Update


customer profile)

Figure 6.12 Sequence Diagram of Backend Office Module (Update customer profile)

Project

99

Dine Cuiz Restaurant System

6.3.12 Sequence diagram of Backend Office Module (SelfUpdate Self-Delete Customer)

Figure 6.13 Sequence Diagram of Backend Office Module (Self-Update Self-Delete


Customer)

Project

100

Dine Cuiz Restaurant System

6.3.13 Sequence diagram of Backend Office Module (Admin Edit or delete customer)

Figure 6.14 Sequence Diagram of Backend Office Module (Admin Update Delete
Customer)

Project

101

Dine Cuiz Restaurant System

6.3.14

Sequence

diagram

of

Backend

Office

Module

(Redeemable Item Maintenance)

Figure 6.15 Sequence Diagram of Backend Office Module (Redeemable Item


Maintenance)

Project

102

Dine Cuiz Restaurant System

6.3.15 Sequence diagram of Backend Office Module (Redeem


Item)

Figure 6.16 Sequence Diagram of Backend Office Module (Redeem Item)

Project

103

Dine Cuiz Restaurant System

6.3.16 Sequence Diagram Inventory Module (Add New Inventory)

Figure 6.17 Sequence Diagram of Inventory Module (Add New Inventory)

6.3.17 Sequence Diagram Inventory Module (Quick Inventory


Check-out)

Figure 6.18 Sequence Diagram of Inventory Module (Quick Inventory Check-out)

Project

104

Dine Cuiz Restaurant System

6.3.18

Sequence

Diagram

Inventory

Module

(Inventory

Maintenance, Update, Delete, Track Supplier)

Figure 6.19 Sequence Diagram of Inventory Module (Inventory Maintenance)

Project

105

Dine Cuiz Restaurant System

6.3.19 Sequence Diagram Inventory Module (Generate Report)

Figure 6.20 Sequence Diagram of Inventory Module (Inventory Maintenance)

6.3.20 Sequence Diagram Security Module (Change Password)

Customer:Actor

:ChangePasswordControl

:ChangePasswordUI

:Security

1.StartInterface()
2.PromoptOld,New,ConfirmPassword
3.EnterOld,New,ConfirmPassword
4.VerifyEnteredPassword()

5.GetPassword()
OldNewPasswordMatch
6.UpdatePassword()

Figure 6.21 Sequence Diagram of Inventory Module (Quick Inventory Check-out)

Project

106

Dine Cuiz Restaurant System

6.3.21 Sequence Diagram Security Module (Customer Request


forgotten password)

Figure 6.22 Sequence Diagram of Security Module (Customer Request forgotten


password)

6.3.22 Sequence Diagram Security Module (Staff Login)

Figure 6.23 Sequence Diagram of Security Module (Supplier Login)

Project

107

Dine Cuiz Restaurant System

6.4 Data Dictionary


6.4.1 Staff Table:
Field Name

Data Type

Description

Key

staffId

nvarchar(50)

A field indicate Staff Unique ID

PK

userId

nvarchar(50)

A field indicate Staff User ID

securityId

nvarchar(50)

A field indicate Staff Security ID

Name

nvarchar(50)

A field indicate Staff Name

gender

nvarchar(50)

A field indicate Staff Gender

dateOfBirth

date

A field indicate Staff Date of birth

icNo

numeric(12,0) A field indicate Staff IC No.

contactNo

numeric(18,0) A field indicate Staff Contact No.

email

nchar(50)

A field indicate Staff email address

position

nchar(50)

A field indicate Staffs position

salary

decimal(18,0)

A field indicate Staff salary value

street

nvarchar(255)

Part of address

city

nvarchar(50)

Part of address

state

nvarchar(50)

Part of address

postcode

numeric(18,0) Part of address

FK

Table 6.1 Staff Table

6.4.2 Supplier Table:


Field Name

Data Type

Description

Key

supplierId

nvarchar(50)

A field indicate Supplier Unique ID

PK

userId

nvarchar(50)

A field indicate Supplier User ID

securityId

nvarchar(50)

A field indicate Supplier Security ID

Name

nvarchar(50)

A field indicate Supplier Name

tradingName

nvarchar(50)

A field indicate Supplier Trading Name

registeredName

nvarchar(50)

A field indicate Supplier Registered Name

regNumber

numeric(12,0)

A field indicate Supplier Registration Number

phoneNo

numeric(18,0)

A field indicate supplier phone number

mobilePhoneNo

numeric(18,0)

A field indicate Suppliers mobile Phone


Number

Project

108

FK

Dine Cuiz Restaurant System

faxNumber

numeric(18,0)

A field indicate Suppliers fax number

notificationBy

nvarchar(50)

A field indicate supplier notification

branchName

nvarchar(50)

A field indicate supplier Office

phoneOffice

numeric(18,0)

A field indicate supplier Office Phone Number

phoneFax

numeric(18,0)

A field indicate supplier Office Fax Number

branchEmail

nvarchar(50)

A field indicate supplier Office Email

street

nvarchar(MAX)

Part of address

city

nvarchar(50)

Part of address

state

nvarchar(50)

Part of address

postalCode

numeric(18,0)

Part of address

Table 6.2 Supplier Table

6.4.3 Customer Table:


Field Name

Data Type

Description

Key

custId

nvarchar(50)

A field indicate Customer Unique ID

PK

userId

nvarchar(50)

A field indicate Customer User ID

securityId

nvarchar(50)

A field indicate Customer Security ID

custName

nvarchar(100)

A field indicate Customer Name

custIcNo

nvarchar(50)

A field indicate Customer IC No

dateOfBirth

date

A field indicate Customer Date of birth

gender

nvarchar(50)

A field indicate Customer Gender

custTelNo

numeric(18,0)

A field indicate Customer Contact No.

custMobileNo

numeric(18,0)

A field indicate Customer Mobile Phone No.

email

nvarchar(100)

A field indicate Customer email address

street

nvarchar(255)

Part of address

city

nvarchar(50)

Part of address

state

nvarchar(50)

Part of address

postcode

numeric(18,0)

Part of address

accountStatus

nvarchar(50)

Customer current account status

activationCode

nvarchar(50)

Customers activation code that use to activate

FK

account
points

float

A field indicate Customer total RewardPoints

redeemded

float

field

indicate

Customers

RewardPoints from the restaurant

Project

109

redeemed

Dine Cuiz Restaurant System

pointExpired

date

A field that indicate Customers RewardPoints


expiry date

Table 6.3 Customer Table

6.4.4 Security Table:


Field Name

Data Type

Description

Key

securityId

nvarchar(50)

Security Table Unique ID

PK

accessLevel

nvarchar(50)

User Access Level of system

password

nvarchar(50)

users Password

secret_question

nvarchar(50)

Customers secret Question

secret_answer

nvarchar(50)

Customers secret Answer

Table 6.4 Security Table

6.4.5 Redeem Table:


Field Name

Data Type

Description

Key

redeemItemId

nvarchar(50)

Redeem Item Unique ID

PK

redeemItemName

nvarchar(250)

Redeem Item Name

redeemPoint

float

Redeem Item required point

Field Name

Data Type

Description

tenderId

nvarchar(50)

Indicate Tender Unique ID

rfqRef

nvarchar(50)

Tender Reference

title

nvarchar(50)

Tender Title

unitMeasurement

nvarchar(50)

Tender items unit measurement

quantity

nvarchar(50)

Items quantity

description

nvarchar(MAX)

Description of the tender item

openDate

date

Opening date of tender

closeDate

date

Closing date of tender

Table 6.5 Redeem Table

6.4.6 Tender Table:

Project

110

Key

Dine Cuiz Restaurant System

lowestBid

float

Current lowest bid offer by


supplier

startBid

float

Starting price

currentLowestBidderSuppID

nvarchar(50)

Lowest Bidders supplier ID

tenderType

nvarchar(50)

Indicate Tender Type

status

nvarchar(50)

Indicate Tender Status

PK

Table 6.6 Tender Table

6.4.7 Tender Log:


Field Name

Data Type

Description

Key

tenderLogId

nvarchar(50)

Indicate Tender Log ID

Reference

Foreign key for Tender Table Key


registeredName

nvarchar(50)

Supplier Registered Name

timeBid

time(7)

Time Bid by the supplier

date

date

bids date

bidPrice

nvarchar(50)

Bid Price offer

supplierId

nvarchar(50)

Supplier ID that point to

Foreign

Supplier Table

Key

Table 6.7 Tender Log Table

6.4.8 Private Tender Table:


Field Name

Data Type

Description

Key

tenderLogId

nvarchar(50)

Indicate Tender Log ID

Reference

Foreign key for Tender Table Key


registeredName

nvarchar(50)

Supplier Registered Name

timeBid

time(7)

Time Bid by the supplier

date

date

bids date

bidPrice

nvarchar(50)

Bid Price offer

supplierId

nvarchar(50)

Supplier ID that point to

Foreign

Supplier Table

Key

Table 6.8 Private Tender Table

6.4.9 Inventory Table:

Project

111

Dine Cuiz Restaurant System

Field Name

Data Type

Description

Key

inventoryId

nvarchar(50)

Indicate Inventory Unique ID

PK

inventoryNumber

nvarchar(50)

Indicate Inventorys number

inventoryName

nvarchar(50)

Indicate Inventorys name

inventoryDescription

nvarchar(255)

bids date

inventoryUnit

nvarchar(50)

Inventory items unit measurement

totalUnit

numeric(18,0)

Supplier ID that point to


Supplier Table

reorderLevel

numeric(18,0)

Item level that need to repurchase

remark

nvarchar(255)

Inventory Remarks

supplierId

nvarchar(255)

Bought from which supplier, reference FK


by Supplier ID

purchasedDate

date

Inventory Item Purchased date

Table 6.9 Inventory Table

Project

112

Dine Cuiz Restaurant System

6.4.10 Bill Table:


Field Name

Data Type

Description

Key

billNo

nvarchar(50)

Indicate Bill Number

PK

billDate

date

Bills date

totalAmount

nvarchar(50)

Bill Amount

tableNo

nvarchar(50)

Bills Table Number

billSession

nvarchar(50)

Indicate meal session

billLocation

nvarchar(50)

Indicate

the

Location

FK

of

restaurant
orderID

nvarchar(50)

Indicate the Bills order ID

billType

nvarchar(50)

Indicate payment type

stfID

nvarchar(50)

Handle by which staff

billTime

nvarchar(50)

Time of producing the bill

FK

FK

Table 6.10 Bill Table

6.4.11 CheckTable Table:


Field Name

Data Type

Description

Key

tableNo

nvarchar(50)

Indicate Tables Number

PK

tableStatus

nvarchar(50)

Indicate Status of the table

tableProperties

nvarchar(50)

Tables properties

Pax

int

Indicate number of person

stfName

nvarchar(50)

Indicate Staff Name

CommentOnStaff

nvarchar(50)

Indicate the comment of the staff that


serve the table

Table 6.11 CheckTable Table

6.4.12 FoodMenu Table:

Project

113

Dine Cuiz Restaurant System

Field Name

Data Type

Description

Key

foodID

nvarchar(50)

Indicate the Food Unique ID

PK

foodName

nvarchar(50)

Indicate the Food Name

foodDescription

nvarchar(50)

Description of the food

foodPrice

int

Price of the food

foodQty

nvarchar(50)

Quantity left of the food

foodCategory

nvarchar(50)

Categorize the food

Table 6.12 FoodMenu Table

6.4.13 Reservation Table


Field Name

Data Type

Description

Key

reserverID

nvarchar(50)

Indicate the Reservation Unique ID

PK

reserveDate

date

Indicate the Reservation Date

PK

reserveSession

nvarchar(50)

Description of the food

reserveTableNo

nvarchar(50)

Reservation Table Number

custId

nvarchar(50)

Customer ID

confirmationID

nvarchar(50)

Reservation Confimration ID

staffId

nvarchar(50)

Staff ID that make the reservation

reserveType

nvarchar(50)

Type of reservation

tableID

nvarchar(50)

Reservations table ID

custName

nvarchar(50)

Belong to whose customer

custPhone

nvarchar(50)

Customer Phone Number

reserveChoice

nvarchar(50)

Method of make the reservation

FK

FK

PK

Table 6.13 FoodMenu Table

6.4.14 Online Reservation Table:


Field Name

Project

Data Type

Description

114

Key

Dine Cuiz Restaurant System

tableID

nvarchar(50)

Table ID

tableSession

nvarchar(50)

Table session

tableLocation

nvarchar(50)

Table Location

noPerson

int

Number of person

tableNo

nvarchar(50)

The table number

PK

Table 6.14 Online Reservation Table

6.4.15 Order Table:


Field Name

Data Type

Description

Key

orderID

nvarchar(50)

Order Table Unique ID

PK

orderDate

date

Ordering Date

orderLocation

nvarchar(50)

Location inside restaurant taking order

orderSession

nvarchar(50)

Ordering session

tableNo

nvarchar(50)

Table that took order

custID

nvarchar(50)

Customers ID who took order

staffID

nvarchar(50)

Staffs ID who took order

ordTotalAmount

decimal(18,2)

Order total amount

ordStatus

nvarchar(50)

Indicate orders status

pax

int

number of diner/customer

Table 6.15 FoodMenu Table

6.4.16 OrderFood Table


Field Name

Data Type

Description

Key

orderFoodID

nvarchar(50)

Order Food Unique ID

PK

itemQty

int

Order Food Quantity

Project

115

Dine Cuiz Restaurant System

itemName

nvarchar(50)

Order Food Item name

itemPrice

nvarchar(50)

Order Food Item Price

foodID

nvarchar(50)

Order Foods Food ID

status

nvarchar(50)

Order Food Status

orderID

nvarchar(50)

Order Foods Order ID

subtotal

nvarchar(50)

Order Food Sub Total

pax

int

number of diner/customer

FK

FK

Table 6.16 FoodMenu Table

6.5 Screen Design


Dine Cuiz Restaurant System has basically divided into two categories. One is for
backend, and another is for front end. Both designs have different style and design. The
main style and design technique that use in Dine Cuiz Restaurant System is using

Project

116

Dine Cuiz Restaurant System

different MasterPage design. The consistency of MasterPage designs able to guide me


to produce a consistent User Interface for the end user.
The front end module screen design will be shown on the next few figures.

6.5.1 Public Main Page (Public Page MasterPage design)

Figure 6.25 Customers Public Mage Page

6.5.2 Customer Login Page

Project

117

Dine Cuiz Restaurant System

Figure 6.26 Customer Login Page

6.5.3 Customer Request Forgotten Password

Figure 6.27 Customer Request Forgotten Password

6.5.4 Backend Front Page (Customer Registration)

Project

118

Dine Cuiz Restaurant System

Figure 6.28 Customer Registration

Project

119

Dine Cuiz Restaurant System

6.5.5 Customer Profile Page

Figure 6.29 Customer Profile Page

6.5.6 Customer Check RewardPoints

Figure 6.30 Customer Check RewardPoints

Project

120

Dine Cuiz Restaurant System

6.5.7 Customer Edit Profile/Delete Profile

Figure 6.31 Customer Profile Page

Project

121

Dine Cuiz Restaurant System

6.5.8 Customer Change Password/Security Secret Question


and Secret Answer

Figure 6.32 Customer Change Password/Security Module Secret Question, Secret


Answer

The password changer module is located at the Customer Edit Profile page. The update
process is a separate process with the customer maintenance update profile.

The following backend modules will be using different MasterPage design,


which is totally different style from the front end that is optimizing for full user
experience for customers.

Project

122

Dine Cuiz Restaurant System

6.5.9 Backend Modules Front Page

Figure 6.33 Backend Modules Front Page

6.5.10 Backend inside main page (Administrator and Staff Login


Page)

Figure 6.34 Backend inside main page (Administrator and Staff Login Page)

Project

123

Dine Cuiz Restaurant System

6.5.11 Supplier Tendering Module (Supplier Login)

Figure 6.35 Supplier Tendering Module (Suppler Login Page)

6.5.12 Supplier Tendering Module (Supplier Main Page)

Figure 6.36 Supplier Tendering Module (Supplier Main Page)

Project

124

Dine Cuiz Restaurant System

6.5.13 Supplier Tendering Module (Supplier Submit Bid)

Figure 6.37 Supplier Tendering Module (Supplier Submit Bid)

6.5.14 Supplier Tendering Module (Supplier View available


Tender)

Figure 6.38 Supplier Tendering Module (Supplier view available Tender)

Project

125

Dine Cuiz Restaurant System

6.5.15 Supplier Tendering Module (Supplier View winning


contract)

Figure 6.39 Supplier Tendering Module (Supplier view winning contract)

6.5.16 Admin Main Page

Figure 6.40 Admin Main Page

Project

126

Dine Cuiz Restaurant System

6.5.17 Supplier Tendering Admin Page

Figure 6.41 Supplier Tendering Admin Page

6.5.18 Supplier Tendering Admin Page (Request for tender)

Figure 6.42 Supplier Tendering Admin Page (Request for tender)

Project

127

Dine Cuiz Restaurant System

6.5.19 Supplier Tendering Admin Page (Award/Disqualify


Supplier)

Figure 6.43 Supplier Tendering Admin Page (Award/Disqualify Supplier)

Project

128

Dine Cuiz Restaurant System

6.5.20 Supplier Tendering Admin Page (Tender History Sub


Module)

Figure 6.44 Supplier Tendering Admin Page (Tender History Sub Module)

Project

129

Dine Cuiz Restaurant System

6.5.21 Backend Office Module (Supplier Maintenance Main Page)

Figure 6.45 Backend Office Module (Supplier Maintenance Home Page)

Project

130

Dine Cuiz Restaurant System

6.5.22 Backend Office Module (Staff Maintenance)

Figure 6.46 Backend Office Module (Staff Maintenance)

Project

131

Dine Cuiz Restaurant System

6.5.23 Backend Office Module (Staff Maintenance Staff


Registration)

Figure 6.47 Backend Office Module (Staff Maintenance Staff Registration)

6.5.24 Inventory Module (Inventory Maintenance Main Page)

Figure 6.48 Inventory Module (Inventory Maintenance Main Page)

Project

132

Dine Cuiz Restaurant System

6.5.25 Inventory Module (Inventory Maintenance)

Figure 6.49 Inventory Module (Inventory Maintenance)

Project

133

Dine Cuiz Restaurant System

6.5.26 Backend Office Module (Customer RewardPoint)

Figure 6.50 Backend Office Module (Customer RewardPoint)

6.5.27 Backend Office Module (Redeemable Item Maintenance)

Figure 6.51 Backend Office Module (Redeemable Item Maintenance)

Project

134

Dine Cuiz Restaurant System

6.5.28 Customer RewardPoint Report Design

Figure 6.52 Customer RewardPoints Report Design

Project

135

Dine Cuiz Restaurant System

6.5.29 Supplier Tendering Report (Tender Log History)

Figure 6.53 Suppler Tendering Report (Tender Log History)

Project

136

Dine Cuiz Restaurant System

6.5.30 Inventory Report Design

Figure 6.54 Inventory Report Design

Project

137

Dine Cuiz Restaurant System

6.6 Summary
The biggest challenge in this chapter is designing the Final Class Diagram and the
Sequence Diagram. The first step of preparing Final Class Diagram is simple. By
creating a class for each table and include different attribute and operation into it, the
next one is the tough part. The relationship between the classes need to define carefully,
so only it can clearly explain the overall system database design and how the classes
interact with each other.
When developing the system, logic thinking is relatively simple, but when the
time of present the logic using the sequence diagram, it bring me to another level of
logical thinking. Without thinking more logically, the sequence diagram will not able to
represent the system design and logic sequence of most major modules and functions of
Dine Cuiz Restaurant System, in fact it might bring confusion for those who refer the
diagram.
Although the process of plan and thinking of how to present the diagram is
difficult, but once I got the concept, the drawing part using Microsoft Office Visio is
simple and efficient.

Project

138

Dine Cuiz Restaurant System

Chapter 7
Programming

Project

139

Dine Cuiz Restaurant System

7.1 Introduction
In this Programming chapter, it will cover the main programming language that
used to develop the system and various issue faced during the system development.
With the issue, the solution will be discuss and shown. Besides, some major techniques
and programming style will be discussed in this chapter.

7.2 Programming Language


The Dine Cuiz Restaurant System was developed by using Microsoft Visual
Studio 2010, with ASP.net technology and the main programming language is C#. The
main reason of using C# language is due to the reason Dine Cuiz Restaurant System is a
web based system, using C# is most appropriate in this case. Beside, my project team
member and I are more familiar with the C# language.
The efforts of creating GUI (Graphical User Interface) is flexible as well, similar
with VB application which allow me to use drag and drop method to develop the GUI.
The GUI contains code behind, which allow me to simply design the user interface
using coding.
The system was developed using Two-tier design, which allowed me to develop a
sophisticated and complex application in short amount of time comparing to using Ntier method or object oriented method.

7.3 System Database


The system database is handled by Microsoft SQL Server 2008 which is very
easy to configure and create the connection between the Microsoft Visual Studio 2010
and MS SQL Server 2008. The setup effort of the Microsoft SQL Server 2008 is easy in
our development case and doesnt require extensive skill, which thanks to the Microsoft
technologies; it cut down the time of research and speed up our development processes.

Project

140

Dine Cuiz Restaurant System

7.4 Programming Issues


7.4.1 Inserting current date into database
The system databases date format is normally determined by the Operating Systems
system Date and Time formats. Under Windows 7, it can be check under Control Panel >
Region and Language.
During the development of the system, the development environments Date and Time
Formats, the short date format is dd/MM/yyyy. The Microsoft Visual Studio 2010
development environment has a default DateTime format, if the DateTime format is not
defined, when using DateTime.Now(), it will be insert into database using MM/dd/yyyy
format, which will cause Database exception error, because the MM/dd/yyyy is not
acceptable by the database system.
Solution:
string format = "dd/MM/yyyy";
DateTime now = DateTime.Now;
.
.
.
cmdInsertBidLog.Parameters.AddWithValue("@date",Convert.ToDateTime(now.ToString(format)));

First define a date format, as shown above, dd/MM/yyyy, the DateTime now is in
MM/dd/yyyy format. Before inserting the value into the parameters query, force convert
the now date variable into the dd/MM/yyyy format.
For example, 25 March 2011
DateTime.Now now = 03/25/2011 force convert into dd/MM/yyyy
now = 25/03/2011

Project

141

Dine Cuiz Restaurant System

7.4.2 Displaying date in a proper format


For most of the form that display Date in a textbox format, the same issue arises. The
date format from the database is in dd/MM/yyyy format, without the Time behind of the
date. But when the record retrieves from the database and the date display to a textbox,
below is the problem I encounter during the system development.

Figure 7.1 Date Text Box


From the figure 7.1, the date from the database is 01/02/2011 exactly. I cant find the
reason why the system will automatically add-in a time at the end of the date. So, I
came out with a solution that solves the problem.
Solution
string format = "dd/MM/yyyy";
.
.
.
DateTime startDate = Convert.ToDateTime(ReadTenderHistDetail["openDate"]);
DateTime endDate = Convert.ToDateTime(ReadTenderHistDetail["closeDate"]);
txtStartDate.Text = startDate.ToString(format);
txtEndDate.Text = endDate.ToString(format);
.
.
.

From above, a date has retrieve from the database and force convert into a DateTime
format and store in a DateTime variable.
Current DateTime startDate variable value = dd/MM/yyyy h:mm:tt
Next step, the DateTime variable, e.g. startDate force convert into the defined format.
This will make sure the startDate is in dd/MM/yyyy format and display Date
correctly on the textbox.

Project

142

Dine Cuiz Restaurant System

7.5 Programming Techniques


7.5.1 Globally Unique Identifier (GUID)
GUID is a very unique reference number that used as an identifier in computer software.
The Microsoft has also implement GUID feature in the Microsoft Visual Studio 2010.
In Dine Cuiz Restaurant System database design, most of the Tables Primary Key is
generated using GUID technique, the GUID able to create unique row identifiers. The
GUID is represented as a 32-character hexadecimal string, e.g. (1b83c275-a60f-4e548878-4dc688574eca). The number is large that chances of being generated twice are
extremely small. Therefore, GUID is a very useful for a Primary Key.
The GUID can be call from the System namespace. Below is the method of calling
GUID generator and pass the value into a variable.
string newGUID = System.Guid.NewGuid().ToString();

7.5.2 Inherit PageBase Session variable


There are many way of passing value around, from a form/page to another form/page.
The most commonly use is String Query, where this is not ideal as the chance of
sensitive data, such as ID will be expose to the end user. While using Cookies technique
is my first attempt. But the technique has scrap due to the reason of too much duplicated
coding and chances inconsistency information.
So, Session variable become our last choice that had been utilized heavily in this project.
Firstly, a class call PageBase.cs has been created in the Project Solution. These are the
sample code snippet that can be found inside PageBase.cs, a Property
public string custIDMaintainence
{
get
{
return Session["custIDMaintainence"].ToString();
}
set
{
Session["custIDMaintainence"] = value;
}

Project

143

Dine Cuiz Restaurant System

To call the custIDMaintainence property, before that, we need to inherit the class. To
do so, inherit the PageBase class, as shown below.
namespace DineCuiz.Supplier_Tendering
{
public partial class frmCreateRA : PageBase

After that step, the custIDMaintainence property can be call. The session value inside
property can be retrieve or pass in new value. And so the value will be persistent when
goes through different pages/form in the system, until Session Timeout or the session
has been clear.

7.5.3 Database connection function call


Although the Dine Cuiz Restaurant System is develop in 2-tier design, but the system
still utilizing the function call technique, it also help to cut down the time of duplicated
coding and the promote reusability. The database connection is used in most of the time;
therefore some simple database connection function has been created.
private SqlConnection conDineCuiz = new SqlConnection();
public void Initialize()
{
string conString =
ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
conDineCuiz = new SqlConnection(conString);
conDineCuiz.Open();
}
public void Terminate()
{
conDineCuiz.Close();
}

These few lines of codes are implemented in most of the form that involve database
transaction. Therefore, these few lines of codes are being used, so when a new page is
created, these codes will be inserted into the Form namespace. Next, the function of
Initialize() and Terminate() can be call for each Databases transaction.

Project

144

Dine Cuiz Restaurant System

Code Snippet that involves Database transaction:


Initialize();
string selectTenderHistory = "SELECT * FROM Tender WHERE status = @stat";
SqlCommand cmdSelectTenderHistory = new SqlCommand(selectTenderHistory,
conDineCuiz);
cmdSelectTenderHistory.Parameters.AddWithValue("@stat", "Completed");
SqlDataReader ReadTenderHistory = cmdSelectTenderHistory.ExecuteReader();
if (ReadTenderHistory != null)
{
GridView1.DataSource = ReadTenderHistory;
GridView1.DataBind();
}
btnGenerateRpt.Visible = true;
}
Terminate();

This technique greatly save the development time and make the system coding more
tidy and manageable.

7.5.4 Security Control


Each page and form of the system has strict security control. At the previous security
development planning, the access level of the user will be hard coded in every form and
page. But this method is very time consuming and not easy manageable. To solve the
problem, the codes will be coded in different controls. Different controls control
different level of user accessibility.
Example, for a Page that only allows Administrator to access, a Control will be created
to control the access level and security for that page.
E.g. controlCheckCredentialAdmin.ascx
While for a page that only allow supplier, controlCheckCredentialSupplier.ascx is
created for controlling the access level and security for that page.

Project

145

Dine Cuiz Restaurant System

The Figure 7.2 shows a list of different security controls:

Figure 7.2 Securities Controls


loginAccessLevel is a property from PageBase, when a user Login, the access level will
be pass in into loginAccessLevel
Code Snippet of controlCheckCredentialAdmin.ascx

Code Snippet of controlCheckCredentialSupplier.ascx

Project

146

Dine Cuiz Restaurant System

The control can be used when the created control is inserted into a page. When that page
has load, the Security Control will be execute first and run the Page_Load and check the
loginAccessLevel. If the access level is not fit the criteria, session will be clear and
redirect to a page indicate unauthorized form.
From the figure 7.2, the security control contains User Interface that provide that
controllable by the user.

Figure 7.2 Security Control Development environment


The final outcome of the control that insert into a page will be seen as below, Figure 7.3:

Figure 7.3 Security Control Run Time

7.6 Summary
During the coding phase, many problems have encountered and countless time
had been spent to complete this system. The problem mentioned above, many efforts
have been poured in to solve the problem, by doing a lot of research and discuss with
the team member.
For some of the programming technique, some of the researched is done by
referring online resources and learnt during the industrial training. Well for some of the
other problems and features are solved by using own logic thinking skill.
The coding phase greatly improves my programming skill and enhances my
interest in programming study.

Project

147

Dine Cuiz Restaurant System

Chapter 8
Software Testing

Project

148

Dine Cuiz Restaurant System

8.1 Introduction
Software testing is a part of the system development process and it can be done at
the implementation and verification stage in the waterfall model process. In our system,
various testing process have been done to detect possible errors that might be faced by
end user. The testing of the system also ensures the integration of different modules to
ensure the system able to operate smoothly and enhance the overall system software
quality.

8.2 System Test Technique


Before final testing, most of the modules and functions have been testing repetitively
for almost 2 weeks. Various testing strategies and method have been used up to the best
efforts to provide a bug free system.

8.2.1 Unit Testing


Unit testing is the initial stage of testing process. During the development process, in
every module or small function has been develop, a simple unit testing has been done to
ensure that function able to perform correctly.
Firstly, the module interface and error handling will be performed. Next follow up by
the function and the module testing. When the basic function able to perform correctly,
the database transaction testing will be test. After these few steps had complete, a unit
testing considered to be done and I will proceed to the next module and function.
This testing is to ensure minimum syntax error or run time error when system operation.

8.2.2 Black Box Testing


In the unit testing, I used the Black Box Testing technique to test the modules that been
created. This black box testing does not require technical skill to perform it, so the
testing will be test based on a user perspective based on the requirement and
functionality of the system. In this black box testing goal, every kind of input is
submitted and the possible output will be observed. This testing method is very
effective, Im able to covered many kind of errors and bugs from this testing phase.

Project

149

Dine Cuiz Restaurant System

8.2.3 Integration testing


After various units testing has been done, and numbers of sub modules have been
complete, these sub modules and major modules will be link and integrated together.
Then, the integration testing will be done to test between modules. The ultimate goal of
integration testing is able to passing different parameters and arguments between
different form and pages. This is to test the system integrity and the data consistency
throughout the whole system operation.
In this phase of testing, many unexpected bugs and errors have been discovered due
passing wrong parameter or receive wrong parameters. These errors can cause serious
business logic error and security loophole.

8.2.4 System testing


After the integration testing, System testing which is the final testing of the entire
system has been performed. Every major module is combined, and every function is up
to the user requirement, free of error and smooth operation between the backend and
front end modules.
One of the major testing that had been done by me is Security. Extensive security
testing for the whole system is performed to ensure unauthorized user unable to use the
system.
The Dine Cuiz Restaurant System is a web based system. Therefore compatibility
testing has been performed to ensure the system can be accessed by using different type
of web browser, such as Google Chrome, Internet Explorer and Firefox.

8.2.5 User-acceptance testing


The System Testing is performed by the developer and as a developer maybe bias and
some defects that occurred in the system might not able to detect by the developer. In
this stage, many further defects have been discovered and have been fixed. Most of the
defects came from the daily operational task.

Project

150

Dine Cuiz Restaurant System

8.3 Test Plan


8.3.1 Security Module
Administration Login
Sample Database data:
Predefine Admin account: Staff Table and Security Table
Staff Table:
staffId

(GUID)

1b83c275-a60f-4e54-8878-

4dc688574eca
userId

Admin

securityId

(GUID)

81457701-c256-4c36-a5da-

5ef47100f4f3
Name

Law Chen Sheng

gender

Male

dateOfBirth

13/03/1989

icNo

890313075191

contactNo

0127158368

email

ryanlaw.cs@gmail.com

position

Admin

salary

3500

street

Block A-21-10, PV-10 Platinum Lake


Condominium

city

Setapak

state

Kuala Lumpur

postcode

53300

Security Table:

Project

151

Dine Cuiz Restaurant System

securityId

(GUID)

81457701-c256-4c36-a5da-

5ef47100f4f3
accessLevel

Admin

Password

Admin

secret_question

None

secret_answer

None

Expected Result:
Login Successful and proceed to the Admin Administrator Model.

8.3.2 Backend Office Maintenance Modules


Staff Maintenance - > Register 2 more staff
Sample data Staff 1:
staffId

(GUID) RANDOM GENERATED

userId

Admin2

securityId

(GUID) RANDOM GENERATED

Name

Loo Hai Chiang

gender

Male

dateOfBirth

18/02/1989

icNo

890218075191

contactNo

0163603137

email

jowieloo@gmail.com

position

Admin

salary

3500

street

A-5-5, Plaza Prima Condo, Jalan Genting


Kelang

city

Setapak

state

Kuala Lumpur

postcode

53300

PASSWORD

admin123

accessLevel

Admin

Sample data Staff 2:


staffId

Project

(GUID) RANDOM GENERATED

152

Dine Cuiz Restaurant System

userId

staff1

securityId

(GUID) RANDOM GENERATED

Name

Terry Lee

gender

Male

dateOfBirth

11/06/1989

icNo

890611015333

contactNo

0161234567

email

terryleecy@gmail.com

position

Cashier

salary

2000

street

A-5-5, Plaza Prima Condo, Jalan Genting


Kelang

city

Setapak

state

Kuala Lumpur

postcode

53300

password

cashier123

accessLevel

cashier

Try to add a staff with same User ID


o Expected result : Display existing User ID
Update and Maintain Staff (ADMIN ONLY)
o Expected result: Display the staff has been updated successfully
View All Customer (ADMIN ONLY)
o Maintain, update and delete customer profile

8.3.3 Inventory Module


Insert 2 new inventory
Sample data input Inventory 1:
Inventory Number

INV-TCM1

Item Name

Teapot Condense Milk

Project

153

Dine Cuiz Restaurant System

Description

Non-sweetened Condense Milk

Unit Measurement

Carton(24 cans)

Total Unit

50

Reorder Unit

25

Remark

Fast good

Purchased From

Farm Fresh

Purchased Date

25/02/2011

Sample data input Inventory 2:


Inventory Number

INV-VDN

Item Name

Vitz Dried Noodle

Description

Non-fried Vitz Dried Noodle

Unit Measurement

Box(50 Packs)

Total Unit

150

Reorder Unit

60

Remark

Fast good

Purchased From

Ah Huat Grocery Sdn Bhd

Purchased Date

25/02/2011

Maintain Inventory (Update setting/Delete)


o Expected Result : Display Update Successful
Locate/Track Supplier for certain purchased product
o Expected Result : Display the staff maintenance module
Link to the Tendering Module for Reverse auction event
o Expected Result : Display and link to tendering module
Quick Item Check Out
o Expected Result : Item check out and item quantity level update automatically
Demonstrate of Alert of Low Quantity inventory level
o Expected Result : System able to alert the user the inventory with low level
quantity
Generate Inventory Report: Low Quantity on Hand
o Expected Result : Generate a report

Project

154

Dine Cuiz Restaurant System

Project

155

Dine Cuiz Restaurant System

8.3.4 Supplier Tendering Modules


Supplier Registration (Self Registration)
Registering 3 Supplier
Expected Result: System shows registration successfully message. Each account
can be used to log in to the system.
Sample data of Supplier 1:
supplierId

GUID (RANDOM GENERATED)

userId (Unique)

supplier1

tradingAs

Farm Fresh

registeredName (Unique)

Farm Fresh

regNumber

10005000

Rep Name

Ryan Law

Phone Number

0388997788

Fax Number

0388998888

Mobile Phone No

0127158368

Email

ryanlaw.cs@gmail.com

Password

supp1

Branch Name

Farm Fresh

Phone Office

0388997788

Phone Fax

0388998888

branch email (unique)

ryanlaw.cs@gmail.com

street

Jalan TBR

city

Setapak

state

Kuala Lumpur

postcode

52300

Sample data of Supplier 2:


supplierId

Project

GUID (RANDOM GENERATED)

156

Dine Cuiz Restaurant System

userId (Unique)

supplier2

tradingAs

Daily Freshness

registeredName

Daily Freshness

regNumber

50001000

Rep Name

Jonathan Kong

Phone Number

0172355555

Fax Number

072388888

Mobile Phone Number

0123123123

Email

dfresh@gmail.com

Password

supp2

Branch Name

Daily Freshness

Phone Office

072355555

Phone Fax

072388888

branch email (unique)

dfresh@gmail.com

street

Jalan Langkawi

city

Cheras

state

Kuala Lumpur

postcode

50000

Project

157

Dine Cuiz Restaurant System

Sample data of Supplier 3:


supplierId

GUID (RANDOM GENERATED)

userId (Unique)

supplier3

tradingAs

Ah Huat

registeredName

Ah Huat Grocery Sdn Bhd

regNumber

88998899

Rep Name

Lim Seng Huat

Phone Number

0312345678

Fax Number

0312345677

Mobile Phone Number

0122398293

Email

senghuat@gmail.com

Password

supp3

Branch Name

Ah Huat Grocery Sdn Bhd

Phone Office

0312345678

Phone Fax

0312345677

email

senghuat@gmail.com

street

Jalan Manjalara

city

Kepong

state

Kuala Lumpur

postcode

52000

8.3.5 Supplier Tendering

Project

158

Dine Cuiz Restaurant System

Create reverse auction Public (1) and Private (2)


o Expected Result: Show the auctions have been created successfully.
Try create an auction with same Title and RFQ Reference
o Expected Result: Unable to insert due to the existing Title or RFQ reference
Sample Data of Public Tender:
Title

Teapot Condense Milk

Auction Type

Public

Quantity

Unit Measurement

Carton(24 cans)

Description

Non-sweetened Condense Milk

RFQ Reference

PUBTDR-TCM

Start Price

100

Supplier Invitation

Opening Date

18/02/2011

Closing Date

28/02/2011

Sample Data of Private Tender 1:


Title

Vitz Dried Noodle

Auction Type

Private

Quantity

Unit Measurement

Box (50Packs)

Description

Vitz Dried Noodle Non Fried

RFQ Reference

PRITDR-VDN

Start Price

150

Supplier Invitation

Farm Fresh
Ah Huat Grocery Sdn Bhd

Opening Date

18/02/2011

Closing Date

28/02/2011

Sample Data of Private Tender 2:


Title

Fresh Chicken

Auction Type

Private

Project

159

Dine Cuiz Restaurant System

Quantity

50

Unit Measurement

unit (Whole Chicken)

Description

Fresh Chicken Farm Chicken

RFQ Reference

PRITDR-FC

Start Price

500

Supplier Invitation

Farm Fresh
Daily Freshness

Opening Date

18/02/2011

Closing Date

28/02/2011

8.3.6 Supplier Tendering Module (Send quotation) + Security


Module (Supplier Login) + Supplier Maintenance
Login - 3 Suppliers User ID and Password
o Expected Result: Login Successful with correct authority
o Expected Result: Test Login prompt message if wrong user ID or Password
Demonstrate Password Recovery
o Expected Result: Send password to the supplier registered Office E-mail
Demonstrate Supplier Profile Self update
o Expected Result: Able to update successfully.
View Public Tender/Reverse Auction
o Expected Result: Able to locate available auction
Suppler start to bid and enter price to certain auction
o Expected Result: Able to submit bid after starting date, unable to submit bid
after closing date, only able to submit a price that lower than the current bid.
o Expected Result: Prompt supplier bid submitted successfully.

Sample Data Input Public Tender (RFQ Ref: PUBTDR-TCM)


Farm Fresh (supplier1)

95

Daily Freshness (supplier2)

93.50

Project

160

Dine Cuiz Restaurant System

Ah Huat Grocery Sdn Bhd (supplier3)

90

Farm Fresh (supplier1)

87.50

Ah Huat Grocery Sdn Bhd (supplier3)

84

Farm Fresh (supplier1)

80

Sample Data Input Private Tender 1 (RFQ Ref: PRITDR-VDN)


Farm Fresh (supplier1)

140

Ah Huat Grocery Sdn Bhd (supplier3)

130

Farm Fresh (supplier1)

127

Farm Fresh (supplier1)

125

Ah Huat Grocery Sdn Bhd (supplier3)

123.50

Sample Data Input Private Tender 2 (RFQ Ref: PRITDR-FC)


Farm Fresh (supplier1)

500

Daily Freshness (supplier3)

480

Farm Fresh (supplier1)

450

Daily Freshness (supplier3)

400

Farm Fresh (supplier1)

300

Project

161

Dine Cuiz Restaurant System

8.3.7 Supplier Tendering Module (Tender Monitoring) + Security


Module (Admin Login) + Supplier Maintenance
Login as Admin Using Admin account
o Expected Result: Login successfully
Navigate to Tendering Module
o Expected Result : Display Tendering Module
Demonstrate View All Supplier -> Supplier Maintenance (Update, Delete, Add)
o Expected Result : Able to update successful, able to delete successfully,
able to add new supplier
Demonstrate View All Public Tender
o Expected Result : Able to view a list of available public tender created
earlier
Demonstrate View All Private Tender
o Expected Result : Able to view a list of available private tender created
earlier
Show auction can be Cancel and delete in auction process without prior
notification
Change Date Time in Windows System later than the Auction Closing Date
(speed up testing process)
o Expected Result : System display and alert closing tender need to be
approved by the Admin
Show and proof no auction available for supplier
o Expected Result: Supplier unable to view the previously active tender,
unable to bid anymore.
Demonstrate Award the supplier
o PUBTDR-TCM (Public Tender) Awarded
o PRITDR-VDN (Private Tender) Awarded
o Expected Result: Supplier will receive winning notification
Demonstrate Reject the auction
o PRITDR-FC (Private Tender) Disqualified
Demonstrate View Tendering History
o Expected Result : Generate Tender Log Report

Project

162

Dine Cuiz Restaurant System

8.3.8 User Maintenance Customer Maintenance (Registration)


Register as customer
Sample Data
User ID

ryanlawcs

Name

Law Chen Sheng

Gender

Male

IC Number

890313075191

Date of Birth

13/03/1989

Street

54, Jalan Indah 1

City

Setapak

State

Kuala Lumpur

Postal code

53300

Phone number

0127158368

Mobile Phone number

0127158368

Email

ryanlaw.cs@gmail.com

SECURITY
Secret Question

Your mothers maiden name?

Secret Answer

Tan Mee Fang

Password

lawcs

Check Email get verification code (ryanlaw.cs@gmail.com)


o Expected Result: Receive e-mail verification code, to registered e-mail
address
Enter verification code (code random generated)
o Expected Result: Display activation successful, and require login again.
Login
o Expected Result :Login into Dine Cuiz Website
Password retrieval
o Expected Result : Get password from Email
Customer Check RewardPoint
o Expected Result : Display customer RewardPoints
Update Profile and Security
o Expected Result : Display update successful

Project

163

Dine Cuiz Restaurant System

8.3.9 Customer RewardPoints sub module


RewardPoint redeemable item maintenance
Add New Redeemable Item
Redeem Item Sample data:
Item Name

Point Required

Coffee Espresso

100

Chicken Chop Lunch

300

Maintain and Update Redeemable Item


Item Name

Point Required

Coffee Espresso

80

Chicken Chop Lunch

280

Redeem Item
o Expected Result:
Search for Customer User ID
Display Customer Name, points, redeemed points, and expiry date
Select Redeemable Item List
Select Chicken Chop Lunch and redeem point deducted
Produce Report Customer RewardPoint Report
o Enter total point (Optional)
o Enter redeemed point (Optional)
o Expected Result
Report Generated

8.4 Summary
In overall system development, most of the times were spent on the system testing.
The incorporation function with another project team members module is not an issue,
as we using Microsoft SourceSafe 2005 as a Software Configuration Management tools.
So most of the testing is done individually, and any critical bug and errors will be
discussed if any one of the team member unable to solve it. I learnt the important of
system testing, is to ensure able to provide good user experience for the end user, and
minimize the potential defects during the whole user testing.

Project

164

Dine Cuiz Restaurant System

Chapter 9
Conclusion

Project

165

Dine Cuiz Restaurant System

9.1 Justification of choice of tools, technique and


methodology
In this project, the methodology that uses to develop this project is Waterfall
Model approach. This methodology approach is best suit for my project development as
my project team decides to perform certain work phase by phase, and no turning back
during the development.
The development tool that use in this project is Microsoft Visual Studio 2010 and
applies with C# programming language. Ever since my first years study in TARC,
Microsoft Visual Studio was the most frequent IDE tool that I ever use in most of the
software development. So Microsoft Visual Studio 2010 becomes our first choice of
developing this system. Besides, integration with the Software database tool is simple.
The system database that use in this system is Microsoft SQL Server 2008. It has good
error resistant and good exception error handling.
Other than these tools, another powerful and useful Software Configuration
Management tool has been implemented, which is Microsoft Visual SourceSafe 2005.
This SCM tool gives me good tracking and controlling changes in the software. If
serious error occurs, we can simply roll back to a previous version. Plus, this SCM tool
saves me a lot of time because the jobs of combining modules are effortless. Some
screen shot and demo of Visual SourceSafe will be shown in the Appendix.

9.2 Evaluation against the Project Objectives


By referring to the project objectives that proposed in the Chapter 1: Project Aims,
and Objectives, we can see that the final product of the Dine Cuiz Restaurant System
has actually achieved the project objectives which mean is a success to my project team.
Below will discuss and evaluate the achievement against the project objectives.
The Dine Cuiz Restaurant System has able to provide a better management of
information. Before implementing the system, many transactions had done in manual
traditional way using paperwork method. The Dine Cuiz Restaurant System change the
way of managing the restaurant and information with a few clicks and keystroke away.

Project

166

Dine Cuiz Restaurant System

Previously, DINEcuiz restaurant require a lot of paperwork and human resource


to run the restaurant. But with Dine Cuiz Restaurant System, it can automate most tasks
and reduce the numbers of human resources and cut down the amount of paperwork.
These greatly reduce the cost of operating a restaurant.
The new system gives extra competitive advantages as well, by providing useful
online reservation to the customer where many other restaurant not able to offer. System
aid the manager to make better decision making by utilizing the Reports that generated
from the system, this can help to server customer better.
The Supplier Tendering is a new breakthrough for the restaurant, which give the
ability for the supplier and manager to perform Tendering event. This can lead to better
price control and lower procurement price.

9.3 Project Management Issues


One of the biggest challenges during the development of project is the time
management issue. Final Year Project meant to be using a Year to develop the whole
Project, due to our team poor time management, plus the 6 month of Industrial training
and new semester study after the Industrial training, my project team doesnt have the
essential time to develop the project. Time unable to go back, but I and my project team
member have to try the best to develop the system in about 1 month period including
system testing. In previous planning, the system was plan to develop using ObjectOriented approach or N-tier programming, but due to the time constraint, we have no
choice but to use 2-tier programming style to develop the system in short time yet it
able to perform up to the requirements.
It was been awhile since the last time develops a software system. During the
initial stage of development, it require extra effort for me and my project team member
to refurbish our programming skill and get familiar with the IDE development tools.
This all can be solve by doing research online and discuss among the team member of
the project.
Preparing project proposal and specification is easy, but when it came to real
system development, certain business logic is very difficult to be implemented due to

Project

167

Dine Cuiz Restaurant System

the restriction of programming skill I have. Therefore, certain modules logic flow was
redesign and re-plan without actually sacrificing the actual requirements of the system.

9.4 Evaluation of Project


9.4.1 Strengths of Project
The strength of this project system is it provides very unique and interesting feature that
other system not able to provide. A typical Restaurant System mostly is Standalone
application and only focuses in Point of Sales (POS) in the restaurant site.
Our project provide all in one package, which include Restaurant Website, which allow
the customer to make reservation. And a very interesting feature which is Supplier
tendering which allow creating Tendering event for the supplier. So overall, the
projects niche feature is the source of the strength.
The system is a full web based software, which is very flexible and require minimum
setup and installation. It can be run by different web browser and even off site of
restaurant.

9.4.2 Weaknesses of Project


As our project team have insufficient facts data about how a real life system works. The
project is development based on our own business logic. Neglect of some user
perspective might cause the project not user friendly and some business logic problem.
During the final testing, the Supplier Tendering modules function and requirement is
complete, but it is still lack of user friendliness stated by project moderator.
Other than that, some of the Reports that generate by the system is not as useful as it
stated, information that able to retrieve from the reports are not essential and not so
helpful for certain user perspective.
The database transaction of the system is not fully optimize, some of the function
require more than 2 times of database round trips to perform. This can cause slow
response time of the system or overall performance of the system is degrade. Currently,

Project

168

Dine Cuiz Restaurant System

this can be solved if the system is running on latest computer hardware available in the
market, where a major performance improvement will be noticeable.
Besides, the projects POS feature is not optimizing for touch screen as our project team
lack of actual hardware. Some of the modules user experience will be better with RFID
or barcode reader, the RFID technology and Barcode reader will decrease the
transaction time and increase the customer or end user satisfactory. These technologies
can even further decrease the operation costs of restaurant.

9.5 Future Project Improvement


Firstly, the project can be improved by implementing various hardware and
technologies such as Barcode reader or RFID. The reason we currently scrap these
hardware implementation is due to the time constraint, not enough time to perform
R&D on these hardware and apply it into ASP.net application.
As stated in the Project weaknesses, the Tendering Module is lack of user
friendliness. The main problem of the Tendering Module is the Supplier unable to check
the previous bidding event that they have already bid after the bidding event is closed.
Therefore, this feature will be implementing in future by adding a function which allow
the suppliers to view all their previous bidding history. This can enhance the overall
user experience of supplier tendering module.
The Reports design can be further improve as well, so it able to provide better
information and helpful for the manager to make critical decision for the restaurant in
future.
Rather than focuses in the system functionality, in future project development, the
system performance will be our first priority. By decreasing the system database
transaction round trip and improve the system response time.
Overall, facts collection is very important for future project improvement, and a
hands-on experience on real life restaurant system that exists in the market is essential
for us to develop a more feasible system.

Project

169

Dine Cuiz Restaurant System

9.6 Personal reflection


The Final Year Project gave me various valuable lesions and I learnt from it ever since
the starting of the project. Firstly, is the Time Management skill, for most of the Final
Year Project student had this problem, always start the project at the last minute or the
deadline of the project is around the corner. I have been given advises from my senior
and my supervisor to start the project development as early as possible, end up I didnt
take up the advises seriously and due to some constraint such as Industrial training and
semester study, I had to develop the system software within approximately 1 month
period. Therefore, extra effort was necessary and I been working hard non-stop ever
since the first day of started to develop the system.
Although this was not the first attempt to develop a restaurant system, but I had not
given a chance to get in touch with a real life Restaurant system, so different problem
occur during the system development. Extra efforts to do research and facts study is
necessary as well, and tried the best to develop a feasible system. I appreciate some
advises that given by my supervisor to keep our system on track. In short, facts study on
real life system is very important, so that I can get more idea and inspiration of how a
restaurant system should be perform.
In the development stage which the busiest stage, program coding. I and my team
member had perform brainstorming and extensive planning on how our system need to
be develop and decide which kind of programming structure will suit best in our system.
I also faced some technical difficulties during coding some function, from this I learnt
the important of team spirit, and we help each other when there are some problem and
difficulties that halt the development process.
Final Year Project would not success without proper teamwork. During the
development, I gain valuable experience and the important of communication and
teamwork. The interaction and coordination must be done well between team members,
to keep the each team member development pace on the same speed and on the right
track, this require certain amount of communication skill to do so.

Project

170

Dine Cuiz Restaurant System

Lastly, the completion of the project greatly enhances my current programming


skill and also increases my interest of programming. This also enhances my confident in
programming and it would be helpful in my future career.

Project

171

Dine Cuiz Restaurant System

References

Project

172

Dine Cuiz Restaurant System

1. Wikipedia. 2011. System testing. Viewed on 28 February 2011. Available from:


<http:// en.wikipedia.org/wiki/System_testing>.

2. Wikipedia. 2011. Software testing. Viewed on 28 February 2011. Available from:


<http:// en.wikipedia.org/wiki/Software_testing>.

3. Wikipedia. 2011. Software development methodology. Viewed on 23 February 2011.


Available from: <http:// en.wikipedia.org/wiki/Software_development_methodology>.

4. Wikipedia. 2011. Waterfall model. Viewed on 23 February 2011. Available from:


<http:// en.wikipedia.org/wiki/Waterfall_model>.

5. csharp.net-informations. 2011. C# Crystal Reports from SQL Query. Viewed on 15


February

2011.

Available

from:

<http://csharp.net-informations.com/crystal-

reports/csharp-crystal-reports-sql-query.htm>.

4. 15seconds. 2011. Deploying ASP.NET Applications. Viewed on 02 March 2011.


Available from: <http://www.15seconds.com/issue/030806.htm>.

Project

173

Dine Cuiz Restaurant System

Appendices

Project

174

Dine Cuiz Restaurant System

Appendix A: Microsoft Visual SourceSafe 2005


Microsoft Visual SourceSafe is a SCM tool that controls our project solution source file.
It helps every team member of the project able to get the latest source file whenever
there are some updates done by other user.
It give strict control of every files in a solution, when a user wanted to modify a file in a
solution, that file will be Check-out and lock, other project team member will not able
to perform modification.

Figure A-1 Visual SourceSafe shown that 3 files has been check-out
The Microsoft Visual Studio 2010 project source file from different PC is connected to
the Visual SourceSafe Server from a PC. The next figure shown how it look when a
source file has been check-out in Visual Studio.

Project

175

Dine Cuiz Restaurant System

Figure A-2 Visual Studio 2010 Files check out from the user

Figure A-3 Visual Studio 2010 Files check out in your Visual Studio Solution
Explorer

Project

176

Dine Cuiz Restaurant System

Appendix B: User Guide


B.1 System Documentation
Installation of Microsoft SQL Server 2008
The MS SQL Server 2008 must be in Standard version to avoid any
incompatibility issue. It can be Revision 1 or Revision 2 version. For further details of
MS SQL Server 2008 installation, please refer to SQL Server 2008 Books Online >
Getting Started > Initial Installation (SQL Server 2008) > Installing SQL Server 2008
(http://technet.microsoft.com/en-us/library/bb500395(SQL.100).aspx).
*(Optional if .NET Framework 4 already install)
Please note that the Installation of MS SQL Server 2008 does not bundle with .NET
Framework 2.0. Please install .NET Framework 4.0 from the Installation CD Provided
(dotNetFx40_Full_setup)

Figure B-1 SQL Server 2008 Books Online

Project

177

Dine Cuiz Restaurant System

Installation of Dine Cuiz Restaurant System Database


After the installation of MS SQL Server 2008 has complete, now proceed to the
installation of Dine Cuiz Restaurant System Database. First launch the Microsoft SQL
Server.
Managing SQL Server Management Studio:
Start > All Programs > Microsoft SQL Server 2008 > SQL Server Management Studio
Follow the steps below to install the Dine Cuiz Restaurant System Database
1. Obtain the DineCuizDB.mdf and DineCuizDB_Log.LDF from the installation
CD under Setup Database folder. Copy the 2 files and paste in to Drive C:
as shown as below,

Project

178

Dine Cuiz Restaurant System

2. Login as Windows Authentication (default). Server type : Database Engine)


Server Name: (local). Click Connect to proceed to the next step.

3. After login, under the Object Explorer, right click on Databases and click
Attach as shown below.

Project

179

Dine Cuiz Restaurant System

4. Attach Databases will pop up as shown below. Click Add Button

5. Select the database (DineCuizDB.mdf) from C: drive, then click OK to finish.

Project

180

Dine Cuiz Restaurant System

6. It will look like the figure shown below, click OK to continue

To make sure you have successfully attached Dine Cuiz Restaurant Database, the figure
below has shown a sample of the Object Explorer, a DineCuiz.mdf has added in to the
Databases.

Project

181

Dine Cuiz Restaurant System

IIS7.5 Configuration (Recommended)


Go to Control Panel > Administrative Tools > Internet Information Services (IIS)
Manager
Navigate to Application Pools > Right Click on ASP.NET v4.0 > Advanced Settings

Under Process Model Select LocalSystem, click OK and exit.

Project

182

Dine Cuiz Restaurant System

Dine Cuiz Restaurant System Setup


1. To start the setup wizard, go to the Installation CD, navigate to Setup Folder,
Launch Dine-Cuiz Setup.msi. Click Next to proceed.

.
2. Change the Virtual Directory name to Dine-Cuiz, under Application Pool
select ASP.NET 4.0. Click Next to continue.

Project

183

Dine Cuiz Restaurant System

3. Click Next to start the installation, and wait for installation to be complete

4. Click Close to end the installation

Project

184

Dine Cuiz Restaurant System

B.2 Operation Documentation


To start the Dine Cuiz Restaurant System, open a browser, go to this address:
Address: http://localhost/Dine-Cuiz/MainPage.aspx
Application Main Page

Two Type of user that able to login to the system.


Click Supplier Login to Navigate to Suppler Tendering Login Page
Click Administrator Login to Navigate to Administrator and Staff Login Page

Project

185

Dine Cuiz Restaurant System

Administrator and Staff Login

Quick Site Map Navigation


1. Enter User ID (Default : Admin)
2. Enter Password (Default: Admin)
3. Press Login button
a. System will notify if the User ID is not exist or the Password is not
correct
4. System will load Admin Main Page or POS Main Page

Navigate to Staff Maintenance Module


Navigate to Customer Maintenance
Navigate to Tendering Main Page
Navigate to Inventory Main Page
Navigate to Redeem Maintenance

186

Dine Cuiz Restaurant System

5. System will navigate to this page if the staff access level are Cashier/Waiter
Note *Admin accessible*

Navigate to Online
Reservation Page

Navigate to Order Page

Navigate to Walk-in reservation


page
Navigate to Table Management Page

Navigate to Billing Page

187

Dine Cuiz Restaurant System

Supplier Tendering Module (Supplier Login Page)

Supplier Password Recovery

Supplier
Registration

System Login
1. Enter User ID
2. Enter Password
3. Press Login button
a. System will notify if the User ID is not exist or the Password is not
correct
Supplier Password Recovery
1. Click here link

2. Enter User ID and click Recover button


3. Password will be send to registered e-mail address.

188

Dine Cuiz Restaurant System

Supplier Registration

Click Register button to register


Click Cancel to go back
*The User ID, Registered Name and Branch Information Email Address are unique.
Error will prompt if the key in information are existed.

189

Dine Cuiz Restaurant System

Supplier Tendering Main Page Control Panel

Click Logout button to logout


from the system
Check available Public Tender
Update your own profile (supplier)

Notification of Private Tender invitation


Notification of Winning Contract

Supplier Tendering Process and Navigation

Figure 12.2.10 Supplier Tendering Main Page Control Panel


1. Select a record
2. Click Bid to Proceed to Bid Entering Page

190

Dine Cuiz Restaurant System

Submit Quote Bidding

Current Lowest Bidding


Bid Price submission field
Bid Submission button
Show Previous own Bid

3. Enter your price in the SUBMIT YOUR PRICE (RM) field


4. Click Submit button to send your bid.
5. Click Show Bid History to view your previous bidding

191

Dine Cuiz Restaurant System

Supplier Tendering Admin Control Panel

Notification of awaiting tender to be complete

Create a Tender/Reverse Auction Event


View all current active public/private tender
View all past completed tender

Navigate to Supplier Maintenance

Supplier Tendering Admin to Request for Tender

Tender open
and closing

Determine the Private or Public Tender

Initial Starting Price

Private Tender To invite list of supplier

Create and upload the tender

192

Dine Cuiz Restaurant System

Supplier Tendering Award or disqualify supplier

Award the lowest bidder

Lowest bidder and the final


Disqualify the lowest bidder

price offer by this bidder

-No winner for this tender

Notes:
*Disqualified Tender record will still available. The records can be retrieved from the
View all tender history
* The awarded supplier will be notified through the suppliers registered offices e-mail.

193

Dine Cuiz Restaurant System

Supplier Tendering View All Tender History

Filter Tender History by Date range Will


display the record with the Open Date within
this date range
Revert between awarded or disqualified tender

List of tenders
To view tender in detail as shown below

Generate tender report list of


bidders that bid in this tender

194

Dine Cuiz Restaurant System

Staff Maintenance (Admin Only)

Search record by Staff Name


Search Staff by staffs User ID
Search based
A record must be select from the record list,
before able to edit
Navigate to Add Staff Registration

***Access level to the system***

195

Dine Cuiz Restaurant System

Inventory Main Page

Notification of low quantity inventory

Generate of low quantity inventory report


Inventory Lists
Inventory Unit Measurement
Total of inventory will be deducted or check out
Click to check-out the item
View all available Inventories
Show Add Inventory Page

Click to filter either by


Normal or Low Level
Quantity

A record must be select from the record list,


before able to edit

196

Dine Cuiz Restaurant System

Edit Inventory

Click Buy Inventory to Show


the highlighted panel Update
total quantity, date of purchase
Locate Supplier navigate to

and supplier

supplier maintenance page

Submit the item for tendering


navigate to Request for tender
page

197

Dine Cuiz Restaurant System

Customer RewardPoints

The customer information will


be display based on the entered
customers User ID

Generate RewardPoints Report

1. Enter Customer User ID, click Search button


2. Click Redeem Item to display a redeem item panel.
3. Select an item from Redeemable Item List, Item Name and Points required
will be display.
4. Click Redeem button to redeem the item, customer Points Available will be
updated.

198

Dine Cuiz Restaurant System

Maintain Redeem Item (Redeem Maintenance)

Available list of Redeem Item

Click Edit to show the Redeem


Update Panel

Add New Redeem Item

199

You might also like