domingo, 6 de setembro de 2009

Documetação

É gente, andei realmente atarefado estes últimos meses, mas felizmente consegui um tempo para testar alguns softwares bem legais.

Quando falamos de documentação, principalmente em ALM, temos que documentar a totalidade do ciclo de vida, desde uma proposta comercial até o código fonte do software.

A primeira fase do ALM é a do planejamento, onde descrevemos o propósito do sistema, temos inclusive a questão do gerenciamento de requisitos e mudanças. Mas no início de tudo, o que precisamos é de um bom editor de texto, planilha eletrônica, alguns fluxogramas básicos e o cronograma inicial do projeto.

Para a edição de texto, criação de templates de documentação de regras de negócio e criação de planilhas, nada melhor que já bastante conhecido OpenOffice. O pacote está na sua versão 3.1 e conta além do editor e planilhas, com o software para criação de apresentações e desenhos. Há também no pacote Base, concorrente do Access.

O pacote não fica devendo em nada para o concorrente Office da Microsoft, exceto pelo Project e Visio. Quanto ao Project, há um projeto opensource muito bacana chamado OpenProj, que podemos usar como substituto do Project. Para quem nunca usou, vai se impressionar com a semelhança com o software da Microsoft.

Agora, difícil mesmo, é substituir o Visio. Ele tem várias ferramentas dentro de uma só, como diversos tipos de diagramas de software como UML, de engenharia, fluxogramas e tem desenhos muito caprichados para criar esquemas e colocar em apresentações.

Ainda não consegui encontrar nada que se compare ao Visio. Até agora, os dois softwares que encontrei que são bem simples, são o Dia e o CADE, mas a minha procura continua.

quinta-feira, 23 de abril de 2009

O Ambiente - parte II

Continuando a preparação do ambiente, vou falar de mais alguns utilitários bacanas.

Muitos arquivos da internet estão compactados, por isso precisamos de utilitário de compactação e descompactação de arquivos. Para isso utilizo o 7-zip. Além de aceitar a maioria dos formatos que encontramos por ai, ele também tem o seu próprio algoritmo (arquivos .7z). O fator de compactação do formato 7z é relmente impressionante.

Outro utilitário que ajuda bastante é o Notepad++. Muito fácil trata-se de um editor de texto com muitas características para facilitar o trabalho de edição de arquivos de configuração, como auto-completar, sistema de busca e substituição (inclusive de colunas), navegação por abas, etc. Esse software livre ajuda muito pois tem suporte a diversas linguagens de programação (ferramenta auxiliar para programadores). Inclusive dá pra usar o prompt de comando dentro dele!

Outro editor que parece ser muito bom é o PSPad, mas ainda não tive tempo de fazer muitos testes com ele. Pelo que vi de inicio, parece ser bem mais focado no desenvolvimento. Atualmente no dia-a-dia uso o Notepad++, 1001 utilidades!

Bom, por hoje é só. Vou postar posts menores quando puder pois acho mais fácil de ler.


quarta-feira, 15 de abril de 2009

O Ambiente

Bom, como mencionei no post anterior, para começar vou tentar dividir as listas dos softwares da seguinte forma:

Planejamento
Definição
Modelagem
Desenvolvimento
Teste
Distribuição
Gerenciamento
Utilitários

Digo tentar porque o ALM baseia-se neste definição, mas pode ser que ao longo dos meus testes as listas desta forma não se mostrem tão eficientes, principalmente quando começamos a integra os software.

Inevitavelmente vou ter que falar sobre Windows, pois vou basear meus testes neste SO. Entretanto muitas das soluções que vou postar aqui também vão funcionar em outros sistemas operacionais.

Para inaugurar as listas, vou falar de alguns utilitários que realmente são indispensáveis para testar toda esta parafernalha. O primeiro deles é o ambiente de virtualização VirtualBox. Não há como realizar testes na máquina real, senão teremos que formatar a máquina todos os dias :)
A opção comercial do VirtualBox é o famoso e conhecido VmWare Workstation. Embora tenha a versão free VmWare Player, este apenas consegue executar as máquinas criadas através do Workstation. Não é possível criar máquinas virtuais com o Player.

Tanto o VmWare quanto o VirtualBox tem funções muito parecidas e, que para o uso normal não se vê muita diferença. Entretanto, o VmWare dispõe de um recurso muito bacana para realizar testes que é a possibilidade de criar snapshots (ou fotos) do SO em um dado momento. Com isso se algo dá errado, basta voltar ao snapshot previamente salvo e recomeçar! Fantástico. Espero que o pessoal do VirtualBox também implemente algo parecido.

É possível utilizar o VirtualBox em diversos sistemas operacionais, tanto como host ou guest.

Agora que temos a máquina virtual, o segundo software só poderia ser um browser. Precisamos de um browser descente para baixar os softwares e poder testá-los. Neste ponto, temos várias boas opções: Firefox, Chrome, Safari, Opera, entre outros. Eu sou suspeito para falar pois sou fã do Firefox. Há dezenas de plug-ins disponíveis que facilitam muito a vida durante a navegação.

Por hoje é isto. No próximo post teremos mais novidades.

terça-feira, 14 de abril de 2009

Porque ALM?

Durante algum tempo venho acompanhando o movimento na Internet em prol do software livre, e acredito que, se podemos ter um substituto free ou opensource para os software pagos, porque não utilizá-los?

Pois bem, venho pesquisando a muito tempo sobre alternativas para softwares comerciais, e tenho realmente encontrado coisas que me surpreenderam. Mas reconheço que não é um trabalho fácil. A pesquisa é cansativa e demorada, assim como a análise do software. Ainda mais quando não encontramos na versão gratuita aquela função que a gente tanto gosta na versão comercial.

A motivação para este blog foi devido a dificuldade que encontrei foi quando iniciei a pesquisa sobre software para ALM (Application Lifecycle Management ou Gerencimento do Ciclo de Vida de Aplicações). Não muito recentemente assumi a posição de responsável do desenvolvimento em uma empresa de software, e comecei a me deparar com dificuldades sistemicas para o gerenciamento de projetos, dos desenvolvedores, enfim, tudo que gira em torno do processo de planejamento, definição, modelagem, desenvolvimento, testes, distribuição e o próprio gerenciamento de todas estas fases. Por ser uma empresa pequena, não temos como bancar softwares e sistemas caros, por isso comecei a procurar alternativas de ALM, assim como eu já havia fazendo com programas simples do nosso dia-a-dia (como um editor ou compardor de textos), que ajudam e tornam a produtividade dos desenvolvedores maior.

Bem, sem mais delongas, pretendo postar aqui o meu progresso ao encontrar, utilizar e integrar estes softwares como soluções abertas, e quem sabe, também comerciais (pode ser que eu não ache um substituto para a versão comercial).

Nos próximos posts, irei esclarecer melhor todas as etapas e como a coisa será dividida. Mas sintam-se a vontade para comentar e sugerir softwares free ou opensource.