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) Semester 1 2025 – DUE 18 July 2025; 100% correct solutions and explanations.

Rating
-
Sold
-
Pages
18
Grade
A
Uploaded on
12-07-2025
Written in
2024/2025

COS3711 Assignment 2 (COMPLETE ANSWERS) Semester 1 2025 – DUE 18 July 2025; 100% correct solutions and explanations. 1. Introduction Please read this whole assignment tutorial letter before starting to ensure that you know what is expected of you and you do not get surprised by some requirement later in the development process. Use CMake to set up the projects and use QMainWindow instances for the user interfaces so that you can implement the functionality provided by a QMainWindow (such as menus, a toolbar, and a status bar) to meet the requirements of the scenario given below. Please note that you must not use Qt Designer, and you are expected to manually set up GUIs to ensure that you properly handle memory using Qt’s parent-child functionality. Marks will also be awarded for following good programming practice. • Follow standard naming conventions: class names start with a capital letter, variable and function names start with a lowercase letter, using camelCase for names made up of multiple words. • Ensure consistent code layout and use of blank lines. • Use forward class declarations in header files. • Use initialiser lists in constructors. • Have proper GUI management: setting cursor focus, sequential tabbing, clearing input widgets (like text input fields being cleared and spin boxes being returned to some default value), and enabling and disabling buttons/menu items as appropriate. • Provide appropriate user feedback. • Your code should build and run without any warnings. Consider the following scenario and then design a solution to meet the requirements listed. 2. Scenario 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

Show more Read less









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

Document information

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

Subjects

Content preview

,COS3711 Assignment 2 (COMPLETE ANSWERS) Semester 1
2025 – DUE 18 July 2025; 100% correct solutions and
explanations.
Assignment Breakdown and Development Guide

📘 1. Application Overview
You must develop two separate applications:

Application Description
Allows management of customers, items
Store (books/magazines), and recording transactions.
Application Also broadcasts the data as XML using UDP in a
thread.
UDP Receiver Receives the XML broadcast via UDP and
Application displays it in a GUI.


🛠️ 2. Development Requirements

✅ Project Setup
 Use CMake for both applications.
 Do not use Qt Designer – all GUI code must be written
manually.
 Derive your main window from QMainWindow.
 Ensure memory management through parent-child hierarchy
and smart pointers (or raw pointers with proper deletion if
using Qt parent management).
 Follow the required coding standards:
o CamelCase for class names, camelCase for
variables/functions.
o Use forward declarations where applicable.

, o Use initializer lists in constructors.
o Consistent indentation, spacing, and blank lines.


️ 3. Functional Requirements per Application



📦 Store Application

Data structures to design:
 Customer class (name)
 Item class (name, type [book/magazine], optionally price,
quantity available)
 Transaction class (customer, datetime, list of item purchases)
 Purchase class (item, quantity)
GUI:
 Main window with:
o Menu bar (e.g., File, Help, Customer, Item)
o Toolbar (e.g., Add Customer, Add Item, Make Purchase)

o Status bar
o TreeView showing customers and their grouped
transactions (use QTreeView and QStandardItemModel)
 Dialogs:
o Add Customer
o Add Item
o Purchase Items
 Item backup/restore (keep a memory backup in case of
rollback or error)
Networking:

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.
MasterVincent University of South Africa (Unisa)
View profile
Follow You need to be logged in order to follow users or courses
Sold
2565
Member since
2 year
Number of followers
452
Documents
1529
Last sold
17 hours ago
MasterVincent

On this page, you find all documents, package deals, and flashcards offered by seller MasterVincent.

4,1

376 reviews

5
205
4
68
3
51
2
24
1
28

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 exams and reviewed by others who've used these notes.

Didn't get what you expected? Choose another document

No worries! You can immediately select a different document that better matches what you need.

Pay how you prefer, start learning right away

No subscription, no commitments. Pay the way you're used to via credit card or EFT 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