Pasos para crear una NFA a partir de una expresión regular

Tengo problemas para 'describir cada paso' al crear una NFA a partir de una expresión regular. La pregunta es la siguiente:

Convierta la siguiente expresión regular a un autómata de estado finito no determinista (NFA), describiendo claramente los pasos del algoritmo que utiliza: (b | a) * b (a | b)

He hecho una máquina simple de 3 estados pero es muy por intuición. Esta es una pregunta de un examen anterior escrito por mi profesor, quien también escribió la siguiente explicación del algoritmo de Thompson:http://www.cs.may.ie/staff/jpower/Courses/Previous/parsing/node5.html

¿Alguien puede aclarar cómo "describir cada paso con claridad"? Simplemente parece un conjunto de reglas básicas en lugar de un algoritmo con pasos a seguir.

Tal vez haya un algoritmo que he pasado por alto en alguna parte, pero hasta ahora los he creado con una conjetura educada.

Respuestas a la pregunta(2)

Su respuesta a la pregunta