Set up a 'retrospective mailbox' at the beginning of the iteration. Whenever something significant happens or someone has an idea for improvement, they write it down and 'post' it. (Alternatively the 'mailbox' can be a visible place. This can spark discussion during the iteration.) Go through the notes and discuss them. A mailbox is great for long iterations and forgetful teams.
Group discussion with varying subsets of participants Source:
Place at least 4 and at most 6 chairs in a row so that they face the group. Explain the rules:
Take a bench seat when you want to contribute to the discussion
One seat must always be empty
When the last seat is taken, someone else must leave and return to the audience
Get everything going by sitting on the 'bench' and wondering aloud about something you learned in the previous phase until someone joins. End the activity when discussion dies down. This is a variant of 'Fish Bowl'. It's suited for groups of 10-25 people.
Asking and answering go around the team circle - an excellent way to reach consensus Source:
Everyone sits in a circle. Begin by stating that you'll go round asking questions to find out what you want to do as a group. You start by asking your neighbor the first question, e.g. 'What is the most important thing we should start in the next iteration?' Your neighbor answers and asks her neighbor a related question. Stop when consensus emerges or the time is up. Go around at least once, so that everybody is heard!
Let team members appreciate each other and end positively Source:
Agile Retrospectives who took it from 'The Satir Model: Family Therapy and Beyond'
Start by giving a sincere appreciation of one of the participants. It can be anything they contributed: help to the team or you, a solved problem, ...Then invite others and wait for someone to work up the nerve. Close, when no one has talked for a minute.