One of the main projects in last semester's software engineering course was writing a design pattern. My pattern, which discusses ways of using reflection to search for classes that satisfy certain criteria without initializing explicit references to instances of the classes, is called Reflective Class Search.
You can find earlier drafts of students' patterns—including my own— on the course wiki. They may not stay up for long now that the semester is over.