Pessoal,

Aqui na empresa estamos cada vez mais nos aprofundando no uso do TFS 2010. No início usávamos somente para check-in e check-out das aplicações mas este ano resolvi implantar recursos mais eficientes.

Para a nova versão da nossa aplicação ASP.NET MVC 3 eu criei um projeto de modelagem aonde eu tenho um Layer Diagram onde eu criei toda a arquitetura de camadas do software. Por se tratar de um projeto MVC, a aplicação está toda num único projeto pois o próprio MVC já suporta o conceito de camadas, sendo assim eu dividi a aplicação em 4 camadas:


  • Controller: esta camada contém as classes de Controller, que somente faz a manipulação do fluxo das informações entre a camada de negócios e a camada de interface com o usuário
  • BLL (Business Logic Layer): esta é a camada responsável pelas regras de negócios, como cálculos, envio e busca de informações no banco de dados
  • DAL (Data Access Layer): esta camada contém as classes de acesso ao banco de dados e suas entidades. Basicamente estão contidos os objetos EDMX (Entity Framework 4) e as demais classes que manipulam o banco diretamente
  • UI (User Interface): aqui ficam contidas as views da aplicação MVC, ou seja, todos os componentes responsáveis por mostrar as informações ao usuário e colher dados através dos dispositivos de interface com o usuário

Seguindo este conceito, agora eu posso validar o meu modelo e me certificar de que os programadores da minha equipe estão seguindo o padrão exigido.

Além disso eu também ativei a automação de build. Deu um certo trabalho pois precisei instalar os assemblies utilizados pela aplicação no servidor de build para que o pacote de build fosse gerado, mas agora está tudo ok com relação a isso.

Também estamos usando o componente Use Case Diagram para criação dos casos de uso que são gerados pelo nosso gerente de qualidade:

E, para finalizar, ligamos cada uma das histórias a um work item do TFS, os quais irão gerar tarefas (tasks) para a nossa equipe de desenvolvimento, durante as nossas reuniões de SCRUM.

 

É isso pessoal!

Gostaria de agradecer as dicas dadas pelo pessoal do Dev Brasil aqui no site e nas palestras e dizer que estamos indo de vento em popa com nossos projetos, agora muito mais organizados.

Aproveitando o momento, gostaria de saber aonde eu consigo uma versão para avaliação do TFS Basic pois eu gostaria de utilizar esses recursos nos meus projetos em casa.

 

Abraços.

Exibições: 426

Respostas a este tópico

Animal!!! Parabens, ja twittei. Trabalhos bons tem q ser divulgados.

Muito Show André, Parabéns!!!!!

 

Parabéns mesmo :)

 

[]´s,

Fernando Gonçalves

Valeu gente! Vivendo, fuçando e aprendendo, hehehehe...

Legal o artigo! e parabens pela a iniciativa, realmente já estão usando bastante do ALM.

 

Agora, fiquei um pouco curioso, não entendi muito bem o porque da necessidade de instalação de assemblies no servidor de build. Na teoria isso não seria necessário, até porque quem é o responsável por executar os builds serão os agentes.

 

Nesse caso, para cada agente você teria que instalar em todos os agentes do seu ambiente.

 

Poderia falar mais sobre essas suas dificuldades?

 

[]´s

Claudio Leite

Então, os erros ocorriam quando eu ia no projeto e chamava a opção Generate Build ou coisa parecida, não me lembro agora. Depois que eu instalei no servidor do TFS as DLLs do Crystal Reports e Barcode, que a aplicação utiliza, os erros não ocorreram mais e passou a gerar as builds normalmente.

O que seriam esses agentes?

entendi... fiz essa pergunta justamente pelo novo modelo do Visual Studio 2010.

Hoje você instalou no seu servidor provavelmente o build controller, o que permite que você faça a automação das builds. Por padrão, na instalação ele já configura um agente no mesmo servidor.

 

O agente é uma máquina que poderá ser utilizada para a realização da build. Você pode instalar os agentes de build em diversas máquinas e configurá-los para se conectar ao build controller. Com isso você poderá distribuir a build entre várias máquinas, aumentando o processamento de build.

 

Outra coisa que você pode fazer é colocar agentes com compiladores especificos, por exemplo, algumas máquinas possuem o .net framework 1.1 então, quando tiver algum projeto automatizado que precise desse framework, o build controller só vai chamar esses agentes/máquinas para fazer a compilação.

 

No seu caso, se você tivesse máquinas a mais como agentes, provavlemente teria que instalar em todas elas essas dll´s ou indicar qual lugar esse projeto específico deverá ser compilado, ou seja, as máquinas/agentes que conhecem ou possuem esse compilador.

 

Com esse cenário, você pode ter várias máquinas agentes com os mais diversos compiladores como por exemplo, java, delphi, versões diferentes do .net, entre outros.

 

Espero que tenha conseguido explicar e obrigado por compartilhar sua experiência.

 

[]´s

Cláudio,

 

Muito obrigado pela explicação. No momento estamos usando somente este servidor, que na verdade é uma máquina virtual para fazer a compilação da build. Mas se eu quiser utilizar um outro servidor para tal, o que eu preciso instalar nele?

Fala André,

 

Para fazer a distribuição e ter vários tipos de compiladores na sua rede, você não precisa instalar mais nenhum servidor, precisa apenas instalar os agentes.

 

Esses agentes (build agents), podem ser instalados em qualquer computador da sua rede. Pode colocar até na máquina de cada desenvolvedor e configurar o build agent para "conversar" com o build server. Feito isso, você já pode fazer o cenário que falamos anteriormente. Cada build agent, deve ter os compiladores necessários para realizar o build dos seus projetos.


Então na realidade, o que vc vai instalar em cada agente vai depender dos tipos de projetos que você tiver na sua empresa.

 

Só tem um porém, se seu servidor de TFS 2010 você tiver mais de uma project collection e precisar que para cada project collection a automação funcione ao mesmo tempo, aí sim você precisará instalar mais um Build Controller.

 

O Build Controller funciona igual ao Test Controller, para cada project collection que você tiver configurada no seu servidor, vc teria que ter um deles especifico para cada.

 

[]´s

Beleza, já encontrei isso, criei um novo agent e agora vamos ver como a coisa anda.

Valeu!

RSS

© 2019   Criado por Ramon Durães.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço