Конечно, первое что приходит на ум это open-source приложения. Но с другой стороны нужно иметь ввиду что, сложность этих приложений должна быть не большой, чтобы студенты не тратили слишком много времени на изучение open source проекта для оптимизации.