Ferramenta TeamWindows

Autores: Lisiane V. Sipert, Sérgio Luiz F.da Rosa e Vidal Martins

TeamWindows é um ambiente de desenvolvimento de multiprogramação para grupos que programam em SQL Windows.

O TeamWindows possui um conjunto integrado de ferramentas de produtividade, gerência de projetos, manutenção de aplicações e desenvolvimento de telas do SQL Windows, em um ambiente de desenvolvimento multiusuário.

Ele é projetado para atender pequenas e grandes equipes de desenvolvimento, mas é particularmente adequado a ambientes de programação onde é necessário um maior controle sobre o desenvolvimento colaborativo.

Por Que usar o TeamWindows ?

O TeamWindows reconhece que o sucesso de um software se deve à sua capacidade de evoluir, com modificações e refinamentos que se tornam necessários para tratar erros e novas funções. Por essa razão o TeamWindows fornece aos desenvolvedores um conjunto de ferramentas que suportam uma visão evolutiva de sistemas.

Algumas das vantagens características que o TeamWindows permite:

  • organização do ambiente;
  • controle de versões do software automático;
  • segurança na manipulação dos módulos;
  • histórico das atividades;
  • análise de impacto na alteração de um módulo;
  • quem está usando um módulo;
  • em que situação se encontra um módulo: desenvolvimento, teste ou produção.

Componentes do TeamWindows
 

  • Gerenciador de Desenvolvimento de Projetos (TeamWindows Project Development Manager): o mais importante e o mais utilizado componente, contém ferramentas para gerenciar projetos SQL Windows e controlar a promoção dos módulos do projeto da fase de desenvolvimento para teste e produção.
  • Repositório de Dados (Data Repository): é um banco de dados multiusuário, centralizado, que contém informações sobre o desenvolvimento dos projetos gerenciados pelo TeamWindows. Armazena informações e arquivos relacionados aos projetos, como uma cópia de cada módulo e o ciclo de cada um qual usuário utilizou cada módulo, datas de check in e check out e informações de log. Estas informações constituem um histórico do projeto e podem ser reportadas quando necessário.
  • Gerenciador do Repositório (Repository Manager): contém ferramentas para capturar e alterar informações sobre os bancos de dados das aplicações. Ele também suporta tarefas administrativas como atualização das estatísticas de índice para o repositório.

 

Controle da Qualidade do Projeto / Produtividade

O recurso de promoção do TeamWindows fornece um mecanismo de controle de qualidade para gerenciar e coordenar os esforços combinados de uma grande equipe de projeto.

Se um módulo de projeto é compartilhado, as alterações que forem feitas nesse módulo podem ter impacto em outros módulos. Por exemplo: se uma biblioteca SQL Windows é alterada, e esta biblioteca é utilizada por várias aplicações, pode-se utilizar o recurso de relatório do TeamWindows para produzir uma lista de todas as aplicações que devem ser compiladas, para que adquiram as modificações realizadas.

Controle e Análise da Alterações no Banco de Dados

O dicionário de dados é um subcomponente do Repositório de Dados. Ele armazena detalhes sobre a estrutura e sobre o conteúdo do banco de dados, bem como um histórico completo de todas as alterações feitas no banco.

Estas informações facilitam a análise do impacto das alterações, como adicionar tabelas e colunas, ou alterar o tamanho das colunas existentes.

Recurso de Check In e Check Out

É um mecanismo de bloqueio que fornece um controle adicional sobre os módulos no ambiente de desenvolvimento do TeamWindows.

Este recurso mantém uma cópia corrente de todos os módulos do projeto dentro do Repositório. Antes que qualquer alteração possa ser feita, deve-se retirar (check out) o módulo do repositório. Desta forma, nenhum outro programador poderá acessar ou atualizar esse módulo até que o trabalho esteja completo, e até que esse módulo seja novamente inserido (check in) no repositório.

Se o programador possuir autoridade, ele poderá desconsiderar o recurso de Check in/Check out, e desbloquear um módulo (unlock) sem inserir de volta no repositório. Neste caso, qualquer mudança feita será perdida, e ficará valendo a versão original do módulo.

O desbloqueio de um módulo deve ser realizado pelo programador que retirou o módulo do repositório, por um gerente de projeto que tem propriedade sobre o módulo, ou um administrador de projeto.

Gerenciamento das Alterações no Projeto

O TeamWindows possui recursos úteis para a gerência de projetos de desenvolvimento de médio ou grande porte:

  • log de Modificações: deve-se utilizá-lo para verificar as alterações propostas, as tarefas incompletas e outras questões que forem relevantes
    .
  • log de Erros: deve-se utilizá-lo para monitorar os erros encontrados pela equipe de desenvolvimento no ambiente TeamWindows.

