Architektura nie jest implementacją, ale sposobem myślenia o problemie, który ma potencjalnie wiele różnych odpowiedzi i nie ma jednej „poprawnej” odpowiedzi. Zbyt często bezpieczeństwo jest postrzegane jako nieelastyczne i wymagające, ponieważ programiści muszą naprawiać kod w określony sposób, podczas gdy mogą znać znacznie lepszy sposób rozwiązania problemu. Nie ma jednego, prostego rozwiązania dla architektury, a udawanie, że jest inaczej, jest niekorzystne dla inżynierii oprogramowania.