GRASP (General Responsibility Assignment Software Patterns) consists of 9 fundamental principles for assigning responsibilities to classes in object-oriented design. These patterns include Controller, Creator, Information Expert, Low Coupling, High Cohesion, Polymorphism, Protected Variations, Pure Fabrication, and Indirection. They provide foundational guidance for object-oriented design.