The document discusses several software design patterns including:
- Model-View-Controller which divides an application into three components: the model, the view, and the controller.
- Properties of patterns for software architecture such as addressing recurring problems and documenting proven solutions.
- Categories of patterns such as architectural patterns, design patterns, and idioms. Specific patterns like Proxy, Command Processor, and View Handler are described.