El desarrollo de software crítico para sistemas ferroviarios necesita garantizar la seguridad a la vez que la mantenibilidad; un fallo puede ocasionar graves consecuencias para el entorno, especialmente pérdida de vidas humanas. En particular, en la normativa EN 50128 de software crítico ferroviario se especifican las buenas prácticas al construir la arquitectura del software. Pero los patrones de arquitectura que cumplen con las buenas prácticas antes mencionadas pueden ser complejos y, a su vez, disminuir aspectos relacionados con la calidad del producto software, especialmente la mantenibilidad. En este trabajo se seleccionaron un conjunto de patrones arquitecturales, se realizaron pruebas de concepto para cada arquitectura evaluándose los resultados en cuanto a complejidad y características del código fuente resultante. De esta manera se pudo obtener un resultado comparable entre los diferentes patrones: el nivel de seguridad asociado, la complejidad de su construcción y métricas relacionadas con la mantenibilidad. Los resultados muestran que existen patrones con baja complejidad y buena mantenibilidad que pueden ser utilizadas en la construcción de productos software según la norma EN 50128.