"Controle de qualidade identifica os problemas;
o acompanhamento cronológico evolutivo os minimiza."
-- Janes Arthur Kohl, ORNL.
Controle de Versões com SubVersion
A FreeBSD Brasil LTDA oferece através de seu programa de Consultoria em Sistemas de Versionamento Concorrente com SubVersion toda sua experiência e metodologia aplicada, auxiliando a empresa em todas as etapas do processo de consolidação de Sistema de Controle de Versões (VCS) com SubVersion.
Temos grande experiência com SubVersion e CVS, tendo implantado VCS com SubVersion em alguns dos maiores repositórios do país, como Universidades Privadas e Órgãos Públicos de Governo. Além disso nossa equipe conta com commiters FreeBSD, e notoriamente o FreeBSD é um dos maiores projetos do mundo que utilizam sistemas de Versionamento (mixto, com SubVersion, CVS e PerForce).
A FreeBSD Brasil atua no processo de adoção do Controle de Versões com SubVersion nas seguintes etapas:
- Análise e Planejamento de Adoção de VCS;
- Consultoria de Análise para Alinhamento de Procedimentos de Desenvolvimento de Software;
- Planejamento de Migração;
- Incluindo Microsoft Team Foundation, CVS, Clear Case, GIT, Mercurial e PerForce);
- Implantação do SubVersion;
- Migração de VCS Legados para SubVersion;
- Consolidação e Gestão de Implantação (Assessment);
- Suporte e Acompanhamento pós Implantação Consolidada;
- SLA (Service Level Agreement) para Suporte (opcional);
- Treinamento em SubVersion on-site;
- NDA (Termo de Sigilo) formal durante todas as etapas de consultoria e suporte;
Ciclo de Etapas do Processo Completo de Consultoria em SubVersion
Nossa consultoria se aplica à qualquer perfil de uso do SubVersion, quer sua corporação esteja começando agora implantar controle de versão, ou se nunca usou qualquer sistema de versionamento, nossos procedimentos são responsáveis, e divididos em ciclos de etapas de consultoria.
Nossa metodologia é segura e flexível. O ciclo completo de trabalho envolve todo o planejamento, preparação e educacão, além de implantação e acompanhamento para consolidação e suporte. Todavia, a maioria dessas etapas podem ser realizadas de forma independente, adaptando-as para suas reais necessidades, onde nossa consultoria só atuará onde realmente houver demanda.
A duração de cada etapa considera tanto procedimentos on-site quanto
trabalho que acontecerá na própria FreeBSD Brasil (elaboração de
conclusões, relatórios, execução de procedimentos e implementações, etc)
Conheça o Ciclo de Etapas que constituem nossa Metodologia de Consultoria em SubVersion:
Análise de Procedimentos e Práticas de Desenvolvimento (Duração: 3 dias);
Nessa etapa nossa consultoria analisará o perfil dos clientes (usuários) que farão acesso ao Repositório de Controle de Versões SubVersion, avaliando:
- Práticas de desenvolvimento de software aplicadas e utilizadas atualmente;
- Metodologias e procedimentos formais e o processo de engenharia de produção.
- Avaliação de necessidades e gerência de mudanças;
- Identificação de melhores práticas para uso de Controle de Versões;
- Tradução de Práticas em Produto sob Sistema de Controle de Versões;
Trata-se de uma fase com duração típica de 28 horas (3 dias) de trabalho, e os resultados gerados serão:
- Recomendações de Práticas e Procedimentos e mudanças no Processo de Produção;
- Sugestão de Estrutura Hierárquica (layout) de Repositório;
- Padrões de ramificação;
- Sugestão de Ferramentas para uso Conjunto com SubVersion, incluindo ambiente cliente;
- Sugestão de metodologia de trabalho local;
- Sugestão de Métodos de Gerência de Versões e Controle de Mudanças;
- Método de autenticação e cotrole de acesso e política de controle de acesso.
Planejamento de Migração (Duração: até 4 dias);
Se o ambiente atual já está sob Controle de Versão com algum sistema diferente de SubVersion, nossa equipe avaliará:
- O que deve ser migrado;
- Necessidade de migração de todo o histórico de versionamento no repositório anterior, incluindo commit logs;
- Identificação do que o cliente deseja: migração ou importação de repositório?
- Estudo e Avaliação da melhor metodologia possível;
- Identificação de tipos de Dados e definição do que e quando migrar;
- Planejamento de criação de scripts e rotinas/procedimentos de migração;
Trata-se de uma etapa cuja consultoria tem duração típica de até 32 horas (4 dias), e ao final dessa fase entregaremos como resultado:
- Sugestão e recomendações de práticas de pré-migração;
- Sugestão de cronograma de migração e procedimentos durante etapa de migração;
- Identificação das Viabilidades e Inviabilidades de migração considerando o Sistema Legado;
- Referência de literatura e soluções para criação de scripts e rotinas de migração automatizada;
- Notas sobre customizações necessárias nas rotinas convencionais de migração;
Implantação e Adoção (Duração: 3 dias);
Trata-se da etapa mais importante, onde de fato o SubVersion será implantado como sistema de controle de versões. Podemos auxiliar nas melhores práticas de implementação do SubVersion, ou de fato cuidar para você de toda a implementação prática, da instalação à configuração e integração com tecnologias complementares. Nessa etapa nossa consultoria abordará:
- Instalação e Otimização de Performance do SubVersion;
- Identificação de formatos de DB mais adequado;
- Definição de método de autenticação e controle de acesso;
- Implantação do Controle de Acesso de fato, conforme definido;
- Recomendações de Configuração de Servidor (hardware);
- Recomendação de suítes de Software e abordagens de clientes SVN ou integrados ao S.O.;
- Integração com Sistema de Testes e Desenvolvimento;
- Criação da Hierarquia (layout) do Repositório SubVersion;
- Sugestão de metodologia de Q.A. (Quality Assurance - Controle de Qualidade);
- Definição de Processos de Resolução de Problemas;
- Definição de métodos de Backup;
- Adoção de Melhores Práticas;
- Testes de Performance e Usabilidade;
- Testes de Finalização de Implantação;
O resultado dessa etapa de consultoria, que leva em média 28 horas (ao longo de 3 dias) , e o resultado será:
- Notas sobre customizações necessárias nas rotinas convencionais de migração;Implantação prática e Efetiva de todo o processo;
- Auxílio, sugestões e acompanhamento de implementação se o cliente desejar;
Migração de Sistema de Controle de Versão Legado (Duração: de 1 a 10);
Dependendo das necessidades de migração do repositório existente para o novo com SubVersion, essa etapa pode levar de 8 horas à cerca de 100 horas. Ele envolverá simples importação dos repositórios para o ambiente atual, ou então a elaboração completa de procedimentos e rotinas (scripts) para a migração de todos os dados, mantendo histórico de mudança entre versões e também mantendo os commit logs;
Essa etapa depende da Etapa de Planejamento de Migração e terá como produto final:
- Sistema Plenamento Migrado conforme Planejado;
- Rotinas e scripts utilizados durante a migração;
- Relatório de migração;
- Relatório de problemas e resposta aos problemas durante a migração;
- Testes de compreensão da migração realizada, incluindo:
- Reversão para Versão Anterior (escolhida aleatoreamente);
- Consulta de Histórico de Commit Logs;
- Relatório final de Migração;
Complementarmente nossa consultoria pode ainda atuar na forma de mentoração de procedimento, criamos e testamos as rotinas, e migramos apenas parte do repositório, instruindo o cliente a proceder para migrar todo o restante, diminuindo nossas horas de consultoria ao mesmo tempo que garantimos a transferência de conhecimento, oferecendo ainda apoio caso o cliente encontre problemas ao longo do restante do procedimento.
Consolidação, Acompanhamento e Suporte (Duração: à definir);
Uma vez implantando o sistema, a FreeBSD Brasil atua na consolidação do ambiente, fazendo validações de procedimento, performance e integridade dos dados ao longo das versões anteriores, e avaliando se o resultado gerado pela implantação do modelo está de acordo com o planejado. Para isso nossa consultoria realizará:
- Benchmarking de performance para Repo Copy (branching);
- Identificações de revisões críticas na timeline cronológica do produto versionado;
- Restauração plena de um repositório copiado para uma revisão crítica anterior;
- Desvio de ramificação;
- Restauração de Backup;
- Avaliação de adaptabilidade da equipe de desenvolvimento/produção;
- Sugestões de modificações e melhorias observadas pós implantação;
- Testes de conflito de commit e avaliação de procedimentos de resolução de conflitos;
- Suporte Operacional pleno e resolução de dúvidas e problemas;
Sendo o sistema de controle de versões uma das mais importantes ferramentas na engenharia de produção de software e produtos de TI, nossa equipe avaliará ainda a aplicação dos recursos do SubVersion e ferramentas complementares (Trac e afins) alinhados ao processo de gerência de projetos e engenharia software.
Se desejável oferecemos ainda Suporte formal a SubVersion cobrindo:
- Suporte operacional aos usuários do Repositório;
- Suporte técnico (problemas de performance, segurança, funcionamento e disponibilidade);
- Atualização e migração entre versões do próprio SubVersion;
- Atualização e aplicação de bugfix;
- Duvidas sobre procedimentos operacionais (criação de novos ramos, etc);
- Orientação sobre melhores práticas no dia-a-dia;
- NDA (Termo de Sigilo);
- SLA (Service Level Agreement) com garantia de atendimento e resolução dentro das métricas (ITSLM) estabelecidas e negociadas em contrato;
Treinamento em SubVersion (Duração: 5 dias);
A FreeBSD Brasil oferece ainda Treinamento Corporativo (para a empresa) em SubVersion. Esse treinamento é criado sob demanda, de acordo com as necessidades específicas de cada corporação, e por tanto deve ser definido em conjunto com nossa equipe de consultoria para definição de cronograma.
Nosso treinamento pode abordar qualquer uma das etapas acima mencionadas, ou todas elas. Dependendo da demanda em etapas associadas à Engenharia de Software nosso treinamento contará além de experts em SubVersion também com Gerentes de Projetos certificados PMI (PMP) e Engenheiros de Software de empresas conhecidas e que atuam no desenvolvimento de produtos conhecidos.
Informe suas necessidades claramente à nossa equipe de consultoria.
Justificativas para Escolher FreeBSD e a FreeBSD Brasil LTDA
Por quê FreeBSD?
SubVersion é p sistema de Controle de Versões com o maior número de novas instalações hoje. Tem boa performance, usabilidade e uma vasta gama de recursos integrados, e tem rapidamente se tornado um de-facto standard no mercado.
Boa parte desse sucesso deve-se às tecnologias principais que o Subversion utiliza. SubVersion utiliza como base de dados primária o Berkeley Database. O suporte a armazenamento de dados binários utiliza um algorítimo delta criado por Jason Evans, commiter do Projeto FreeBSD e adaptado para o SubVersion. O suporte a Diff Binário aplicando as mudanças entre revisões de arquivos binários utiliza atecnologia BSDiff criada pelo commiter do FreeBSD Colin Percival e igualmente incorporado no SVN.
Quando usando FS como storage para o repositório, SubVersion se comporta melhor com o sistemas de arquivos com suporte a Soft Updates em comparação com Journaling File System.
A licença do SubVersion é BSD.
Como podemos observar o SVN utiliza tecnologias do FreeBSD como componentes base. O Projeto SubVersion tem em comum diversos desenvolvedores do próprio FreeBSD, e o potencial de performance tuning nessa plataforma é de destaque. Além disso existe um ramo especial do SubVersion, o SubVersion-FreeBSD, com customizações de performance para o FreeBSD, complementos de logs e especialmente abordagens complementares para contenção e resposta a erros e falhas.
Além disso a licença do SubVersion é BSD, o que denota a clara preferência não apenas pela base tecnológica.
Por quê a FreeBSD Brasil?
A FreeBSD Brasil tem experiência em sistemas de VCS dos mais variados, de CVS à Perforce, e tem preferência clara pelo SubVersion. Na FreeBSD Brasil trabalham commiters do FreeBSD que tem experiência com Repo Copies e desempenham atividades diárias no SVN. Além disso, cuidamos hoje de alguns dos maiores repositórios SVN do país, incluindo de governos e universidades.
Temos ainda contato direto com os desenvolvedores do SubVersion, e faz parte de nossa checklist de procedimentos uma série de tuning avaliado de performance, onde de acordo com o layout do repositório, tamanho e acessos simultâneos fazemos customizações no FreeBSD que elevarão a segurnça e performance do seu Repositório. E como o SVN é melhor em FreeBSD, melhor ainda se for com a FreeBSD Brasil, já que o sistema é mais que nossa especialidade, é nosso dia-a-dia.
Veja Também: