Download as pdf or txt
Download as pdf or txt
You are on page 1of 9

ITECH 7410:

Assignment 2
Software Engineering
Methodologies
Submitted by-

Pardeep Kaur
Student ID: 30379858

Simranjeet Kaur
Student ID: 30357001
2

INDEX

CONTENTS PAGE NO.


1. Operations that are likely to be needed 3-4
for the food order
2. Mathematical description for the state 4
space of the system and present it in a
schema in the Z specification
language
3. Three possible schemas for Add User, 5
Add Driver, Add Company
4. Schema that describes a function to 6
look up the phone number for a name
5. Robust schema to remove a company 6
and associated information from the
UBER eats database.
6. Z specification for card information 7
that includes the information about
account numbers, name, expiry date
and CVV number.
7. An extensive analysis of various risk 7
and possible way to cater to the risks
8. Conclusion about what we learnt 7-8
9. References 8-9
3

1. State information and the operations that are likely to be needed for the
food order.

A brief introduction about Uber


First, we will discuss briefly Uber Technologies, Inc., which is popularly known as
Uber that offers many services like vehicles for hire, food delivery, package
delivery, couriers, and freight transportation. The company is headquartered in
San Francisco and has operations in over 900 metropolitan areas across the world.
It is one of the largest providers in the gig economy.
According to the assignment, we have to explain the process of Uber Eats. Uber
Eats is of the finest American online food ordering and delivery platform launched
by Uber in 2014. It is one of the most popular food ordering apps which is used by
millions across the world.
The Uber Eats application is a user-friendly application in which customer can
order their food according to the choice. The customer can order food from any
restaurant, cafe, or any food place. The food is generally delivered in 30 minutes
or an hour. The delivery man delivers the food from the restaurant chosen by the
customer to the exact location of the customer. As we are working in a group, we
are assigned to a team that is developing software for Uber Eats. Our main task is
to let the user select the food from the restaurant list, secondly preparing the foods
and make it ready for the customer. Then, the delivery person is responsible to
collect the food from the restaurant and then deliver it to the customer location.
Uber Eats is an online application platform to order and deliver the food online.
Using the application, customers can go through all the restaurants and their
menus. The food which is ordered by the customer will be notified to the restaurant
team.
To order food,
o Users will simply register themselves with Uber Eats, by following a
few steps which is simply a registration which includes Name,
address, location, phone number, and card details. Users must do
all these steps in order to authenticate while ordering. The customer
will simply put the food items into the cart and initiate the amount
from the card and confirm the order.
o Then the user is all set to use the app, in which a user can go through
different restaurants, cafes, and food points,.
o User simply selects the restaurant as per their needs. Users can
even look into menus and order the food according to their choice.
o The restaurants will be notified and receive the confirmation for the
order to prepare.
4

o The notification will be sent to the driver which is nearer to the


location of the customer that ordered. The notification will be sent to
the nearest delivery person only in order to ensure the fastest
delivery.
o The driver reaches the restaurant to receive the food and will set
towards the location of the customer.
o User can easily track all the details like food being prepared; food is
on way, the time at which order was prepared, the time at which the
food will deliver at the doorstep.

2. Mathematical description for the state space of the system and present it in
a schema in the Z specification language
5

3. Three possible schemas for Add User, Add Driver, Add Company
6

4. Schema that describes a function to look up the phone number for a name

Each and every schema has the particulars of the customers to whom the
deliveries to be given. These details are the details of the customer which includes
name, contact, and the item ordered. The customer details are checked properly
by the delivery person before giving it to the customer.

5. Robust schema to remove a company and associated information from the


UBER eats database.
7

6. Z specification for card information that includes the information about


account numbers, name, expiry date and CVV number

7. An extensive analysis of various risk and possible way to cater to the risks

The Z notation is one of the most popular languages used in the field of computer
science. We have used it just to eliminate the difficulties. All the schemas are made
using Z specification language, by evaluating the performance the necessary
specifications come out. As we are working on the assignment, the Z specification
language has complexities as it has a complicated design. This is associated with
the risk.
In the given assignment, the main risks are involved are:
• The specific location of the person
• Restaurants near the location of customer do not exist

