Design patterns are integral in understanding the software architecture in a methodical way. This course by Cognixia explains why patterns are vital for object-oriented design and development, how patterns are documented, categorized and cataloged and when they should be used. The course also discusses some important patterns and how they could be implemented.