Project Requirements

Student project assessment criteria. Twelve requirements a strong course project is expected to satisfy, each paired with the anti-patterns that most often weaken it. Use this as a checklist while the project is still being shaped, not as a rubric to read once at the end.

Phase 1. Framing the Problem

Before any modeling: what the problem is, why it matters, and how it becomes a machine learning task.

Requirement 1

Problem Domain Understanding

Demonstrate a thorough understanding of the problem domain, its motivation, and real-world significance. Justify why the problem matters using credible evidence such as research literature, industry reports, statistics, market data, or other factual sources.

Common anti-patterns
  • Vague or generic problem statement.
  • Motivation based on personal opinion rather than evidence.
  • No quantitative justification.
  • Poor understanding of existing solutions and their limitations.
  • Selecting a trivial or artificial problem.
Requirement 2

Problem Significance and Value

Address a clearly defined, meaningful, and preferably unmet need. The project should solve a problem that delivers tangible value to its intended users or stakeholders, with well-defined objectives and success criteria.

Common anti-patterns
  • Solving a trivial problem.
  • Addressing a problem already well solved without differentiation.
  • Vague objectives or unclear target users.
  • No convincing explanation of expected impact.
  • Feature-driven rather than problem-driven development.
Requirement 3

Problem Formulation

Translate the real-world need into a well-defined machine learning problem. Clearly specify the prediction or decision task, inputs, outputs, assumptions, constraints, and evaluation objectives.

Common anti-patterns
  • Incorrect ML task formulation.
  • Poorly defined target variable.
  • Mismatch between the business problem and the ML formulation.
  • Ignoring assumptions or constraints.
  • Framing the problem around available data rather than the actual need.

Phase 2. Research, Data, and Baselines

What already exists, where the data comes from, and what the solution has to beat.

Requirement 4

State-of-the-Art Solution Research

Conduct a thorough review of relevant state-of-the-art models, methods, and technologies. Demonstrate a deep understanding of how these approaches work, their strengths and limitations, and explain their relevance to the project.

Common anti-patterns
  • Choosing models because they are popular.
  • Superficial descriptions.
  • Comparing methods without understanding them.
  • Ignoring recent literature.
  • Weak justification for model selection.
Requirement 5

Data Acquisition and Generation Methodology

Develop and justify a sound methodology for acquiring, generating, or curating data using principles learned in the course. The methodology should be systematic, reproducible, and aligned with the project objectives.

Common anti-patterns
  • Arbitrary dataset selection.
  • Poor-quality or biased data.
  • No documented acquisition methodology.
  • Ignoring ethical or legal considerations.
  • Data that poorly represents the target problem.
Requirement 6

Exploratory Data Analysis and Baseline Development

Perform thorough exploratory data analysis (EDA) to understand the dataset, identify quality issues, discover meaningful patterns, and guide modeling decisions. Establish strong baseline models for comparison.

Common anti-patterns
  • Superficial EDA.
  • Ignoring missing values, outliers, imbalance, or leakage.
  • Skipping baseline models.
  • Weak baselines.
  • Decisions unsupported by data analysis.

Phase 3. Evaluation and Delivery

Comparing real alternatives, reporting them honestly, and shipping a repository someone else can run.

Requirement 7

Comparative Evaluation of Multiple Approaches

Implement and compare several meaningful, non-trivial modeling approaches using fair experimental methodology and appropriate evaluation metrics. Analyze trade-offs between competing solutions.

Common anti-patterns
  • Evaluating only one model.
  • Comparing only minor parameter variations.
  • Unfair comparisons.
  • Reporting results without analysis.
  • Choosing the best model solely by a single metric.
Requirement 8

Results Presentation and Communication

Present results clearly using appropriate evaluation metrics, informative visualizations, and concise technical explanations. Clearly communicate both performance and key insights.

Common anti-patterns
  • Reporting metrics without interpretation.
  • Poor evaluation metrics.
  • Unclear or cluttered visualizations.
  • Overloaded reports or presentations.
  • Conclusions unsupported by evidence.
Requirement 9

Repository Quality and Reproducibility

Maintain a professional GitHub repository with a meaningful name, comprehensive README, logical organization, and all necessary artifacts to enable reproducibility.

Common anti-patterns
  • Poor repository organization.
  • Missing README.
  • Disorganized project structure.
  • Missing artifacts required for reproduction.
  • Lack of diagrams, screenshots, or workflow documentation.

Phase 4. Rigor, Progress, and Depth

The difference between a project that ran once and a project that was actually engineered.

Requirement 10

Engineering Rigor and Iterative Improvement

Demonstrate substantial engineering effort through systematic experimentation, hyperparameter optimization, data validation, error analysis, and iterative refinement of the solution.

Common anti-patterns
  • Stopping after the first working model.
  • Minimal hyperparameter tuning.
  • No data validation.
  • No error analysis.
  • No iterative improvement cycle.
  • Blind reliance on AutoML or AI-generated code.
Requirement 11

Project Progression and Responsiveness to Feedback

Demonstrate continuous progress throughout the semester by achieving meaningful milestones, incorporating instructor feedback, and refining the solution over multiple iterations. The final project should clearly reflect learning and technical growth.

Common anti-patterns
  • Minimal progress after the proposal.
  • Ignoring instructor feedback.
  • Last-minute implementation.
  • Repeating the same mistakes.
  • No evidence of improvement between milestones.
Requirement 12

Technical Depth and Critical Thinking

Demonstrate deep technical understanding of the problem, data, and solution. Go beyond obvious or common-sense observations by identifying subtle challenges, domain-specific nuances, hidden assumptions, edge cases, and technical trade-offs. Show thoughtful analysis rather than simply applying standard techniques.

Common anti-patterns
  • Superficial analysis.
  • Treating models as black boxes.
  • Ignoring data or domain nuances.
  • Generic, textbook-level discussion.
  • Repeating AI-generated explanations without critical evaluation.
  • Failing to justify technical decisions or discuss trade-offs.