Pasing Grades
  • Start Selling
  • Blog
  • Contact
  • 0

    Your cart is empty!

English

  • English
  • Spanish
  • Arabic
Create Account Sign In
  • Library
    • New Prep Guides
    • Featured Prep Guides
    • Free Exam Prep Guides
    • Best sellers
  • General
  • Nursing
    • Research Paper
    • Case Study
    • Discussion Post
    • Assignment
    • Exam
    • Practice Questions and Answers
    • Test Bank
    • solutions manual
  • Accounting
    • Case Study
    • Thesis
    • Study Guide
    • Summary
    • Research Paper
    • test bank
  • English
    • Creative Writing
    • Research Paper
    • Summary
    • Rhetorics
    • Literature
    • Journal
    • Exam
    • Grammar
    • Discussion Post
    • Essay
  • Psychology
    • Hesi
    • Presentation
    • Essay
    • Summary
    • Study Guide
    • Essay
    • Solution Manual
    • Final Exam Review
    • Class Notes
    • test bank
  • Business
    • Lecture Notes
    • Solution Manual
    • Presentation
    • Business Plan
    • Class Notes
    • Experiment
    • Summary
    • Practice Questions
    • Study Guide
    • Case Study
    • test bank
    • Exam
  • More
    • Computer Science
    • Economics
    • Statistics
    • Engineering
    • Biology
    • Religious Studies
    • Physics
    • Chemistry
    • Mathematics
    • History
    • Sociology
    • Science
    • Philosophy
    • Law
  • Pages
    • About Us
    • Selling Tips
    • Delivery Policy
    • Faq
    • Privacy Policy
  • Flash Sale
  • Home
  • Blog

Assignment 2 Tutorial Letter

Assignment 2 Tutorial Letter

Assignment 2 Tutorial Letter

Last updated 24 August 2025

0

1067

Assignment 2

1. Introduction

Please use CMake (and not qmake) when setting up your assignment projects.

Qt Designer should not be used to design user interfaces, and you are expected to manually set up

GUIs to ensure that you properly handle memory using Qt’s parent-child functionality. Good programming practices should be followed.

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 as appropriate. Provide appropriate user feedback.

Your code should build and run without any warnings.

2. Questions

Question 1

Study the following UML class diagram:

The UML class diagram is an initial design of classes for a conference registration application.

There are three types of registration allowed for the conference: standard registration, student registration and invited guests registration. The standard registration fee is the standard fee (stored in STANDARD_FEE). For those registered as students, the conference fee is half the price of the standard registration fee. For those registered as guests, the conference fee is 10% of the standard registration fee.

An instance of RegistrationListcontains a list of Registration*. No two registrations are allowed to have attendees with the same e-mail addresses, unless the names are different. You should be able to query a RegistrationListwhether a person (by the name) is already registered for the conference. A RegistrationListcan also return the number of attendees that are registered for the conference from an institution. Similarly, you can request the total registration fees for a type (“Registration”, “StudentRegistration”, “GuestRegistration” or “All”) of registration. You are expected to use Qt’s metaobject system to access the type of a Registration in RegistrationList.

Write a GUI application that allows users to register for a conference. The GUI should display the current list of registrations, including the respective registration fees, in the RegistrationListat all times, using a table widget. The interface should also allow users to request and view the results of the various operations supported by the RegistrationListclass.

You are allowed to add new features to the classes given in the UML diagram, although you are not allowed to delete or change the given functions. You can decide on the design of the GUI, and it can be done manually or using Qt Designer. You are expected to follow good programming principles.

Question 2

Extend the solution in Question 1, to add another class named RegistrationListWriterthat produces an XML-formatted RegistrationListusing DOM as follows:

Note: ..means data has to be filled in based on the Registrationobjects in the

RegistrationList.

Modify the GUI in Question 1, to give the user an option to save the registration list. Allow the user to choose the file, using the standard file dialog, where the XML formatted registration list should be saved.

Question 3

Add another class to Question 2, named RegistrationListReader, that can parse the XML formatted asset list using SAX, and create and return a list of Registrationobjects.

