100% satisfaction guarantee Immediately available after payment Both online and in PDF No strings attached 4.2 TrustPilot
logo-home
Exam (elaborations)

COS3711 Assignment 2 (COMPLETE ANSWERS) 2025 - DUE 18 July 2025

Rating
-
Sold
-
Pages
20
Grade
A+
Uploaded on
16-07-2025
Written in
2024/2025

COS3711 Assignment 2 (COMPLETE ANSWERS) 2025 - DUE 18 July 2025; 100% TRUSTED Complete, trusted solutions and explanations. .Implement an application that tracks items bought from a store. Screenshots of possible interfaces have been provided as guidance below. Store application The store keeps a list of customers so that when something is purchased from the store, it is recorded against that customer’s name. Only the customer’s name is required. Only two items are currently sold in the store currently – books and magazines, and only the name of the item is required. Clearly, a list of such items is needed, and the user should be able to add items to the list. When an item is added, the application should automatically make a backup in Downloaded by Vusi Xhumalo () lOMoARcPSD| COS3711/Assignment 2/2025 3 memory in case something goes wrong when the application is being used. Provision should thus be made to restore this list when necessary. Clearly, for the sake of data integrity, you do not want the user to create multiple copies of these lists. When a customer purchases items, a transaction is recorded. The date/time of the purchase is noted, as is the name, type, and quantity of each item purchased as part of the transaction. Use an appropriate widget to indicate which items have already been added as part of this transaction. All transactions should be displayed on the main GUI. A tree model (and appropriate view) should be used so that a user can see a customer’s transactions grouped together. Downloaded by Vusi Xhumalo () lOMoARcPSD| COS3711/Assignment 2/2025 4 The user should be able to broadcast (using UDP) the contents of the model in XML format. This task should be run as a thread in the main application. The required XML format can be seen in the image in the next section. UDP receiver application Create a separate application that simply listens for the broadcast message and displays the received data (in XML format) on the GUI. 3. Requirements The following general requirements should be noted. • Follow good OOP design principles. • You should use menus in your application. • Pointers should be used for all instances of objects, and memory should be properly managed. • Appropriate design patterns should be used where sensible. 4. Extras Bonus marks will be awarded for the following. • The data members required for the classes are very basic and can be extended (like adding a price for each item and tracking the number of items available). Downloaded by Vusi Xhumalo () lOMoARcPSD| COS3711/Assignment 2/2025 5 • Using QMainWindow functionality: o Splash screen o Application icon o Toolbar o About and Help 5. Submission Please check the How to submit the assessments page in the Module orientation lesson on myUnisa before submitting this assignment for information about how to submit the assignment. • Use CMake when setting up your assignment. • Submit only the project folders. • You should not submit the build-desktop folders. • Zip the two folders (for t

Show more Read less
Institution
Course










Whoops! We can’t load your doc right now. Try again or contact support.

Connected book

Written for

Institution
Course

Document information

Uploaded on
July 16, 2025
Number of pages
20
Written in
2024/2025
Type
Exam (elaborations)
Contains
Questions & answers

Subjects

Content preview

,COS3711 Assignment 2 (COMPLETE ANSWERS)
2025 - DUE 18 July 2025; 100% TRUSTED
Complete, trusted solutions and explanations.
WITH REAL CODE
This COS3711 Assignment 2 task requires you to build two Qt-
based C++ GUI applications:
1. Store Application – Tracks customers, items, transactions,
with UDP broadcast.
2. Receiver Application – Listens to UDP broadcasts and
displays XML.
1. STORE APP STRUCTURE (Project 1)
📂 Folder Structure
bash
CopyEdit
StoreApp/
├── main.cpp
├── MainWindow.h/cpp (QMainWindow)
├── Customer.h/cpp
├── Item.h/cpp
├── Transaction.h/cpp
├── StoreManager.h/cpp

, ├── BackupManager.h/cpp
├── UDPBroadcaster.h/cpp (uses QThread)
├── ui/ (UI .ui files)
└── CMakeLists.txt


🔧 2. STORE APP FEATURES
💡 Use of OOP Classes:
Customer
cpp
CopyEdit
class Customer {
QString name;
QList<Transaction*> transactions;
};
Item
cpp
CopyEdit
enum class ItemType { Book, Magazine };


class Item {

Get to know the seller

Seller avatar
Reputation scores are based on the amount of documents a seller has sold for a fee and the reviews they have received for those documents. There are three levels: Bronze, Silver and Gold. The better the reputation, the more your can rely on the quality of the sellers work.
EduQuestHub Chamberlain College Of Nursing
Follow You need to be logged in order to follow users or courses
Sold
15
Member since
1 year
Number of followers
0
Documents
46
Last sold
3 months ago

4.3

4 reviews

5
2
4
1
3
1
2
0
1
0

Recently viewed by you

Why students choose Stuvia

Created by fellow students, verified by reviews

Quality you can trust: written by students who passed their tests and reviewed by others who've used these notes.

Didn't get what you expected? Choose another document

No worries! You can instantly pick a different document that better fits what you're looking for.

Pay as you like, start learning right away

No subscription, no commitments. Pay the way you're used to via credit card and download your PDF document instantly.

Student with book image

“Bought, downloaded, and aced it. It really can be that simple.”

Alisha Student

Frequently asked questions