Skip to content

Latest commit

 

History

History
101 lines (51 loc) · 4.56 KB

README.md

File metadata and controls

101 lines (51 loc) · 4.56 KB

POO - Building a Vintage Marketplace

Table of Contents

  1. Overview
  2. Key Features
  3. Dependencies
  4. Cloning the Repository
  5. Compiling and Running
  6. Group's Report
  7. Conclusion
  8. Developed by

Overview

This project, undertaken during the second semester of the second year of the Software Engineering degree at the University of Minho as part of the Programação Orientada a Objetos (POO) subject, revolves around the development of a system for managing vintage marketplace operations. The aim is to create a robust and efficient platform that facilitates the buying and selling of various types of new and used items, akin to a vintage marketplace.

For a detailed description of the project's requirements, design, and implementation, please refer to the Project Report.

Key Features

  1. User Authentication and Authorization: Implementing a system for users to register, log in, and manage their accounts securely.

  2. Item Management: Providing functionalities for sellers to add, update, and remove items for sale, as well as allowing buyers to browse and search for items.

  3. Order Processing and Fulfillment: Enabling users to create orders, track order status, and manage the fulfillment process, including shipping and delivery.

  4. Payment Processing: Integrating payment gateways to facilitate secure transactions between buyers and sellers.

  5. Inventory Management: Maintaining accurate inventory records, updating stock levels upon purchase, and generating alerts for low stock items.

  6. Administrative Tools: Equipping administrators with tools to manage users, monitor transactions, generate reports, and perform analytics on marketplace performance.

  7. Object-Oriented Design: Demonstrating proficiency in applying object-oriented principles such as encapsulation, inheritance, polymorphism, and abstraction in the design and implementation of the software solution.

  8. Scalability and Maintainability: Designing the system to be scalable and easily maintainable, allowing for future expansion and enhancements as the marketplace grows.

  9. Error Handling and Validation: Implementing robust error handling mechanisms and input validation to ensure data integrity and system reliability.

  10. Persistence and Data Management: Utilizing databases or other storage mechanisms to persist data, manage relationships between entities, and ensure data consistency.

  11. User Interface Design: Creating an intuitive and user-friendly interface for both sellers and buyers to interact with the marketplace platform effectively.

Dependencies

If you're using a Java-friendly IDE like IntelliJ IDEA, there are no external dependencies to worry about. However, if you're working with a different IDE or manually compiling the project, you may need to resolve dependencies manually.

Cloning the Repository

To clone the repository, run the following command in your terminal:

$ git clone https://github.com/JoaoCoelho2003/POO.git

Once cloned, navigate to the repository directory using the cd command:

$ cd POO

Compiling and Running

To compile and run the project, follow these steps:

  1. Navigate to the src directory of the project.

  2. Open the Main.java file in your Java-friendly IDE (e.g., IntelliJ IDEA).

  3. Before running the program, ensure that you add the path to the log.txt file (inside the saves folder) as an argument. This file is used to import data into the program, so the marketplace doesn't start empty for testing purposes.

  4. Press the "run" function in your IDE to execute the program.

Group's Report

Our group has prepared a comprehensive report that provides a detailed explanation of the developed project, including all the decisions made during the design and implementation phases. This report covers various aspects of the project, such as system architecture, object-oriented design principles, and implementation details. It serves as a valuable resource for understanding the project's objectives, methodologies, and outcomes.

Final Report

Conclusion

We trust that exploring this project in object-oriented programming has been both enlightening and fulfilling for you. If you have any inquiries, recommendations, or feedback, please feel free to get in touch. Keep exploring, learning, and enhancing your skills! Happy coding!

Developed by

A100596 João Coelho

A100692 José Rodrigues

A100750 Duarte Araújo