In Progress

Distributed Computer Systems

you are required to design & implement online food delivery system using Java RMI technology. This involves writing both the server and the client program(s). Client programs can use either a command line interface or a graphical user interface. The program should have the following features:

1. A new user should be able to register a new account to the online food delivery system. The user should be able to register by using his/her username and password. If the username exists in the system, the user will be notified to enter a different username.

(You may use Array, List, Vector, HashTable or any other Java collection as you preferred BUT you are NOT ALLOWED to use any SQL database system).

2. After the user has registered to the online food delivery system, the user should be allowed to log in with username and password he/she registered earlier.

3. When log in, the user should be able deposit money (add money to his/her account), and the online food delivery system should update the cash balance of the user. At any point of time, the user should also be able to inquire current balance of his/her account from online food delivery system.

4. The user should be able to request a list of available food menu from the online food delivery system. The system should return a list of available food menu to the user as the following:

1. Order: Pizza

Quantity: 4

Module: DCOMS Asia Pacific University College of Technology and Innovation Page 2 of 4

Price: RM12

Total: RM48

2. Order: Satay

Quantity: 2

Price: RM10

Total: RM20

(You may create your own examples of the menu list above. To store the food menu detail, you may use HashTable or any other Java collection or external database as you preferred).

5. Based on a list food menu given, the user should be able to purchase food by selecting from the list above. Upon confirmation, the user cash balance from his/her account should be deducted from the food price. It should not be possible to purchase the food if the cash is not sufficient from the user account. If the server crashes during purchasing transaction, what would happen? How would your RMI program handle this problem?

6. Finally, given two users in the system e.g., usernames A and B, User A should be able to transfer cash voucher from his/her account to other user's B account.

7. Implement secure communication between session with the user and the food online system (i) when user purchases food and (ii) when the user performs cash transfer (Hint: use either SSL, SSH or any other security protocols for security needs).

8. What happen if multiple users use the online food system at the same time? What if/she purchases the same food item from the online system at the same time? What issues you might face? How can we resolve the issues? Implement your program to resolve the potential issues. Indicate exactly in the report of the code segment that you have written to resolve the issues and please provide detailed explanations.

I have intentionally specified few design details. In this assignment, you are expected to make design choices yourself. Your focus should be on functionalities. Unless you have implemented all the required features, do not spend so much time on GUI interfaces and any other fancy features. I will focus on your use of RMI in grading this portion of the assignment.

Skills: Java, Software Architecture

See more: food system gui java program, writing systems, writing secure code, writing programs for computer, writing computer programs, writing computer code, writing communication technology, writing a computer program, what is computer program, voucher design vector, vector security, vector programs in java, vector problem examples, use of collection in java, transaction focus, the cash store, sql server price list, programs for computer, programs 4 computer, order assignment writing online, online report writing account, make money writing code, make money with java, line line segment, java programs online

About the Employer:
( 3 reviews ) Kuala Lumpur, Malaysia

Project ID: #4804593

Awarded to:


Hi, I would like to do this project please. Let me know if you are interested. Thanks.

$85 USD in 3 days
(1089 Reviews)

7 freelancers are bidding on average $342 for this job


10+ years Java experience. 500+ reviews. I can do this RMI assignment with ease.

$199 USD in 3 days
(464 Reviews)

Hi, I'm Java expert and can help you with this project, Thank You

$249 USD in 5 days
(410 Reviews)

I'm an experienced Java programmer and I can easily finish your project. Please contact me if you are interested.

$129 USD in 4 days
(84 Reviews)

Let me help you

$500 USD in 10 days
(15 Reviews)

Kia ora! [url removed, login to view] are a NZ based web and software design company who have seen you here on the freelance market and are really excited about working with you and treating you to the full service, professional ex More

$618 USD in 10 days
(0 Reviews)

I can do this task

$611 USD in 10 days
(0 Reviews)