| University | Singapore University of Social Science (SUSS) |
| Subject | ICT340: Application Analysis and Design |
ICT340 End-of-Course Assessment

Instruction To Students:
- This End-of-Course Assessment paper comprises 6 pages (including the cover page).
- You are to include the following particulars in your submission: Course Code, Title of the ECA, SUSS PI No., Your Name, and Submission Date.
- Late submission will be subjected to the marks deduction scheme. Please refer to the Student Handbook for details.
- Appendix 1 is attached at the end of paper.
Important Note
ECA Submission Deadline: Monday, 06 April 2026, 12 noon
ICT340 ECA Questions
Question 1
Read the system requirements of the Gruberoo application in the Appendix and submit answers to the following:
Question 1a
Formulate a use case diagram to depict the Gruberoo application design.
Your use case diagram should show the actors, the use cases and their relationships.
(14 marks)
Question 1b
The following is an extract of the requirements of the Gruberoo application:
“The Gruberoo application is an online food delivery service that connects consumers with local restaurants and retailers. It allows customers to order food through its application for quick, on-demand delivery, typically within 30 minutes. It aims to transform the way people shop and eat by bringing local options directly to consumers’ doorsteps.”
Analyse the above extract to identify and explain any TWO (2) ambiguous, incorrect, incomplete or inconsistent inadequacies of the system design as compared to the information given in the Appendix.
Note that in your answers, you are not to use imagination to add anything not mentioned in the Appendix. Further, do not include general commentaries in your answer.
(4 marks)
Question 2
Develop a structural model for the Gruberoo application design by submitting your answers to the following:
Question 2a
Complete the class description by identifying classes, their attributes and any hierarchical relationship(s) that would be required for the application.
(14 marks)
Question 2b
Appraise the associations among the classes and hierarchical relationship(s) that would be required for the application. Construct the class association diagram in UML as your answer. Ensure that you do not include any derived or redundant association in your diagram.
(14 marks)
Question 3
Analyse the requirements for the Gruberoo application and derive an updated class diagram which lists all the food items in an order. Part of the diagram is show in Figure Q3 below.
Note that this may not be applicable to Question 2 above.

Assume that the Order class has the attribute orderId and the FoodItem class has the attributes foodName and price. Consider the following walkthrough that illustrates how the application retrieves the foodName and price of all food items associated with an order:
Objective: To retrieve a list of food name and price associated with an order Given: an order identifier, orderId
- Locate the instance, anOrder, of Order with the orderId, linked to the orchestrating object via hasOrders.
- Retrieve all instances of the OrderedFoodItem objects, linked to anOrder via consistsOf.
- For each instance of the OrderedFoodItem object, anOrderedFoodItem:
3.1 Retrieve the FoodItem object, aFoodItem, linked to anOrderedFoodItem via isA.
3.2 Get the attributes foodName and price of aFoodItem
3.3 Add foodName and price to a list - Return the list
Question 3a
Develop the dynamic model for the application function, by drawing the sequence diagram for the walkthrough where the food name and price of all food items associated with the order are returned.
(13 marks)
Question 3b
Using the Python programming language, implement the method that represents a message that is sent by another object to the object of the following classes in the sequence diagram of Question 3(a):
i. the orchestrating class
(5 marks)
ii. the Order class
(7 marks)
Question 4
Demonstrate the construction of a component in the Gruberoo application by submitting your answers to the following:
Question 4a
Identify the different states of the Order object.
(5 marks)
Question 4b
Draw the state diagram for the Order object as it passes through the system.
(12 marks)
Question 5
Demonstrate the application of the observer pattern in the Gruberoo application by submitting your answers to the following:
Question 5a
Develop a structural model of the system that uses the observer pattern by constructing the class association diagram that allows a customer to register interest in being notified of new special offers from chosen restaurants. This notification uses the “push” method.
(6 marks)
Question 5b
Using the Python programming language, implement the concrete classes for the structural model in Question 5(a).
(6 marks)
Appendix 1
Gruberro is a food delivery application (app) that allows customers to order food from restaurants and have their order delivered to a specified address. Restaurant personnel may sign up with the restaurant name and email address. A unique restaurant ID will be automatically assigned by the app to identify the restaurant. The restaurant personnel can then specify the items in their menu, identified by menu names, that are available for delivery. They can also implement special offers, such as a public holiday discounts or a set meal at an attractive price.
Customers who have signed up to the app with their name and email address, can place an order with any participating restaurant. The app offers robust ways to search for restaurants and food items. Each food item has a unique name, description and price. Once a suitable restaurant is chosen, the customer can create an order consisting of multiple food items and specify a delivery date, time and address. When the order is submitted, a unique order ID is associated with the order and the date and time of the order are recorded.
The customer will then pay for the order using their preferred payment method (e.g., credit card, PayPal or cash on delivery). Upon successful payment, the app will notify the restaurant, which would then confirm or reject the order. If the order is rejected, Gruberoo will refund the customer’s payment. If the order is confirmed, the restaurant will prepare the order shortly before delivery.
The customer can still cancel the order after it is confirmed by the restaurant, but once preparation has started, the customer can no longer cancel the order. The restaurant will refund the customer’s payment for each successfully cancelled order. Rejected or cancelled orders will then be deleted from the app. The details of successfully delivered orders will be stored in the system for 1 year, after which they will be archived and removed.
Gruberoo is constantly trying to introduce new and useful features to its users. Some proposed features include:
- Dividing restaurant menus into sub-menus.
- The ability to customize individual food items. (e.g., extra chilli, changing fries to onion rings for an additional cost, etc.) when placing orders, which may affect the price;
- Allowing customers to opt in to notifications for new special offers from chosen restaurants;
- Enabling customers to save a favourite order that can be placed with one click.
—– END OF ECA PAPER —–
ICT340 Application Analysis And Design Assignment Help For SUSS Students
Native Singapore Writers Team
- 100% Plagiarism-Free Essay
- Highest Satisfaction Rate
- Free Revision
- On-Time Delivery
When you start working on the ICT340 Application Analysis and Design ECA, it can feel confusing—especially with UML diagrams, sequence logic, and Python implementation all combined in one assignment. Many students get stuck while drawing correct use case or class diagrams, or translating them into code properly. If you’re facing similar issues, you can consider software engineering assignment help for step-by-step guidance. You can also explore suss assignment writing service or check ICT340 assignment samples to see how these answers are usually structured. With Singapore Assignment Help, it becomes easier to stay on track and complete everything correctly.
Looking for Plagiarism free Answers for your college/ university Assignments.
- MGT304 Business Consultancy Project Assessment Brief 2026 | MDIS
- FMT306 Strategic Asset, Property and Facilities Management End-of-Course Assessment January Semester 2026
- PSY373 Psychology of Nonverbal Behaviours End-of-Course Assessment January Semester 2026 | SUSS
- MGE302 Applied Economics Individual Assignment 2026 | SIM
- POL351 Comparative Politics in Southeast Asia End-of-Course Assessment 2026 | SUSS
- SOC313 Sociology of Education End-of-Course Assessment 2026 | SUSS
- BPM213 Procurement Management Tutor-Marked Assignment 2, 2026 | SUSS
- MNGT3013 Innovation Management Assessment 1, 2026 | University of Newcastle
- BPM203 Construction Project Management Group-based Assignment 01, 2026 | SUSS
- BUS353 Project Management End-of-Course Assessment 2026 | SUSS
