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:
- 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.
lisiane@lepus.celepar.br
vidal@lepus.celepar.br
sergior@lepus.celepar.br

|