To test the RegistrationListReaderclass, modify the GUI in Question 2, to allow the list of Registrations to be read in so that they can be appended to the RegistrationListmaintained by the application. Note that the user can request to read in the XML formatted file when there are Registrations, or none, in the RegistrationList. Use the standard file dialog to assist the user in choosing the XML formatted file.

Question 4

Implement a factory class (RegistrationFactory) using the Factory method design pattern, which creates and returns a Registrationbased on an appropriate string argument and other arguments (for initializing concrete Registrationobjects) provided. Make the RegistrationFactoryan implementation of the Singleton pattern.

Modify the solution in Question 3, so that the parts of the solution that were creating concrete Registrationobjects (based on the user input and RegistrationListReader) are replaced by appropriate code to utilise the RegistrationFactory.

Share this post

0 Comments

Leave A Reply

Categories

  • Study Guide 41
  • Student Knowledge Base 33
  • Assignment 38
  • Analysis 12
  • Case Study 15
  • Exam 24
  • Flashcards 38
  • Cornerstone 20
  • Essay 276
  • Research Papers 44
  • Reviews 35
  • Free Test Bank 77
  • Questions & Answers 92
  • Popular Posts
  • Latest Posts
  • The “Grandma’s Kimchi” College Essay

    The “Grandma’s Kimchi” College Essay

    11 August 2025

  • Mastery EAQ Delegation

    Mastery EAQ Delegation

    29 July 2025

  • Brunner and Suddarth 15th Edition Test Bank PDF – Medical-Surgical Nursing Practice Questions & NCLEX Prep Guide

    Brunner and Suddarth 15th Edition Test Bank PDF – Medical-Surgical Nursing Practice Questions & NCLEX Prep Guide

    25 July 2025

  • AP Exam Dates: Full Schedule, Late Testing, and Important Deadlines

    AP Exam Dates: Full Schedule, Late Testing, and Important Deadlines

    07 November 2025

  • Bontrager’s Textbook of Radiographic Positioning and Related Anatomy Sample Practice Questions + Test Bank

    Bontrager’s Textbook of Radiographic Positioning and Related Anatomy Sample Practice Questions + Test Bank

    29 December 2025

  • Local Artist Programs for Office Walls | Artesty Guide

    Local Artist Programs for Office Walls | Artesty Guide

    27 January 2026

  • ATI Proctored Exam Explained: Format, Scoring & What to Expect

    ATI Proctored Exam Explained: Format, Scoring & What to Expect

    22 January 2026

  • Sterile Processing Technician vs. Surgical Technologist: What’s the Difference?

    Sterile Processing Technician vs. Surgical Technologist: What’s the Difference?

    22 January 2026

  • Best Diamond Stud Earrings to Buy Under $800

    Best Diamond Stud Earrings to Buy Under $800

    20 January 2026

  • Hide Expert VPN: Privacy and Data Protection Online

    Hide Expert VPN: Privacy and Data Protection Online

    20 January 2026

Tags

  • assignment
  • unisa
  • pasinggrades

IMPORTANT LINKS

  • How To Upload Class Notes
  • Selling Tips
  • Passing Grades's Study Materials
  • Scholarships for International Students 2025

POPULAR CATEGORIES

  • Law
  • Accounting
  • English
  • Psychology
  • Business
  • Nursing
  • Computer Science
  • General

View Document

  • Blog
  • Contact
  • Delivery Policy
  • Latest Scholarships Around the World
  • How to Pass Bar Exams: Passing Grades’ Strategies
  • How to Study and Pass the CPA Exam
  • All Test Banks
  • Faq
  • Copyright Claims
  • Privacy Policy
  • Terms of Use

KNOWLEDGE BASE

  • How to Write A+ Grade Good Research Paper
  • How to Manage Stress During Exam Period
  • Best Time to Study
  • How to Pass NCLEX-RN Exam
  • How To Effectively Utilize Test Banks
  • Popular Shadow Health Exam Assessments
  • Popular HESI Case Studies
  • How to Prepare for a Nursing Career
  • The Importance Of Summaries in Exam Revisvion

© 2026 Pasing Grades. All rights reserved.