public function actionStepOne(){}
public function actionStepTwo(){}
public function actionStepThree(){}
1. На каждом этапе получаете данные полей, сохраняете их в сессию и проверяете.
2. Можно на JS/jQuery , на одной странице выводите все поля разделенные на три блока, при успешном заполнении блока, показываете следующий блок.
3. Можно тупо отправлять форму на каждом шаге и параметры в GET, а в конце проверить все данные.
Если решите создать три action-а, то полагаю вам нужно создать и три сценария в моделе, чтоб на каждом шаге проверялись только поля этого шага.
^^^
Попытайтесь что-нибудь сделать, ищите, думайте, а когда зайдете в тупик - задайте вопрос, покажите , что сделали, что не получилось, вот тогда уже ответят по конкретнее