Relatório

O TeamWindows fornece uma interface de relatório bastante flexível que permite produzir relatórios pré-definidos ou definidos pelo usuário.

  • O recurso de relatório facilita a criação de relatórios e a inserção desses na lista de outros já existentes. Isto significa que pode-se escrever uma query SQL (usando Quest) para verificar o conteúdo de um banco de dados, e criar um relatório (usando o ReportWindows) que mostre as informações obtidas.

Utilizando O TeamWindows

Para utilizar o TeamWindows na gerência de um projeto, é necessário percorrer um conjunto de passos que formam um típico ciclo de vida do gerenciamento do projeto, que são os seguintes:

1. Criar um projeto.

2. Definir o path de desenvolvimento de um projeto - quando você define que um usuário vai utilizar um determinado path para um determinado projeto, o gerenciador, ao fazer o check out, faz a cópia do projeto para este diretório e bloqueia a origem até que o programador faça o check in. Isso faz com que o programador possa utilizar o drive local para desenvolvimento e os drives de rede quando não estiver desenvolvendo, para que o projeto fique centralizado.

3. Acrescentar usuários ao projeto, garantindo-lhes direitos de acesso - todos os usuários devem pertencer a uma das quatro classes (também chamados de níveis de acesso):

  • administradores: são os únicos usuários que têm autoridade para criar novos projetos. Além disso, podem alterar qualquer projeto TeamWindows em qualquer momento.
  • gerentes de Projeto: são semelhantes aos administradores, porém só podem fazer alterações em seus próprios projetos.
  • desenvolvedores: Podem atualizar, criar ou remover qualquer módulo dentro do projeto. Não podem modificar informações relacionadas ao projeto.
  • encarregados de testes: responsáveis por testar a aplicação e emitir o sign off. Sem este flag ser ativado, o módulo não pode ser promovido para o ambiente de produção.

4. Recuperar e gravar arquivos no Repositório - processos de check out e check in, protegendo para que ninguém atualize nada enquanto alguém estiver usando.

5. Desbloquear um arquivo do projeto.

6. Promover arquivos do projeto para diferentes estágios - o projeto pode estar na fase de desenvolvimento, teste ou produção, sendo utilizado por usuários que tenham autorização para estas tarefas. Um ponto importante é que quando o usuário vai colocar um módulo em produção o TeamWindows verifica todos os projetos que utilizam este módulo e avisa o usuário, para que o mesmo comunique que está sendo alterado no caso de uma rotina genérica.

Dentre outros serviços, com esta ferramenta pode-se:

a) restaurar módulos arquivados.
b) utilizar o Log de Erros - verificar os erros que estão acontecendo, como por exemplo, alguém tentou exportar um projeto que estava sendo utilizado.
c) exportar um projeto - pode excluir da base de gerenciamento um projeto para diminuir o tamanho da base de dados.
d) rever o trabalho executado no projeto, utilizando as facilidades de relatório do TeamWindows.

Considerações Gerais

Um aspecto que deve ser levado em conta é que este ambiente exige máquina (hardware). Se já é difícil trabalhar com o SQL Windows numa configuração (486 SX 33 com 8Mb de RAM), utilizando o gerenciador de projetos a situação se agrava. Recomenda-se no mínimo 16 Mb de RAM para o gerenciamento de projetos de pequeno porte e 32 Mb para projetos grandes.

Outro aspecto importante é que na compra do SQL Windows Corporate vem esta ferramenta, não precisa adquirir nada adicional.Este produto é específico para gerenciar desenvolvimento em SQL Windows, mas permite gerenciar arquivos na planilha Excel, Word, Paintbrush e outros.

Apesar de ser gerenciador de projetos, tem um enfoque diferente do MS Project, ambos têm finalidades distintas e são muito úteis.

Sem dúvida é uma excelente ferramenta que vem minimizar os problemas do desenvolvimento em equipe. Hoje, sem utilizar o ambiente TeamWindows, este controle é feito manualmente e, infelizmente, acontecem coisas do tipo: alguém alterou uma rotina e não avisou, alguém copiou algo em cima, alguém fez isto ou aquilo e não se tem certeza de quem e nem quando. Com a ferramenta tem-se o histórico de quando, quanto tempo e quem trabalhou em cada módulo (apl) do projeto.

Este artigo tem como referência bibliográfica a apostila do curso de TeamWindows promovido pela Hoister de Belo Horizonte/MG.