About

About the Project

This is the ASE 420 Team Project - a fully functional Tetris game implementation. The project demonstrates:

  • Object-Oriented Design Principles: Clean architecture with separation of concerns
  • Comprehensive Testing: 411 test cases covering unit, integration, acceptance, and regression testing
  • Design Patterns: Factory, Singleton, Strategy, and State Machine patterns
  • Optimized Data Structures: Custom LinkedList and bitmask-based row representation
  • Intent-Based Communication: Decoupled input system for flexible command processing

Team Members

  • Anna Dinius
  • Cody King
  • Owen Newberry
  • Jeffrey Perdue

Technology Stack

  • Language: Python 3.x
  • Graphics Library: Pygame
  • Testing Framework: pytest
  • Architecture: Layered architecture with intent-based communication

Project Statistics

  • Source Code: 1,200 lines
  • Test Code: 5,677 lines
  • Test Cases: 411
  • Modules: 6 major subsystems

Repository

View the project on GitHub.