ICT340 Application Analysis and Design Tutor-Marked Assignment Questions | SUSS

Published: 17 Sep, 2025
Category Assignment Subject Computer Science
University Singapore University of Social Science (SUSS) Module Title ICT340 Application Analysis and Design
Assessment Title Tutor-Marked Assignment

ICT340 Application Analysis and Design Tutor-Marked Assignment Questions | SUSS

Answer all questions. (Total 100 marks)

Read the following negotiated system requirements (NSR) for a Food Ordering Application and answer the questions that follow.

HungryEatNow is a small start-up company that is planning to launch a food pre-ordering application tailored for students and food stall staff at Next University. The key objective of this application is to reduce long queues during peak meal periods, improve order fulfilment efficiency, and provide a convenient application for food ordering within the university community.

The HungryEatNow team is in the early planning stages and is looking to engage a software design and development team to help define, analyse, and design the system before development begins.

The proposed system must integrate with the university’s login system to allow students to register using their university login ID and password. Once authenticated, users can browse participating food stalls, view menus, place food orders, and select a pick-up time. Only digital payment for orders is available. The user can then collect their order from the respective food stall using the QR code generated. The application should support real-time menu updates, including item availability, pricing, and estimated preparation times.

There are two types of student users: Regular and Priority users. Priority users (such as those with accessibility needs or leadership roles) have additional privileges — such as increased daily order limits or access to exclusive pick-up windows — compared to regular users.

The system must also support functions for food stall staff. Each food stall would be given a staff account to manage their stall profile, update menu items and time slots, view incoming orders and track sales performance. Staff must also be able to indicate when items are unavailable or when operational issues may affect fulfilment. Staff may cancel orders when necessary, and track user behaviour (such as frequent no-shows).

To maintain application integrity, there is an enforcement policy on order collection. Students who fail to collect their orders within 15 minutes of the scheduled time are no-shows. A user who accumulates three no-shows within a week faces temporary suspension from making further orders. Staff would have the discretion to report such occurrences through the application.

An administrator manages student and staff accounts and addresses any operational disputes or policy breaches as necessary. Administrators would also manage configurations such as suspension thresholds, system notices, and business analytics.

As HungryEatNow prepares to bring this concept to life, the system analyst and designer would play a crucial role in translating their vision into a clear and structured software design — laying the foundation for a robust, reliable, and user-centric application that enhances the everyday dining experience on campus.

Question 1

Here are 5 classifications of requirements:

(a) Functional requirement
(b) Non-functional requirement
(c) Design directive
(d) Implementation directive
(e) Platitude

Analyse the NSR and for each classification above, find one requirement that satisfies it.

Justify your classification.

State clearly if no requirement is found for a particular classification. (10 marks)

Question 2

Part (a) of this question is a groupwork discussion with the start date being the first week of the Course Timetable available from e-Services through the Student Portal. If you do not see the Discussion link in the Canvas portal T-group by the end of the first week, please contact your tutor immediately.

You are asked to discuss with your fellow group members how to produce the structural model for the Food Ordering Application, i.e.:

  • the class diagram; and
  • the class description.

You must not post a complete class diagram to your group discussion board. The complete class diagram should only be submitted in your TMA solution document.

You should limit your discussions to identifying the classes, their attributes, the associations and relationships between the classes, and any invariants needed.

As part of your discussions, you are asked to submit two or three postings to the discussion board. (40 marks)

Examples of the types of postings that would gain you credit are:

  • initiating a new thread of discussion about some significant aspect of the application; e.g., pointing out a problem in the requirements, suggesting how a particular aspect of the application might be modelled in terms of classes and associations or explaining why you think an invariant is needed;
  • a response to a posting, where you attempt to resolve a problem that another group member has identified;
  • a response to a posting, in which you state clearly and give evidence of why you agree or disagree with another group member’s suggestions, expanding significantly on what has been previously presented.

In all your postings, please maintain professional courtesy and avoid any comments that may give rise to unpleasant exchanges in the discussions. Remember that your comment may be correct even if someone else says it is incorrect.

Further notes:

  • Do not include attachments in your postings.
  • Justify each comment or suggestion you make. Simply saying “I agree. This is correct.” Or “XYZ should be a class. What do you think?” is not enough. These are not meaningful discussions and will not be considered.
  • Make postings that should be between a third and half a page long.
  • Initiate a new thread of discussion in one of your postings.
  • Focus on one aspect of the application, rather than attempting to cover all aspects of the application. For instance, an association, the attributes of a particular class or an invariant. Your posting should still leave scope for other members of your discussion forum to make a significant contribution.
  • Postings that do not leave enough scope for the other members to contribute will be penalised.