8. Conclusion

This was the group assignment that helped us to work on this together. It was a
very knowledgeable and new concept for us. The Z notation is generally targeted
at the clear specification of computer programs. This assignment helped us to do
detailed research about the Z notation. The design of the Z notation is complicated.
It took much time to know the important concepts. But, after going through the
important concepts, we came to know about the detailed concept. This application
is just to order the food ad get it delivered to the specific location of the customer.
Question one provides the important idea of this assignment. The complete
process and the important operations are carried out. I have made schemas
wherever asked in the question. I have included the introductory part of the
8

assignment which tells about the basic functionality of the app. We faced
challenges while solving this assignment, but we easily overcome this problem by
having a deep understanding of the Z specification.

9. References

1. Software Requirements Engineering. (2006). Retrieved from.


https://people.eecs.ku.edu/~hossein/Teaching/Fa09/814/Readings/z.pdf

2. Linda B. Sherrell. (1994). FunZ: An Intermediate Specification Language.


Retrieved from.
https://watermark.silverchair.com/38-3-
193.pdf?token=AQECAHi208BE49Ooan9kkhW_Ercy7Dm3ZL_9Cf3qfKAc
485ysgAAAqcwggKjBgkqhkiG9w0BBwagggKUMIICkAIBADCCAokGCSq
GSIb3DQEHATAeBglghkgBZQMEAS4wEQQMeXt0TiQ2UxwgHZQ0AgE
QgIICWvqSAn5HwL-q73I75q-
Tj8_I3wGF7vv04aytDiwGEfbS_g88jx9LRsiJ6uvsOQCV33luFVvRJMecIO2
UxHsV4SPEOJ0x_TT641taa57yUIYX62WreroVWmKY1CBBsdadwK3xA3
HgUPF-
cbn4Llj4N9xve3YkK5dqtkEIt24lLN1747o6nhMbGHrPEt31CRBfgmZyT0Cj
AdFGdYg0ng6mTN7tzAtqhwzn5XPIJNsw55AuwDXGCQgnKvqdp_iZbMR
s90f7s8jURjuneHbVvPIu6392fik-
hHqe8KwOjHZrfEm5Uq9GB5R6xULAT49MZmikCKj3FzifgWLKjgxDQ3Ed
Rxf6PFIeqr70ZwAlUSYg9Oa5YVF3dCNyyS4BCLnMt0wJteo6hfW81ksZU
PZBw0L9aYyd5GGNXy-66zzTOSwpAqXs-
0Snq2iOlQuSxuhYndLoy1KhScOWLLJuczXS83YxkfYGKkegknpomkKvcD
Uvcs1w22ZEVSp5f8AtsSzYdBXitXFtXfV1RKEJgWnKoi4QG1h26Lo96BF
EE4U-
ZnYkk3DJktbsOroNPyck_UBiuZymWWHLS_B_g2hqsouTETwT2y_R3MN
1QdaR1KQ8kKtDiPRNO4XYDFZxisUc7ZeK6sDBz_ohxt5YnIXhM7EraJlw
MmHtqFnle9Ys815APKTdxMGtuBRKVc9x_MbTqkbJCQhJQD-
YkthbxplvgUyrE89V1TZKZjlcyr_HxTVE3lJPX2CKokdI6ktMBLZ6yx6T-
jDSPxpjyJNbfAiZG7aXOEDxhD73F0sRPvnJtkTL

3. J. M. Spivey. (1992). The Z Notation: A Reference Manual. Retrieved from.


ftp://ftp.sei.cmu.edu/pub/prp/models/ZRM_chapter1.pdf
9

4. Formal Specification— Z Notation— Syntax, Type and Semantics. (August


24, 2000 ). Retrieved from.
http://www.open-std.org/jtc1/sc22/open/n3187.pdf

You might also like