COMP2603 Assignment 1 2021
COMP2603 Assignment 1 2021
Augustine
COMP 2603 Object Oriented Programming 1
Assignment 1
2020/2021 Semester 2
Overview:
An object-oriented application is required for a virtual meeting system that manages participants and
virtual meeting spaces. The application performs the following operations:
Code: RR (Bonus for programs that handle this code successfully in addition to RR )
This strategy selects participants from the data list and allocates participants to the virtual rooms in a
round robin fashion.
Example:
Participant IDs: 100, 200, 300, 400, 500, 600, 700, 800, 900, 999.
Virtual Room name: Workshop
BreakoutRoom IDs: Workshop1, Workshop2, Workshop3, Workshop4, Workshop5
C5 Allocations:
Workshop1: {100, 200, 300, 400, 500 }, Workshop2: {600, 700, 800, 900, 999},
Workshop3: { }, Workshop4: { }, Workshop5: { }
RR Allocations:
Workshop1: {100, 600 }, Workshop2: {200, 700}, Workshop3: {300, 800 }, Workshop4: {400, 900 },
Workshop5: {500, 999 }
The VirtualRoom class models a virtual room in the virtual meeting system. A virtual room creates and
manages up to a certain number of breakout rooms.
The BreakoutRoom class models a breakout room in the virtual meeting system. A breakout room
hosts participants. It is created by a virtual room such that the breakout room’s ID is based on the
virtual room’s name. Participants are added to the breakout room if it is open and if there is sufficient
space to accommodate new participants. Duplicate participants (based on IDs) are not allowed.
The BreakoutRoom class has the methods below including accessors for the breakoutRoomID,
numberOfParticipants and open variables.
Additional notes: Example of toString( ) output for the first breakout room, associated with a virtual
room called Seminar, hosting 4 participants and currently open:
Seminar1 OPEN 4
The Participant class models a participant in the virtual meeting system. Participants have the
following state attribute.
Submission Instructions
• Write the Java code for each class in the application using BlueJ and set up the associations
shown in Figure 1.
• Document your student ID at the top of each file within a comment block.
• Upload a zipped file of your compiled project source and class files to the myElearning course
page by the deadline. Submissions that do not compile will receive 0 marks.
• Name your zipped filed as follows: FirstName_LastName_ID_A1.zip. Marks will be deducted for
submissions that do not conform to this naming convention.
• Sign and submit the University Plagiarism declaration confirming that you are submitting your own
original work and that you have not copied or collaborated with other students.
• Early submission points can be earned if you submit before the due date. No penalties will be
applied but no early points will be earned if you submit by the lockout date.