OpenEndedLab-EEE2110 Fall 2023
OpenEndedLab-EEE2110 Fall 2023
OBJECTIVE
The objective of this open-ended lab is to provide engineering students with a comprehensive
understanding of object-oriented programming (OOP) concepts in C++. Through this lab,
students will have the opportunity to apply OOP principles to a real-world scenario,
enhancing their skills in class design, inheritance, polymorphism, and encapsulation.
TASKS
1. Problem Identification:
i. Explore the problems/issues around us, which you can solve using C++
programming constructs. For reference you can choose any of the following
reference from Table-1.
ii. Your program must be based on a real life problem.
Page 1 of 3
2. Class Design:
i. Create necessary classes with appropriate members.
ii. Employ multiple objects for the classes.
3. Functionality:
i. Implement constructors, destructor, member functions, etc. as per your necessity.
ii. Implement error handling for invalid input or output.
iii. Integrate file handling to save user data.
iv. Add at least three features to the program that you think is important for using the
system efficiently.
4. User Interaction:
i. Develop a user-friendly console interface that enables users to interact with the
program more efficiently.
SUBMISSION GUIDELINES
• Read the instructions properly.
• Write a well-organized as well as well-documented C++ program that includes
appropriate comments for clarity.
• Include a separate report describing the problem's design, implementation, and the
reasoning behind your decisions. The report must also includes the explanation of the
purpose and functionality of each class, structure, and function.
• You must provide a cover page for your report.
• Submit the source code file along with the report.
• Your project topic must not be similar to that of others in the same lab group.
ASSESSMENT CRITERIA
This lab will be evaluated based on the criteria depicted in Table-1.
2. Well explanation of the purpose and functionality of the K4, P1, CO4 PO2 6
program as a report. A1
3. Demonstrated understanding of class, structure, and object- K4, P1, CO4 PO2 8
oriented programming concepts by applying the usage A1
example.
Page 2 of 3
The following Table-2 is not the part of this open ended lab. We provided the Table-2 for
your reference so that you can map this open ended lab to the requirement of Section 3.1 in
the Course Specification (CS) document. Please see Section 3.1 in CS document.
Table-2: Statement of COs and their assessment based on
knowledge profile/complex engineering problem/complex
activity with assessment rubric
Page 3 of 3