Pergunta

Como você gerenciar o desenvolvimento e implantação de um sistema n-tier que é composta por vários sites, aplicativos de desktop, serviços web e bancos de dados que têm uma mistura de dependências?

Suponha que você tenha um ambiente de integração contínua com controle de origem e compilações automatizadas.

Foi útil?

Solução

Este é algo que você vai achar difícil de alcançar. No entanto, uma coisa que fazemos é para se certificar de que cada parte distinta do seu sistema faz as checagens apropriadas, por exemplo, a sua camada de acesso a dados irá fazer algo como:

public void OnStart(){
    if(database.SchemaVersion != this.RequiredDatabaseSchemaVersion)
        throw new DependencyException("The database was not the required version");
}

Este exemplo é totalmente trivial, mas você deve ficar com a ideia.

Outra coisa que você pode fazer é ter certeza que quando você empacotar seu aplicativo que você empacotá-lo como uma unidade. Então, alguém pode fazer algo como:

MyApplication_v1234.msi /install web_app
MyApplication_v1234.msi /install web_services

Obviamente, isso depende de como você pretende distribuir seu aplicativo.

Esperemos que este dá-lhe algo para se pensar.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top