Uploaded by Adel Shtayyeh

Melon Documentation (Israa group 1) - Copy

advertisement
1
‫دولـــــــــــــــة‬
Palestine
An-Najah National
University
Faculty of Information
Technology
Computerized Information
Systems
‫فلســـــــــــــطين‬
‫الـوطنـيـة النـجـاح جامعة‬
‫المعلومات تكنولوجيا كليـة‬
‫قسم نظم المعلومات المحوسبة‬
MELON (POS)
Students:
Malak Abu-thraa
11314943
Anwar Qashoo
11316481
Abdallah Habib
11316792
Hamza Abu-Sabra
11317051
Osama Khalaf
11316028
Rudab Abu Yaqoub
11317437
Supervisor:
Dr.Emad Saadah
A project report submitted in partial fulfillment of the requirements
for Software Engineering course in Computer Information Systems
department.
An-Najah National University
2015 / 2016
2
Table of Contents
Table of Contents
Abstract
ii
ix
CHAPTER ONE
INTRODUCTION
5
1.1 Introduction
1.2 Project Scope
1.3 Problem Specification
1.4 Goals and Objectives
1.5 Motivation
1.6 System Requirement
1.7 Project Plan and Schedule
1.8 Outline of the Project
5
6
6
7
7
8
8
10
CHAPTER TWO
LITERATURE AND METHODOLOGY
11
2.1Introduction
2.2 Proposed System
2.3 Advantages and Disadvantages
2.4 Feasibility Study
2.5Methodology
11
12
12
13
17
CHAPTER THREE
SYSTEM ANALYSIS AND DESIGN
20
3.1 Requirements discovery
3.2 Requirements classification and organization
3.3 Requirements prioritization and negotiation
3.4 Requirements specification
3.5 Requirements validation
3.6 Requirements management
20
25
27
28
28
29
3
CHAPTER FOUR:
SYSTEM DIAGRAMS
30
4.2 Use Case Diagram
4.7 Class Diagram
31
49
Appendix
A: Use cases and scenarios
52
52
References
66
4
Abstract
Melon is a restaurant Point of sale, web application module integrated
with “Shamel Lite” that can be used by different types of restaurants.
The
software
provides
services
for
two
types
of
actors:
first the customers of the restaurant and second the workers inside the
restaurant.
Melon enable the users to determine different process, these process
include manager, admin, waiters, cashier and also customer process.
Melon is user friendly, helps clearly to accelerate the sales process, pay
the bills and give accurate results providing better and faster overall services.
This application can be used on PC’s and touch screen devices (Android,
IOS).
5
CHAPTER 1
INTRODUCTION
Cafes, Tabletops, takeaways, traditional restaurants and all types of restaurant
which need a guiding application or set of instructions to accelerate the work,
traditional papers and calculator aren’t efficient and it’s hard to deal with them
especially in traffic hours in big Restaurants.
In “Melon”, we propose a new restaurant POS as a new application to
help its customers easily facilitate restaurant workflow only by using their devices.
1.1 Introduction
The proposed restaurant POS discussed here, will be designed and
implemented for small restaurants as a phase one.
The plan is to develop and upgrade it to fit medium and large restaurant as a
second Phase.
Melon will enable the restaurant manager to be able to keep an eye on
his employees, products, activities, profit and expenses. Then, the application
will automatically take the order and display it immediately to the kitchen chef.
Moreover, the manager will have the ability to run reports monitor
inventory and sales about every process besides, system admin can control
user’s privileges that he could give or withdraw.
6
1.2Project Scope
Melon is a computerized POS module that will automate the major
restaurants operations. The system processes the orders, Reservation System
for tables and receiving requests from customers and the completion of the
customer service process and eventually close order and receives payment.
The Melon POS module objective is to provide a system to manage
restaurants with ease and efficiency. The system provides integration with
“Shamel” financial system providing daily, monthly and annual reports.
The system will be able to handle many services to take care of all
customers in a quick manner. The system is secure, user appropriate, easy to
use, helps prevention of common mistakes and has an overall high end user
satisfaction. The customer here is the restaurant owners.
1.3Problem Specification
Have you ever waited in line to order your food or even pay for it? Yeah
waiting is not a very pleasant feeling especially when you’re hungry!
One of the critical points of any restaurant business is the order process
and cash register. The ability to process transactions with no errors and receive
payment is essential to the efficient operation of restaurants. If you have a lot
of cash transactions, replacing the cash registers with a Point-Of-Sale (POS)
system save you money, time, and resources.
The reason Melon POS comes to replace, obsolete conventional POS’s
and cash registers available in the market is because it doesn't just bring up
sales. It collects vital, real-time information about your inventory and
customers. In the shape of reports and notifications, to help you to keep an
overall and detailed look on your business. guiding you always towards the
right decisions.
7
1.4 Goals and Objectives
Facilitate and speed up the process of requesting orders for both the
restaurant and the customer, save time, resources and money.
Simple, Beautiful and uncluttered system reflects a positive image for
the restaurant utilizing it, Easy decision-making and management of the
restaurant through reports and information system that can notify the
manager, a high-performance system built to meet the previous points in
addition to Shamel financial system integration.
1.5 Motivation
your passion is making your business better , ours is helping you to do it
, melon let you instantly send orders straight from the table to the kitchen ,
helping you to run your restaurant , and see how well you are doing with ondemand reports , also give you the knowledge you need to track your success
and adopt your menu, also melon allow credit card payment , taking orders
quickly , online-offline power reliability , because it works offline , you don’t
have to worry about network connection loss .Finally, you can create your
menu online , build every item on your menu , complete with photos ,
descriptive names , and prices .
8
1.6 Development system technical Requirement
1. ASP.NET Framework
●
Dev express ver 15.0
●
Ajax Toolkit
●
HTML5
●
CSS3
●
JavaScript
●
boot strap
2. MS-SQL server
3. Visual studio
1.7Project Plan and Schedule
This project starts at the end of January, 2014 and should be completed by the
beginning of May, 2014. In addition most of the project processes are run
concurrently
to achieve maximum optimization and quality
9
1.
Task
Start date
Finish date
Status
analysis
22 Jan,2014
1 Feb,2014
completed
2 Feb,2014
14 Feb,2014
completed
5 Feb, 2014
1 March,2014
Completed
7 March,2014
Completed
1.1 SRS Analysis
1.2SWOT Analysis
1.3Project Planning
1.4 Interface designing
2. gathering information
2.1 Customers Surveys
2.2 Market study
3. selecting the right media
3.1 determine the platform
3.2 OS environment
3.3 needed tools and programs
4. Writing
16 Feb,2014
4.1 Documentation
5. implementation
1 March,2014 20 March,2014 Completed
5.1 building DB
5.2 constructing modules
5.3 modules integration
5.4 QA testing
6. Distribute the final product
6.1 Feedback
6.2 Maintain
1 March,2014 Until end
Completed
10
1.8Outline of the Project
The Melon project consists of six Chapters: Chapter One is an
introduction that talks about project scope, system requirements, goals and
project plan. Chapter Two discuss literature and methodology, explain a
difference between current systems and proposed system, and discuss
feasibility study. Chapter Three is a stage that discusses system analysis,
system design and requirements such as requirement collection, requirement
study and requirement structure. Chapter Four is a stage that focuses on
system UML design. Chapter Five present the conclusion and future work of
the system.
11
CHAPTER TWO
LITERATURE AND METHODOLOGY
2.1 Introduction
Most of the restaurant owners are using the traditional way (manual) to
control their restaurant , from getting the customer's order (the customer
choose from the menu and the waiter write it down into a paper and send it to
the kitchen) to the accounting purposes and other business transactions .
Manual system may have some advantage such as there is no need for internet
services in the restaurant but disadvantages are much more.
Disadvantage of the current system:
1- Limited collaboration
Collaboration on documents is extremely hard when working with paper
versions.
If several managers need to confer on a document, they must have multiple
copies printed, make amendments separately and then share their version with
each other before pursuing further changes.
2- Human Error
In crest of crisis waiters cannot keep the focus on taking orders and moving
between a large numbers of tables.
3- When using the menu it could contain some foreign names, which some
customers cannot say so they don't order it because they fear of
embarrassment and it is possible that they don't recognize this meal because
there isn't any photo.
12
2.2 The proposed software system
Melon is a new module integrated with “Shamel Lite”, to add the
restaurant POS functionalities needed by customers, and for “Shamel Lite” to
become a full business's accounting solutions package in the market, the
module is built upon a new market study and research survey, to fill the gaps
competitors left open.
2.3 The advantages and disadvantages of the proposed software system
Isra’s POS is a platform of Shamel lite which is currently used in many
restaurants with a lot of customer satisfaction - but there are renewable
customer needs which we are now working to meet.
The company developed Melon as a special platform for restaurants,
has a lot of advantages like:
1- User friendly.
2- Easy to remember.
3- Reliable, because of user trust that Shamel lite built in the market before .
4- Speed.
5- Gives accurate results.
6- Maintainable.
Despite the previous advantages the company still faces system problems, for
example:
1. Not only the program cost but also its hardware tools .
2. Electricity dependency.
3. Network dependency.
4. It required from the user to know how to deal with the technology.
However, there is no new technology without needs, and no limitation
for these needs.
13
2.4 Feasibility Study
A: - preliminary feasibility study (Operational)
POS restaurants is a commodity service-substitute doing a lot of services
that facilitate and manage the restaurant , for the market type it is a
competitive market where many competitors, in general, for the company the
possibility of producing such a project is not as difficult because of the
availability of cofactors fully, providing time effort on administration and has
many other benefits In addition, customers are going to make everything on
the equipment and technology of modern, so the production process of the
POS operation will be feasible and great benefit and the good demand from
customers and the market.
B: - Market feasibility study
With the increasing demand for software products and their use in
many areas of life, the production of POS restaurants system will be a
successful project Initially if it caters to the needs of customers and the market
in spite of the small size of the market because of the situation of politics, not
great openness to external markets, but the size of the market for the product
may take a large share on this market with few competitors exist.
C: - Technical study of the project
The project needs in order to produce many of the supplies, which
consists of programmers, software engineer and project manager, analysts and
Hardware and the level of excellent knowledge of programming language that
will be worked on and is available in the company's additional equipment is
required in order to accomplish this software plus the time it would take for
the project.
14
D:-Economic feasibility study
Benefits:
For customer:
Tangible
Cost
Reduce the number of staff
5000 $ y/1 Emp
The provision of supplies in Office
1500 $ y
Speed up the production process
6000 $ y
Possibility to request via the Internet
2000 $ y
Intangible
Cost
Facilitate decision-making
2000 $ y
Customer satisfaction
1500 $ y
Facilitate and speed things up on the
staff
1000 $ y
Total
19,000 $ y
The Benefits from the System for the next 5 year from the restaurant life cycle
is : 19,000 * 5 = 95,000 $ per 5 year.
15
The project costs for customer
Fixed costs
Price
Point Of Sale
500$
Screen / Printer / Cash
/ Barcode
1850$
PC/Laptop
400$
Printer/ Screen
Kitchen
340$
Printer USB
270$
Router
40-80$
Tablet
80$
Server
400$
Total
3920 $/y 19600 $/5y
Periodically costs
Price
Internet (4-8)MB
30$ / Per month = 360 $ yearly
Salaries
300-500$/Person per
month=5000$ y
Maintenance
200$ / Per year
Other running cost
3000$ / Per year
Total
8560/y
42,800 $/5y
16
For the company:
As we mentioned the project requires programmers, software engineers,
analysts, project cost of these costs with other operating costs such as
electricity, equipment and after completion of the project, needs a salesman in
addition to earnings, forecast period will recover capital and profits during this
period
Requirements
Costs
Programmer
1000$ / m
software engineer
1500$ / m
Salesman
700$ / m
Running costs
1000$ / m
Profit
22,600$
e.x: Project Life 6 month ,
Selling price for product =500$
Total
4 prog = 1000*4*6=24,000
1 swe = 1500*6=9000
2 salesman = 700*2*6=8400
RC = 1000*6=6000
Profit 22,600
total cost =70,000/500=140 *
*According to the results, it must undertake the sale of 140 customer in order to
recover the paid-up capital and expected profits during the period determined
by the owner of the project, for example, let's say two years.
17
2.5 Methodology (SDLC)
Software’s projects need specific methodology ,are based on iterative
approach development, flexible plan, quick changing requirements response ,
that's why Scrum was chosen , it's an Agile implementation for completing
complex projects , management and control process that cuts through
complexity to focus on building software that meets business needs.
Management and teams are able to get their hands around the requirements
and technologies, never let go, and deliver working software, incrementally
and empirically.
18
Short plan:
Product Backlog
id
Features
1
State
Blocking
priority
release number
select table , orders
approved
from menu , select order
type and send it to the
kitchen
1
release 1
2
every ordered item are
in the bill with
quantities ,prices , and
discounts , and select
payment way
approved
2
release 1
3
ability modify the order
, edit table , delete the
order
approved
3
release 1
4
see all orders in each
table , and view last
orders ,
approved
4
release 1
5
add new meals in my
menu
not yet
2
release 2
6
check the inventory ,
and how much each
meal consume , give
notification if any
component is missing
not yet
3
release 2
19
Release 1 Backlog
priority feature ID
working
hours
deadline
sprint
1
1
20
1/10/2015
1
2
5
15
5/10/2015
1
2
2
15
9/10/2015
2
3
3
12
12/10/2015
2
4
4
12
14/10/2015
3
-
collecting the work
10
16/10/2015
4
Release Date
17/10/2015
20
CHAPTER THREE
REQUIREMENTS ELICITATION AND ANALYSIS
In later sections we present the processes we went through for
requirement finding and elicitation.
3.1 Requirements discovery
During the requirements discovery process, the team members
used these techniques to gain a better understanding of the
requirements of the system. Requirements discovery activities
included:
● Research: we searched online for existing systems and came
across, www.Hiba-express.co.uk (Portal),
www.revelsystems.com (POS) we analyzed and studied the
available services and extracted facts and operation
requirements that match our system.
● Interviews: we visited a couple of restaurants, such as Aram
restaurant, and met the potential owners of the system and
their customers and asked them about their needs and
suggestions, e.g. the booking mechanism they prefer to use,
the delivery service they currently offer and how they would like
to modernize through online delivery services and asked the
customers about the booking and delivery service features that
would suit them.
21
● Observation of the work environment: During the restaurant
visits we talked to their staff and observed the process and
stages that each order goes through starting from taking the
customer order by the waiter to kitchen and serving...etc.
● Brainstorming: we arranged multiple sessions where we sat
down and gathered thoughts and suggestions on the main
actors and listed each roles in the restaurant and their
reflections on the system requirements.
The following are the system’s main actors:
1. Manager: is the restaurant real life manager or owner he is
responsible for reflecting the restaurant's details to the system
e.g. add the table’s categories and items to the system and
monitor the other users and restaurant status through periodical
reports.
2. Waiter: responsible for opening a table initiating the order and
input it’s details from the customer and send them to kitchen.
3. Chef: his role is to receive the orders through the system and
notify the waiter when they are ready for serving.
4. Portal Customer: his part is summarized by being able to book
a table and order online through the portal.
In the later section is a list of the functional requirements grouped by
actors, for the POS and its portal as follows:
22
Functional Requirements:
Manager:
1. Can edit the menu.
2. Receives the customer feedback through the manger page.
3. Be able to see all of the received orders.
4. See who approved on orders and bookings.
5. Edit table numbers and location.
6. Have reports about sales, purchases and staff logins.
7. Identify which waiter served each table.
8. Define items, categories, table and users.
Waiters:
1. Can open a table.
2. Able to add an order, update, cancel, append and save it.
3. Add notes to specific order.
4. Send orders to the kitchen.
5. Keep track of the order status.
6. Add urgent alert.
7. Change the customer table.
8. Merge two tables together.
9. Exchange tables service between each other’s.
Chef:
1. Add purchase Requests.
2. View the orders.
3. Notify that packing a delivery is done.
4. approve orders
Cashier:
23
1. Approves the bookings.
2. Select orders and edit them.
3. Add notes to specific order.
4. Select customer.
5. Change table status.
6. Close order.
7. Check table.
8. Add discount.
9. Receive payment (Cash/Credit card): it could be more than one
currency.
10.
Will be notified via SMS, in case there is a new order or
booking made.
Portal Customer (Online):
1. Table booking: the customers are able to book a table at a specific
time/date/location.
2. Select items from menu and order them as a delivery.
3. Mobile notification when the delivery is approved and ready to be
send.
4. Have a reminder of his/her booking time through the SMS/mobile
application.
5. Send feedback through the website.
6. pay for the order.
Nonfunctional Requirements:
24
1. Usability: the POS System design should be simple, clear, easy to
understand and use by everyone with no previous background of
how to use one.
2. Reliability: gives the results on time (orders when it is booked then
when it's being ready to serve).
3. Dependability: system passes the QA with minimal errors and
crashes, the portal will deliver the notifications in time to both sides,
the customer and the restaurant employee with very low latency (<
1 sec) ,via mobile app or SMSs.
4. Portability: compatible and can run on different browsers (or all of
them if possible), Platforms: website portal and mobile application..
5. Availability: the portal will be available to the customers through the
website and mobile app.
6. Maintainability: backup file contains the full data.
25
3.2 Requirements classification and organization
The Point of sale and the website Portal are divided into the 3 increments as
follows:
1- First increment (POS Ordering): This increment includes all the functionalities to
create a new order, process it and serve the customer.
1. The ability to open, add, update, cancel, append and save orders .
2. Send orders to the kitchen.
3. Change the customer table.
4. Edit the menu, table numbers and location.
5. Receive payment (Cash/Credit card) by cashier.
6. Define items, categories, table and users.
7. Give, define and update Access rights for users.
8. Notify that packing a delivery is done by chef.
9. Add notes, alert to specific order.
10.
Keep track of the order status.
11.
Select orders and edit them.
12.
Change table status
13.
Add discount
2-Second increment (Reporting and monitoring): Adds the reporting and
monitoring features to the manager, allowing him to monitor the system
transactions and provide periodic reports to help him take decisions.
1. See who approved on orders and bookings.
2. Merge two tables together.
3. Have reports about sales, purchases and staff logins.
4. Identify which waiter served each table.
5. Export reports in excel, word and pdf.
6. Print reports.
7. Search and filter reports.
8. View all of the received orders.
9. Review purchase requests and give authorization to buy.
26
3-Third increment (Portal): Adds the online booking, delivery and feedback to the
restaurant website providing the service anywhere, anytime.
1. Manager page:
1. Manager receives the customer feedback.
2. Manager able to see all of the received orders and table
booking.
3. The online menu can be edited.
4. Manager able to see who approved on orders or bookings.
5. Will be notified via SMS, in case there is a new order or
booking made.
2. Customer page:
1. Table booking, customers are able to book a table at a
specific time/date/location.
2. Customer able to send feedback through the website
3. Can find the information about restaurant and the recent
offers on the website.
4. Customer can select items from the menu and order them as
a delivery.
5. Visa card number/SMS required to continue booking or
delivery process
6. Mobile notification when the delivery is approved and ready
to be send
7. Have a reminder of his/her booking time through the
SMS/mobile application.
3. Casher page :
1. The cashier approves the bookings.
2. The cashier confirms the orders and sends them to kitchen.
3. will be notified via SMS, in case there is a new order or
booking made.
27
3.3 Requirements prioritization and negotiation
As we noted from above, this system divided into 3 increments, Ordering,
customer feedback and management report, delivery & booking
1.
Ordering: includes all the functionalities needed to create a new
order, process it and serve the customer.
2.
Customer feedback and management report: customer able to
send feedback through the website or the mobile application,
manager able to receive reports of this feedback through the
manger page.
3.
Ordering delivery : customer able to send order through the
website , use his/her visa card number to confirm the order ,
cashier able to approve the order and send it to the kitchen ,
manager able to see all the received orders and who approve it
, manager able to edit the menu
3.1.
Booking a table : customers are able to book a table at a
specific time/date/location use his/her visa card number
to confirm the booking ,the cashier approves the
bookings, manager able to see who approved the book,
manger able to edit table numbers and location
3.2.
Mobile application integration: website connected with
mobile application with extra features, customer able to
have notification when the delivery is approved and ready
to be send, also able to have a reminder of his/her
booking time, at least 3 employees in the restaurant will
be notified via SMS or mobile application, in case there is
a new order or booking made.
28
3.4 Requirements specification
See Appendix A: Use cases and scenarios
The requirements specifications are 10 Structured English and 5 of them are
supplied with scenarios.
3.5 Requirements validation
Through the validation process we used the following techniques:
1. Group Session: we arranged meeting and interview with the stakeholders
and proposed the requirements that resulted in the previous process to
gain feedback.
2. Walkthroughs: checking the feasibility, opinion and approval on each
requirement from sector specialists.
3. Perspective-based reading: each single use case is reviewed
independently by all team members.
The validation process resulted in the following conflicts.
Conflicts:
● Exchanging tables between waiters: there was a conflict between
the manager requirement and what the waiters requested to be
able to swap tables with each other, the manager want to identify
the waiter who served each table, to solve this conflict the system
will simply store the waiter who opened the table and a list of all the
waiters that served each order.
● Not all the customers have a visa card: so it would be better if we
connect the application with a SMS service, in this service the
customer would pay a small refundable fee(after completes the
checkout) in order to confirm his order/booking.
29
3.6 Requirements management
Melon was developed using Agile method , so any changing in requirements has
three possibilities , first , requirements change before release was developed ,
in this case no need for any plan because it's easy to change them , second
requirements change while the development process , and after module has
been released , in this case the whole module should be change according to
what actors asking for .
30
CHAPTER FOUR
SYSTEM UML DESIGN
1. Use case diagram
1- Packages
31
2- Reports
3-Item
32
4- Orders
33
34
5- Tables
35
36
2. Class diagram -–
37
38
APPENDIX
Appendix A: Use cases and scenarios:
1- Book a table / Portal
Use Case Specification
Document
HR Module
Use Case Name:
Book a table / Portal
Use Case ID:
1.1.1
Component:
Booking Panel
Brief
Description:
This use case shows how can the customer book a table from the
portal website
Purpose:
Actors:
Trigger
Stimulus:
Preconditions:
Customer
through the booking page from menu "make a Reservation"
Portal/System Idle
Diagrams Links:
UC
UC1
Use Cases Accessed By this use case:
ID
Name
UC(1.1.1)
Normal website access
Description
Multiplicity
UC2
MC
Main Course Steps
Step Description
Data
from the booking page customer select tables to
MC.1
book a new one
a new popup window will be displayed to allocate
MC.2
table
MC.3
system will check if this table is valid or not
system will display: please chose another one if it
MC.3.1
is not valid
MC.3.2
4
EX1
Branches Req/Rul/Is/Fe
pay for the booking transaction
system will display: table is valid and allocate it
Post Conditions
Exception1:
Step Description
back to the Manger Panel, waiting the user to select another action
Image error
Data
Branches Req/Rul/Is/Fe
39
EX1.1
System display "Transaction failed, error if customer
does not pay"
EX1.2
EX1.P
Post Conditions
EX2
Exception2:
Step Description
AC1
Data
EX2.1
System display "Transaction failed, error Wrong input
in one of the fields"
EX2.P
Post Conditions
AC1
AC1.2
Alternate Course 1:
Step Description
Data
The System detects invalid input in fields and
highlight it with red star
The System prompts the user to enter valid input
AC1.P
Post Conditions
R
Rules
AC1.1
Name
R1
Input error
Branches Req/Rul/Is/Fe
AC1
Transaction Failed Error
Branches Req/Rul/Is/Fe
MC.2
Importance
Access
Permission
Description
Release
The manger(user) has
permission to access the
manager panel
Update History
Author
Date
Anwar Qashoo
11/19/2015
Ver
Description of Change
40
2- Add a new item / POS
HR Module
Use Case Specification Document
Use Case Name:
Add a new item / POS
Use Case ID:
1.1.1
Component:
Brief
Description:
Manager Panel
the use case shows how to add a new item to one of the categories
Purpose:
Actors:
Manager
Trigger
Stimulus:
through the manager panel with permission from menu Add new
item
Preconditions:
System is running, System in idle state
Diagrams Links:
UC
UC1
Use Cases Accessed By this use
case:
ID
Name
UC(1.1.1)
Description
Multiplicity
Manger Panel access
UC2
MC
Main Course Steps
Step Description
MC.1
Data
MC.2.1
from the manger panel user selects Add new item
a new popup window will be displayed with fields
for user to be filled
user inputs item name , price, expire date
MC.2.2
select category from drop down menu
MC.2.3
user is prompted to browse device files to select
item image to be uploaded
MC.2.4
when finished user press submit
MC.2
MC.3
MC.4
,System checks if the fields input is proper
,system checks image file format and size not
exceed max size
Branches Req/Rul/Is/Fe
EX1
EX2
41
MC.5
MC.P
EX1
EX1.1
EX1.2
system save input and displays message,
“transaction success
Post Conditions
back to the Manger Panel, waiting the user to select another action
Exception1:
Step Description
Data
System display "Transaction failed, error Image size
exceeds the max size"
System display "Transaction failed, error image format is
not compatible size"
EX1.P
Post Conditions
EX2
Exception2:
Step Description
AC1
Data
EX2.1
System display "Transaction failed, error Wrong input in
one of the fields"
EX2.P
Post Conditions
AC1
AC1.2
Alternate Course 1:
Step Description
The System detects invalid input in fields and
highlight it with red star
The System prompts the user to enter valid input
AC1.P
Post Conditions
R
Rules
AC1.1
Name
R1
Image error
Branches Req/Rul/Is/Fe
Input error
Branches Req/Rul/Is/Fe
AC1
Data
Transaction Failed Error
Branches Req/Rul/Is/Fe
MC.2
Importance
Access Permission
Description
Release
The manger(user) has
permission to access the
manager panel
Update History
Author
Date
Abdallah Habib
11/19/2015
Ver
Description of Change
42
3-Create an order/POS
HR Module
Use Case Specification Document
Use Case Name:
Use Case ID:
Create an order
1.1.5
Component:
Brief Description:
Purpose:
POS Home page
The use case shows how the cashiers and waiters can select, edit
and delete the orders
Actors:
Trigger Stimulus:
cashier and waiters
through the Home page with permission from menu new order
Preconditions:
Normal Access to POS
Diagrams Links:
UC
Use Cases Accessed By this use case:
ID
Name
Description
Multiplicity
UC1
UC2
MC
Main Course Steps
Step Description
MC.1
cashiers and waiters select open a new table
:from the menu panel cashiers or waiters new
MC.2
Order
MC.2.1
choose the items from categories
MC.2.2 identifying the quantity and the price for each item
a new page will be displayed with menu of
MC.3
restaurant items with its price
cashiers or waiters choose the item and add them
MC.3.1
to order panel
MC.3.2
when finished he press submit
cashiers or waiters
can add or delete an
MC.4 item from order
open the order from the order panel and modifying
MC.4.1
the items there
Data
Branches Req/Rul/Is/Fe
43
MC.5
cashier or waiter choose payment via
MC.5.1
visa card number
MC.5.2
MC.6
Cash
enter the discounts to calculate the total price
MC.7
MC.P
system check if the credit number is valid
system save data and displays message,
“transaction success
Post Conditions
EX1
Exception1:
MC.8
input error
Step Description
EX1.1
AC2
back to the home page
Data
Branches Req/Rul/Is/Fe
System display "Transaction failed, if there is a
disconnection in the system"
EX1.2
EX1.P
Post Conditions
EX2
Exception2:
Step Description
AC1
Data
EX2.1
System display "Transaction failed, error Invalid visa card
number"
EX2.P
Post Conditions
AC1
Alternate Course 1:
Step Description
visa erorr
Branches Req/Rul/Is/Fe
AC1
Data
AC1.1
The System prompts the user to enter valid input
AC1.2
The System detects invalid visa card number
AC1.P
Post Conditions
Transaction Failed Error
Branches Req/Rul/Is/Fe
MC.2
Rule
Name
R1
Importance
Access Permission
Description
Release
The cashier or waiter has
permission to access the
order panel
Update History
Author
Date
Anwar Qashoo
11/21/2015
Ver
Description of Change
44
4- Edit previous order / POS
HR Module
Use Case Specification Document
Use Case Name:
Use Case ID:
Edit previous order / POS
10
Component:
panel cashier
Brief Description:
the use case shows how to make update for the previous orders
Purpose:
Actors:
cashier
Trigger Stimulus:
through the major POS panel with permission from menu update
orders
Preconditions:
System is running, System in idle state
Diagrams Links:
UC
UC1
Use Cases Accessed By this use
case:
ID
Name
UC(1.1.1)
Description
Multiplicity
POS Panel access
UC2
MC
Main Course Steps
Step Description
MC.1
MC.2
MC.3
Data
Branches Req/Rul/Is/Fe
from the POS panel user selects Update orders
a new popup window will be displayed the
Previous orders ordered by Date
user selects the order that needs updating
MC.5
user then updates the required field item, count
,price ,item type…etc.
when finished user press update
MC.6
,System checks if the fields input is proper
EX1
MC.7
system saves the change to the database
system save input and displays message,” update
success"
EX2
MC.4
MC.8
45
MC.P Post Conditions
EX1
back to the POS Panel, waiting the user to select another action
Exception1:
data consistency
Step Description
Data
Branches Req/Rul/Is/Fe
System display "Update failed, error The updated date is
un Credible"
System display "Transaction failed, error input format is
EX1.2
not compatible"
EX1.1
EX1.P Post Conditions
AC1
AC1
Alternate Course 1:
Step Description
The System detects invalid input in fields and
AC1.1
highlight it with red star
AC1.2 The System prompts the user to enter valid input
Data
Transaction Failed Error
Branches Req/Rul/Is/Fe
AC1.P Post Conditions
R
Rules
Name
R1
N/A
Importance
Access Permission
Description
Release
The user has permission to
update orders
Update History
Author
Date
Hamza abu sabra
11/19/2015
Ver
Description of Change
46
5- New Delivery Order / Portal
HR Module
Use Case Specification Document
Use Case Name:
Use Case ID:
New Delivery Order / Portal
1.1.2
Component:
Brief
Description:
Order a delivery page
The use case shows how to create new delivery order and collect
order items through the online menu via the portal website
Purpose:
Actors:
Customer
Trigger Stimulus:
from the menu panel customer selects "Order online
Preconditions:
Normal Access to website
Diagrams Links:
UC
Use Cases Accessed By this use
case:
ID
Name
Description
Multiplicity
UC1
UC2
MC
Main Course Steps
Step Description
Data
from the menu panel customer selects Order
MC.1
online
a new page will be displayed with online menu ,
MC.2
item with its price
the customer choose the item and add them to
MC.2.1
cart
the customer input name ,email ,phone ,telephone
MC.2.2
,address
MC.2.3
when finished, customer press submit
MC.2.4
system check if the field input is proper
Branches Req/Rul/Is/Fe
EX1
47
MC.3
:the customer choose authentication via
MC.3.1
-visa card number
MC.3.2
-sms message
system check if the credit number or sms code is
valid
system save data and displays message,
“transaction success
Post Conditions
Exception1:
MC.4
MC.5
MC.P
EX1
Step Description
EX1.1
AC2
EX2
back to the home page
input error
Data
Branches Req/Rul/Is/Fe
System display "Transaction failed, error Wrong input in
one of the fields"
EX1.2
EX1.P
Post Conditions
EX2
Exception2:
Step Description
AC1
Data
EX2.1
System display "Transaction failed, error Invalid visa
card number"
EX2.P
Post Conditions
AC1
Alternate Course 1:
Step Description
AC1
Data
AC1.1
The System prompts the user to enter valid input
AC1.2
The System detects invalid visa card number
AC1.P
Post Conditions
AC1
Alternate Course 2:
Step Description
Data
The user sends a sms message to the system
AC2.2
The System replies with confirmation code
The user enter the received confirmation code to
the specific field to confirm the order
AC1.P
R1
Post Conditions
Name
Transaction Failed Error
Branches Req/Rul/Is/Fe
MC.2
AC2.1
AC2.3
visa erorr
Branches Req/Rul/Is/Fe
Transaction Failed Error
Branches Req/Rul/Is/Fe
MC.5
Importance
Access Permission
Description
Release
The customer has permission
to access the order page
Update History
Author
Date
Ver
Description of Change
48
Osama Khalaf
11/19/2015
6-Make a reservation / Portal
Use Case Specification
Document
HR Module
Use Case Name:
Use Case ID:
Make a reservation / Portal
2.2.2
Component:
Reservation page
Brief Description:
the use case shows how to book a table online
Purpose:
Actors:
Customer
Trigger Stimulus:
through the website menu to "book a table" tab
Preconditions:
Normal Access to website
Diagrams Links:
UC
Use Cases Accessed By this use case:
ID
Name
Description
Multiplicity
UC1
UC2
MC
Main Course Steps
Step Description
Data
from the website menu panel user selects book a
MC.1
table
a new popup window will be displayed with fields for
MC.2
user to be filled
MC.2.1 user chooses the date ,time ,table ,number of people
MC.2.2
Branches Req/Rul/Is/Fe
when finished user press submit
The system makes sure of the validity of the date
and time
system save input and displays a form for the user to
MC.2.4
fill
MC.3
user inputs name , visa card number or send a sms
MC.2.3
MC.4
system checks if the fields input is proper
MC.5
system save input and displays message
EX1,AC1
AC2
EX2
49
MC.P
,"transaction success , please wait the confirming "
Post Conditions
waiting for the confirmation from the restaurant
EX1
Exception1:
Input error
Step Description
Data
EX1.1
System display " No tables are available within the date
and time request."
EX1.P
Post Conditions
EX2
Exception2:
Step Description
AC1
Data
EX2.1
System display "Transaction failed, enter a valid visa card
number "
EX2.P
Post Conditions
AC1
Alternate Course 1:
Step Description
The System displays a list of valid tables with date
and time
The System prompts the user to select one of the
available appointments
AC1.1
AC1.2
AC1.P
Post Conditions
AC1
Alternate Course 2:
Data
Transaction Failed Error
Branches Req/Rul/Is/Fe
MC.2.4
Transaction Failed Error
Data
AC2.1
The user sends a sms message to the system
AC2.2
The System replies with confirmation code
The user enter the received confirmation code to the
specific field to confirm the order
Post Conditions
Rules
Name
Input erorr
Branches Req/Rul/Is/Fe
MC.3
Step Description
AC2.3
AC1.P
R
Branches Req/Rul/Is/Fe
Importance
Branches Req/Rul/Is/Fe
Description
R1
Update History
Author
Date
Ver
Description of Change
MC.5
Release
50
Rudab Abu Yaqoub
22/11/2015
7-Customer order status notification / Portal
HR Module
Use Case
Name:
Use Case ID:
Use Case Specification Document
Customer order status notification / Portal
1.1.3
Component:
Brief
Description:
Notification for customer order
The use case show that customer receive sms message or Facebook
notification to notify them about order status if order accept , ready to
deliver , duration of delivery
Purpose:
Actors:
Trigger
Stimulus:
Preconditions:
Customer
order status change
The customer either ordered or made a reservation online
Diagrams
Links:
8-Send Customer Feedback/Portal
HR Module
Use Case Specification Document
Use Case Name:
Use Case ID:
Component:
Brief
Description:
Send Customer Feedback/Portal
9
Portal
the use case shows how the customer can give feedback about the
restaurant from the portal
Purpose:
Actors:
Trigger
Stimulus:
Preconditions:
Diagrams Links:
Customer
"? through the portal website from menu "tell us what you think
None/Normal access to portal website
51
9-Add a new table / POS
HR Module
Use Case Specification Document
Use Case Name:
Use Case ID:
Add a new table / POS
1.1.1
Component:
Manager Panel
Brief Description:
the use case shows how to add a new table
Purpose:
Actors:
Trigger Stimulus:
Manager
through the manager panel with permission from menu Add new table
Preconditions:
System is running, Manager is Logged in to the portal website
Diagrams Links:
10-Approval of the reservation
HR Module
Use Case Specification Document
Use Case Name:
Approval of the reservation
Use Case ID:
3.3.3
Component:
Manager/Cashier page
Brief
Description:
the use case shows how the cashier give a approval for the customer
reservation
Purpose:
Actors:
cashier
Trigger
Stimulus:
the cashier give his approval through a sms or the portal webpage
Preconditions:
the cashier is Logged in to the portal
52
REFERENCES
Books:
Ian Sommerville, SOFTWARE ENGINEERING, 6th Edition.2010.
Pascal Roques, “UML in Practice: The Art of Modeling Software Systems
Demonstrated through Worked Examples and Solutions”, 1st Edition, Wiley, 2004.
Download