Project Guidelines: Object-Oriented Programming (OOP) Project
Project Overview:
The objective of this project is to implement a program of the group’s choice using C# programming language while
incorporating fundamental Object-Oriented Programming (OOP) concepts. The project should demonstrate
proficiency in utilizing classes, methods, encapsulation, inheritance, abstract classes, interfaces, and
polymorphism.
Project Requirements:
1. Implementation of OOP Concepts:
• Utilize classes to represent various entities within the system.
• Implement methods within classes to perform specific actions or operations.
• Ensure proper encapsulation to protect sensitive data.
• Utilize inheritance to create a hierarchical relationship between classes.
• Implement abstract classes and/or interfaces where appropriate.
• Demonstrate polymorphism through method overriding or interface implementation.
2. Documentation:
• Provide comprehensive documentation for the codebase.
• Document each class, method, and significant block of code.
• Explain the purpose of each code segment.
• Describe how the code contributes to the overall functionality of the program.
• Include explanations of how outputs are generated based on the implemented code.
Deliverables:
1. Codebase:
• The complete C# source code implementing the chosen project.
• Ensure that all code adheres to C# coding standards.
• All code must be well-organized and properly commented.
2. Documentation:
• Detailed documentation explaining the codebase and its functionality.
• Provide a high-level overview of the project's objectives and functionality.
• Describe each class, method, and significant code block.
• Explain the purpose of each code segment and how they contribute to the program's functionality.
• Document how outputs are generated based on the implemented code.
Submission Guidelines:
1. Code Submission:
• Submit the complete C# source code files.
• Ensure that the code implements all required OOP concepts.
2. Documentation Submission:
• Submit the documentation in a separate document (PDF or Word).
• Ensure that the documentation is well-organized and easy to follow.
Evaluation Criteria:
• Adherence to OOP principles (classes, methods, encapsulation, inheritance, abstract classes, interfaces,
polymorphism).
• Clarity and organization of the codebase.
• Quality and thoroughness of the documentation.
• Demonstration of understanding of the implemented code through documentation.