Experience has shown that it is very difficult to obtain good marks for your postings if you attempt to make all your postings in a very short space of time. Time for reflection and measured judgement is an important part of this work.

The NSR has limited information on the problem and requirements for the application. Analyse the NSR in your group Canvas discussion board and discuss possible classes, their attributes, the associations and relationships between the classes, and any invariants needed.

Copy TWO (2) postings you have contributed to the discussion.

For each posting, submit a screenshot AND a text copy of the posting. (10 marks)

(i) Identify the classes for the system design. (8 marks)

(ii) Using the classes from Question 2(b)(i), develop a structural model for the system design by documenting the class description for the application.

The class description should include the classes, their attributes and any hierarchical relationship(s), omitting any foreign key associations. These could be obtained from the NSR and/or from your group Canvas discussions for Question 2(a). (9 marks)

Complete the structural model for the system design by appraising the associations among the set of classes in your solution to Question 2(b).

Construct the class association diagram in UML as your answer. Any derived association should be labelled, but you need not give the derivation. (13 marks)

Question 3

Special Note:

The information provided here is not necessarily applicable to the previous questions.

Consider the following requirement to find all food stalls that have reported no-shows for a student.

Find food stalls that reported no-shows for a student.

From this, we extract the following information:

Given a student's name, find all food stalls that have reported no-shows for that student.

From this, we can identify the use case: Find Food Stalls that Reported No-Shows, with the following specification:

Given: A student's name

Goal: For each no-show record that the student accumulates:

  • Find the food stall that reported this
  • add the food stall name to a list
  • Return the list of food stall names.

You may assume the following:

  • The Student class has an attribute, studentName
  • The FoodStall class has an attribute, foodStallName
  • When a food stall name is added to the list, duplicates are not added.

(50 marks)

ICT340 Application Analysis and Design Tutor-Marked Assignment Questions | SUSS

Figure Q3: class association diagram

(a) Using the ICT340 convention, add an Orchestrating Class to the class association diagram in Figure Q3 and show the navigation required to locate the required object at the start of the walk-through.

Your solution should show the Orchestrating Class, the association name, navigation arrow with multiplicities clearly. (4 marks)

(b) Appraise the navigation for the association accumulates, by using the tabular format in Table Q3b below:

Class being modified  
Association being implemented accumulates
Direction of navigation  
Multiplicity  
Instance variable added  
Value of instance variable  
Justification  

Table Q3b

(9 marks)

(c) Construct a dynamic model of the system by writing the complete walkthrough for the use case, Find Food Stalls who reported No-Shows for a student, using the following template:

Objective: …
Given: …

Locate …
Locate …
2.1 For each such instance …
Return …

Result: For the given student name, all the food stalls that reported no-shows for this student is returned.

(10 marks)

(d) Develop a dynamic model of the system by constructing a sequence diagram based on the walkthrough depicted in Question 3(c). (15 marks)

(e) Consider the following messages as depicted in the sequence diagram in Question 3(d):

  • the message sent to the orchestrating object;
  • the message sent by another object to the Student object.

Using the Python programming language, implement the dynamic model by coding the methods corresponding to these TWO (2) messages. Name the classes that should own the respective methods. (12 marks)

Do You Need ICT340 Assignment of This Question

Order Non-Plagiarized Assignment

Having trouble completing your ICT340 Application Analysis and Design assignment on time?  Our Computer Science Assignment Help service is the best for you! Our expert writers offer high-quality, plagiarism-free, and AI-free assignments at pocket-friendly rates. You can even check our free assignment samples before placing your order. We promise on-time delivery and 24/7 support, no matter your academic needs. From Business Management to technical subjects, we cover it all.

Workingment Unique Features

Hire Assignment Helper Today!


Latest Free Samples for University Students

317V0012 Entrepreneurship Summative Assessment Sample 2025 | MMU

Category: Assignment

Subject: Business

University: Manchester Metropolitan University (MMU)

Module Title: 317V0012 Entrepreneurship

View Free Samples

JXH4403 Advanced Research Skills Supplementary Assignment Sample

Category: Assignment

Subject: Education

University: Bangor University

Module Title: JXH4403 Advanced Research Skills

View Free Samples

MKT724 Global Marketing Assignment Example | Ulster University

Category: Assignment Example

Subject: Marketing

University: Ulster University

Module Title: MKT724 Global Marketing

View Free Samples

MG5642 PG Dissertation Coursework Assignment Example 2024-25 | BUL

Category: Assignment

Subject: Education

University: Brunel University London

Module Title: MG5642 PG Dissertation

View Free Samples

BA40101E Analysis of Real-World Issues Assessment 2 Case Study Example

Category: Assignment

Subject: Sociology

University: BPP Business School

Module Title: BA40101E Analysis of Real-World Issues

View Free Samples
Online Assignment Help in UK