O bloqueio da estrutura pode ser um problema sério, mas ajuda a encarar o problema como portabilidade. Portabilidade não é um atributo absoluto, mas relativo ao seu ponto de partida e para onde você pode querer ir. Por analogia, então, o software é portátil apenas na medida em que você já o transportou para outros ambientes.
A maior parte do desenvolvimento de um aplicativo dentro de uma estrutura tende a ser um código de cola, o material que une os componentes da estrutura. Os arquivos de configuração podem abstrair uma certa quantidade de cola em alguns sistemas, mas muitos detalhes são necessários no código.
Por outro lado, regras e processos de negócios podem ser abstraídos do aplicativo. A parte mais difícil da abstração é quando as regras são implementadas diretamente pela estrutura; segurança, acessibilidade e seqüenciamento de processos tendem a ser reforçados por sua estrutura e podem ser os mais difíceis de ver.
Se você pode separar a parte de cola do seu aplicativo da regra de negócios e a parte do processo de negócios e dos dados de negócios, poderá tornar portáteis algumas partes da sua solução.