SolveStack is a Java-based Open Innovation Collaboration Platform designed to connect companies with developers and researchers through structured problem-solving workflows.
In this academic prototype, companies can post challenges, developers can submit solutions, and evaluators can review and score submissions through a defined evaluation process.
This project simulates a Corporate R&D Marketplace in an academic environment using Object-Oriented Programming principles.
There is no structured academic platform that:
- Allows companies to post real-world challenges
- Enables students/developers to submit solutions
- Provides a transparent evaluation workflow
- Tracks submissions and challenge lifecycle
SolveStack addresses this gap by providing a modular, role-based innovation system.
- 🏢 Companies – Post challenges
- 👩💻 Developers / Researchers – Submit solutions
- 🧑⚖️ Evaluators – Review and score submissions
- 🛠 models.Admin – Manage platform operations
- Role-based user system
- models.Challenge posting and management
- models.Submission tracking system
- Evaluation workflow
- Status monitoring
- Console-based prototype implementation
The system is designed using Object-Oriented Programming principles:
Private fields with controlled access using getters and setters.
Base class:
models.User
Derived classes:
models.Company
models.Developer
models.Evaluator
models.Admin
Method overriding for:
- Dashboard views
- Role-specific operations
Abstract methods in base class to enforce implementation in derived classes.
models.Evaluable interface implemented by models.Evaluator for submission scoring.
SolveStack/
│
├── models/
│ │
│ ├── models.User.java
│ │ ├── login()
│ │ ├── logout()
│ │ ├── viewDashboard()
│ │ └── updateProfile()
│ │
│ ├── models.Company.java
│ │ ├── createChallenge()
│ │ ├── editChallenge()
│ │ ├── closeChallenge()
│ │ └── viewSubmissions()
│ │
│ ├── models.Developer.java
│ │ ├── browseChallenges()
│ │ ├── submitSolution()
│ │ ├── trackSubmission()
│ │ └── withdrawSubmission()
│ │
│ ├── models.Evaluator.java
│ │ ├── evaluateSubmission()
│ │ ├── giveFeedback()
│ │ └── assignScore()
│ │
│ ├── models.Admin.java
│ │ ├── verifyUser()
│ │ ├── banUser()
│ │ ├── approveChallenge()
│ │ └── viewReports()
│ │
│ ├── models.Challenge.java
│ │ ├── openChallenge()
│ │ ├── updateDeadline()
│ │ ├── addSubmission()
│ │ └── closeChallenge()
│ │
│ └── models.Submission.java
│
├── uploadDocument()
│
│
│
│
├── attachGithubLink()
├── updateStatus()
└── calculateScore()
├── services/
│ │
│ ├── ChallengeService.java
│ │ ├── createChallenge()
│ │ ├── deleteChallenge()
│ │ ├── getAllChallenges()
│ │ ├── searchChallenges()
│ │ └── assignEvaluator()
│ │
│ ├── SubmissionService.java
│ │ ├── submitSolution()
│ │ ├── validateSubmission()
│ │ ├── fetchSubmissionsByChallenge()
│ │ └── updateSubmissionStatus()
│ │
│ └── EvaluationService.java
│
├── evaluateSubmission()
│
│
│
├── calculateFinalScore()
├── generateLeaderboard()
└── publishResults()
── exceptions/
│ ├── exceptions.SolveStackException.java
│ ├── UserNotFoundException.java
│ ├── exceptions.ChallengeNotFoundException.java
│ ├── exceptions.exceptions.SubmissionDeadlineException.java
│ ├── exceptions.UnauthorizedAccessException.java
│ └── exceptions.GlobalExceptionHandler.java
│
├── main/
│ │
│ └── SolveStackApp.java
│
└── README.md
- Java (Core OOP Concepts)
- IntelliJ IDEA / Eclipse
- Git & GitHub (Version Control)
- UML (System Design)
- Requirement Analysis
- UML Class Design
- Modular Implementation
- Incremental Development Approach
- Database integration (MySQL)
- GUI or Web Interface
- Spring Boot Backend
- REST APIs
- Authentication & Authorization
- Cloud deployment (AWS / Azure)
- AI-assisted evaluation
- Global innovation scaling
This project demonstrates:
- Effective use of OOP concepts
- Real-world system modeling
- Modular architecture
- Scalable system design
- All group members added as contributors
- Regular commits with meaningful messages
- Proper package structure maintained
- Clean and documented code