✍️ Get Writing Help
Uncategorized

ICT340 Application Analysis and Design End-of-Course Assessment 2026

ICT340 End-of-Course Assessment 

Instruction To Students:

  1. This End-of-Course Assessment paper comprises 6 pages (including the cover page).
  2. You are to include the following particulars in your submission: Course Code, Title of the ECA, SUSS PI No., Your Name, and Submission Date.
  3. Late submission will be subjected to the marks deduction scheme. Please refer to the Student Handbook for details.
  4. 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

  1. Locate the instance, anOrder, of Order with the orderId, linked to the orchestrating object via hasOrders.
  2. Retrieve all instances of the OrderedFoodItem objects, linked to anOrder via consistsOf.
  3. 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
  4. 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 —–

Write My Assignment
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

The post ICT340 Application Analysis and Design End-of-Course Assessment 2026 appeared first on Singapore Assignment Help.

Expert academic writer and education specialist helping students in the UK, USA, and Australia achieve their best results.

Need help with your own assignment?

Our expert writers can help you apply everything you've just read — to your actual assignment.

Get Expert Help Now →
WeCreativez WhatsApp Support
Our customer support team is here to answer your questions. Ask us anything!
👋 Hi, how can I help?