- inheritance - encapsulation - communication between modules (design patterns for frontend and backend) - composition over inheritance (for frontend) - SRP -> managers, transferring information between modules - Note: Frontend is part of our project but still an addition -> limited by Qt